docs: refresh README and add front-end derived banner - #140
Merged
Merged
Conversation
README had drifted 23 commits behind develop. Bring it back to the shipped surface and give it the product's own nav panel as a banner. Documentation corrections: - Add packages/brand to the repository layout and describe apps/api's MCP endpoint and personal-credential role. - Replace the retired four-tab console and "Tools" section with the five cabinet sections that exist today, and document the /docs/mcp route. - Add the user-wallet, MCP, and profile-credential routes to the API table, and note that the transport and operator routes sit outside the frozen v1 contract pack. - Describe the non-custodial MCP payment flow and digest-stored personal bearers in a new Agent access section. - Record that a browser caller's workspace is derived from its verified Privy subject, and that every committed settlement captures Graph evidence through a durable outbox job with a backfill for older settlements. - Repair a duplicated sentence fragment in Project status and add the user-wallet and MCP rows to the status table. The banner is not hand-drawn. scripts/render-nav-panel.mjs reads the palette from packages/brand/src/tokens.css, the mark geometry from CommitRing.tsx, and the nav labels from apps/web/src/App.tsx, then emits one SVG per theme. GitHub strips CSS from Markdown, so the README selects between them with a <picture> element. tokens.css remains the only source of a brand colour.
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
oneshot | 1b038ea | Sep 13 2026, 02:10 PM |
Resolves one README conflict. PR #139 rewrote the same activity paragraph this branch had edited. Keep develop's description of the automatic per-payer-wallet subgraph query and the per-request audit rows, and fold this branch's note that Graph evidence capture runs as a durable idempotent outbox job with a backfill for settlements that predate it. Both statements describe code on develop: capture_graph_evidence in apps/worker/src/worker.ts and migration 013_backfill_graph_evidence.sql. Re-running scripts/render-nav-panel.mjs against the merged tree produced byte-identical banners, and the merged API routes still match the table.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
README.mdhad drifted 23 commits behinddevelop. This brings it back to thesurface the code actually ships, and adds the product's own
.top-navpanel asthe README banner — generated from the front-end source, not traced from a
screenshot.
Documentation corrections:
packages/brandwas missing from the repository layout;apps/apiis nowdescribed as the HTTP seam plus MCP endpoint and personal-credential store.
cabinet sections that exist today (Overview, Payment services, Requests,
Payment proof, Profile), and the
/docs/mcproute is documented./v1/jobs/user-wallet/prepare,/v1/jobs/{jobId}/user-wallet/submit,/mcp, and the three/v1/profile/mcp-tokenroutes, with a note that the transport and operatorroutes sit outside the frozen v1 contract pack.
arc_payment/arc_payment_submitflow and the digest-stored personalbearers.
subject, and Graph evidence capture (plus the backfill for older committed
settlements) is documented.
table gains user-wallet payments and the MCP endpoint.
The banner is generated by
scripts/render-nav-panel.mjs, which reads thepalette from
packages/brand/src/tokens.css, the mark geometry frompackages/brand/src/CommitRing.tsx, and the nav labels fromapps/web/src/App.tsx, then writes one SVG per theme. GitHub strips CSS fromMarkdown, so the README selects between them with a
<picture>element.tokens.cssremains the only source of a brand colour — no hex is retyped.Scope and acceptance criteria
Acceptance criteria:
layout, and delivery status present on
developtoday.label is retyped by hand.
markdownlint,prettier --check,eslint, andtsc -bstay green.Product and security invariants
Invariant notes:
Documentation and one build-time renderer only. No runtime code, contract,
migration, or configuration is touched, so the isolation, authorization, and
cap invariants are unchanged by construction. The README's new wording reports
the isolation behaviour already implemented on
develop; it does not introduceor relax it.
Validation
Commands and results:
pnpm testandpnpm test:browserwere not re-run: the change touches nosource consumed by either suite.
Independent review evidence
Gate A — exact candidate tree before push
Base commit SHA:
65200cc2dfcf22912e532a157232e439d623044fCandidate tree SHA: n/a
Candidate commit SHA (if already committed but unpushed): n/a
Reviewer tool: not run
Reviewer model: not run
Verdict: not run
Findings or residual risks: the user explicitly waived Gate A for this
documentation-only change and asked for a draft PR.
The reviewed tree equals the committed tree.
Gate B — exact remote PR head
Pull request URL/number: this PR
Remote head commit SHA:
09250e4Remote head tree SHA: n/a
Reviewer tool: not run
Reviewer model: not run
Verdict: not run
Findings or residual risks: the user explicitly waived Gate B.
Gate B reviewed the current remote head and matches Gate A's approved tree, or a fresh Gate A was run for the changed tree.
Agent policy / repository-policyand all applicable CI checks pass.Risk and rollback
SVGs are static build output; if a brand token, the mark, or a nav label
changes,
scripts/render-nav-panel.mjsmust be re-run or the README willdrift from the UI again. Pill widths in the SVG come from per-family advance
estimates, since Rubik cannot be measured without a font engine.
it and no runtime behaviour changes.
Human merge
Draft: opened at the user's request with Gate A and Gate B waived. It stays
in draft until a human decides whether to run the gates or merge on the local
checks alone.