@@ -44,9 +44,11 @@ the server restarts.
4444 ▼
4545┌─────────────────────────────────────────────────────────────────┐
4646│ Data layer │
47- │ src/data/seed.json → seed cards, members, txns │
47+ │ src/data/seed.json → seed cards, team, policies, txns │
4848│ src/lib/store.ts → typed, in-memory store (resets) │
49- │ src/app/api/v1/* → REST surface (cards, txns, team) │
49+ │ src/app/api/v1/* → REST surface │
50+ │ (cards, transactions, │
51+ │ users, policies) │
5052│ src/lib/identity.ts → Northwind branding strings │
5153└─────────────────────────────────────────────────────────────────┘
5254```
@@ -76,8 +78,9 @@ follow-up paragraph restating the data.
7678- ` useHumanInTheLoop({ name: "addNewCard", render }) ` in ` src/app/page.tsx `
7779 shows the "add card" confirmation card directly in chat; the user clicks
7880 Approve / Cancel and the result is sent back to the agent. The team page
79- (` src/app/team/page.tsx ` ) uses the same pattern for inviting, editing, and
80- removing members.
81+ (` src/app/team/page.tsx ` ) uses the same pattern for removing a member and
82+ changing a member's role or team (inviting a member is a UI-only dialog
83+ flow, not an agent tool).
8184- ` useHumanInTheLoop({ name: "navigateToPageAndPerform" }) ` in
8285 ` src/components/copilot-context.tsx ` is the cross-page fallback: if the user
8386 asks for an operation that lives on another page (e.g. "change my Visa PIN"
@@ -95,10 +98,11 @@ user (or a hallucinating model) cannot bypass them.
9598## Backend & data
9699
97100- All read/write goes through ` src/lib/store.ts ` , which exposes typed helpers
98- (` findCard ` , ` updateCardPin ` , ` listTransactions ` , etc.) over an in-memory
99- copy of ` src/data/seed.json ` .
100- - The REST endpoints under ` src/app/api/v1/* ` (cards, transactions, team) are
101- thin handlers around the store and are what the UI uses.
101+ — readers like ` cards() ` , ` team() ` , ` policies() ` , ` transactions() ` and
102+ mutators like ` findCard ` , ` updateCardPin ` , ` assignPolicyToCard ` ,
103+ ` updateTransaction ` — over an in-memory copy of ` src/data/seed.json ` .
104+ - The REST endpoints under ` src/app/api/v1/* ` (cards, transactions, users,
105+ policies) are thin handlers around the store and are what the UI uses.
102106- There is no database. State resets on every server restart — this keeps the
103107 demo deterministic for screenshots, e2e tests, and customer walkthroughs.
104108
0 commit comments