Skip to content

refactor(site): run every RPC as a cell and bind adapters at one root - #94

Open
systemfsoftware-maker wants to merge 1 commit into
chore/enroll-compound-packsfrom
feat/site-cells-composition-root
Open

systemfsoftware-maker wants to merge 1 commit into
chore/enroll-compound-packsfrom
feat/site-cells-composition-root

Conversation

@systemfsoftware-maker

@systemfsoftware-maker systemfsoftware-maker commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

sign and health hand-sequenced read, decide and write in their RPC
handlers; moderate provided its store per request inside the handler; and
the guestbook feature bound its own D1 adapter. Now each decision runs as a
Sandwich cell in its own *.cell.ts (sign, moderate, health; list lifts its
read with Cell.fromEffect), the store contract lives in
guestbook-store.service.ts with the D1 adapter beside it, and
api/site-rpc-server.ts is the one composition root: it alone reads env,
names the *Live bindings, builds the context once and applies
Cell.provideContext to every cell. Decision family brands use Symbol.for.

RPC contracts are unchanged. Follows the cell-architecture pack
(service-and-layer-boundaries, sandwich-phase-order).

Verification

Gates: format, typecheck, lint, site test (13), sfs-sources exit 0. RPC contracts unchanged.

Layer of stack #100 (trunk main), merge bottom-up.

sign and health hand-sequenced read, decide and write in their RPC
handlers; moderate provided its store per request inside the handler; and
the guestbook feature bound its own D1 adapter. Now each decision runs as a
Sandwich cell in its own *.cell.ts (sign, moderate, health; list lifts its
read with Cell.fromEffect), the store contract lives in
guestbook-store.service.ts with the D1 adapter beside it, and
api/site-rpc-server.ts is the one composition root: it alone reads env,
names the *Live bindings, builds the context once and applies
Cell.provideContext to every cell. Decision family brands use Symbol.for.

RPC contracts are unchanged. Follows the cell-architecture pack
(service-and-layer-boundaries, sandwich-phase-order).
@systemfsoftware-maker
systemfsoftware-maker added this pull request to stack #100 October 16, 2026 04:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant