Skip to content

feat(dl-3.3): persona-adaptive accents on CF site + A2UI palette patch — DL-3 complete - #2074

Merged
POWERFULMOVES merged 2 commits into
mainfrom
feat/dl-3-3-cf-a2ui-persona
Jul 11, 2026
Merged

POWERFULMOVES merged 2 commits into
mainfrom
feat/dl-3-3-cf-a2ui-persona

Conversation

@POWERFULMOVES

Copy link
Copy Markdown
Owner

Closes out the DL-3 phase (Model B) of the Unified Design Language: the pending slice 3.3 from the DL-3 spec.

CF site (website/)

  • The site's --c-* brand layer inlines its values — it does not var-chain to --pm-*, so the shared accent override from DL-3.1 can't reach it (exactly the case spec D3 predicted). New canonical adapter pmoves/design/surface-cf.js maps a gateway theme onto --c-accent / --c-accent-2 — accent family only, backgrounds/ink never touched.
  • Vendored to website/persona/ (with persona-theme / persona-resolver / showtime-live) via the extended design-vendor / design-vendor-check targets — same drift gate DL-3.2 established for ui/lib/persona/.
  • website/persona/boot.js (site glue, not vendored): ?agent=<id>[&alter=<name>] → gateway theme → CF accent override, plus the Showtime live flip (data-stage=live → brand-mark glow in the persona's own accent). No query param → complete no-op — public visitors never fetch or poll anything.
  • Root CSP connect-src gains loopback-only origins (:8054 gateway, :9225 Showtime). These resolve to the visitor's machine — harmless publicly, functional on-net. persona-theme.js already restricts ?gw= overrides to loopback, so no remote host is reachable.

A2UI (pmoves/services/a2ui-renderer)

  • personaPalette(theme, base) — pure accent-family patch on ProvenancePalette (accent ← color, accentSoft ← accent); background/panel/ink stay with the base palette. Additive export only — no existing exports changed. @PMOVES-Creator (Remotion lane) FYI.

Verification

  • make -C pmoves design-test-js: 42 pass / 0 fail (incl. new surface-cf.test.js: D3 guard — never emits background/ink overrides)
  • make -C pmoves design-vendor-check: green (both vendor targets)
  • personaPalette verified behaviorally via node --experimental-strip-types (renderer has no installed dev deps): 8 assertions pass
  • boot.js ES-module syntax check pass

Guardrails honored: registry + 4090 W1 gateway routes read-only; --pm-signature untouched by construction (not a --c-* var); no Model C light-theme work.

🤖 Generated with Claude Code

…h — DL-3 complete

CF site: the --c-* brand layer inlines its values (no var-chain to --pm-*),
so the shared accent override can't reach it. New canonical adapter
design/surface-cf.js maps gateway themes onto --c-accent/--c-accent-2
(accent family only, spec D3), node-tested (42 assertions across the design
suite), and vendored to website/persona/ alongside persona-theme/resolver/
showtime-live under the extended design-vendor-check drift gate. A boot
module wires ?agent=<id>[&alter=] resolution + the Showtime live flip
(data-stage=live -> brand-mark glow); without the query param it is a
complete no-op. Root CSP connect-src gains LOOPBACK-ONLY gateway origins
(:8054/:9225) — the visitor's own machine, never a remote host.

A2UI: personaPalette(theme, base) patches ProvenancePalette's accent family
from a gateway theme; background/panel/ink stay with the base palette.
Verified behaviorally via node --experimental-strip-types (renderer has no
installed test deps). @PMOVES-Creator owns the Remotion consumers — additive
export only, no existing exports changed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@POWERFULMOVES, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 44 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: eec6f135-b462-4a17-8087-763361a8b8f7

📥 Commits

Reviewing files that changed from the base of the PR and between b5be0a4 and 2a70d8a.

📒 Files selected for processing (15)
  • docs/superpowers/specs/2026-06-15-pmoves-unified-design-language.md
  • pmoves/Makefile
  • pmoves/design/surface-cf.js
  • pmoves/design/tests/surface-cf.test.js
  • pmoves/services/a2ui-renderer/src/provenanceLivingDoc.ts
  • pmoves/services/botz-gateway/main.py
  • pmoves/services/showtime-api/app.py
  • website/_headers
  • website/index.html
  • website/persona/boot.js
  • website/persona/persona-resolver.js
  • website/persona/persona-theme.js
  • website/persona/showtime-live.js
  • website/persona/surface-cf.js
  • website/styles.css
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/dl-3-3-cf-a2ui-persona

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f13326bde9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread website/persona/boot.js
POWERFULMOVES pushed a commit that referenced this pull request Jul 11, 2026
…tokenism, #2076 DL-1b draft, #2077 demo spec)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Codex P2 on #2074: the new CSP permits the browser's fetch to loopback
:8054/:9225, but both services' default CORS allow-lists stopped at the
Notebook/preview origins, so the shipped ?agent= demo failed from the Pages
origin without manual env overrides. Adds the deployed Pages origin, the
future custom domain, and the documented :8000 local preview to both
defaults (env-overridable as before, never '*').

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@POWERFULMOVES
POWERFULMOVES merged commit f35da04 into main Jul 11, 2026
24 checks passed
@POWERFULMOVES
POWERFULMOVES deleted the feat/dl-3-3-cf-a2ui-persona branch July 11, 2026 22:49
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.

2 participants