PICKUP.md
c121 · PICKUP: Wave 3
Written 2026-10-23 at the hand-off from the Wave 1–2 session. Start here. Everything needed is on disk; the old session's screenshots aren't needed.
Where things stand
Waves 1 and 2 are built and committed, along with Mark's live review of the impact card, policy detail and Policy Config. Decisions D1–D26 are in CYCLE.md; defaults are in plan/README.md §2.
| What | Where |
|---|---|
| Records, Wave 1 | f3053d52d (cycle opened), 4b472197d (00 model), 0f9d382c2 (01 ModeUntil + BlastRadius), later polish 73c5974a7, d41f597cd, 0e488727b, 8682f3c00, handoff note 85f1e71eb |
| Wave 2 (design) | e6d3fd975 model · a251d279d 02 policy detail · 7b61e97de 03 Policy Config · b91054d43 04 findings · 807713cef 05 teams · a2c10b7ce 06 endpoints · 5f108309c change impact · e225273cb older phase-4 pages |
| Layer | e0390dc PolicyTag / PolicyRibbonMark / PolicyDirectionMark + FilterTriggerBar caret fix, released as v0.9.34 (1c28033, publish run green). Design's lockfile resolves 0.9.34. |
| Illustrator | 6213b531b export fixes; illustrator/c121-changes-draft-impact-v4.ai is the good one. v1–v3 are defective and untracked. Delete them, or leave them for Mark. |
Not deployed. Nothing from c121 is on design-f39.pages.dev yet.
Wave 3, in order
- 07 adoption stage (plan/07-adoption-stage.md):
- Add
?stage=adoption|established(defaultestablished) to the fixture seeds,Bar.vueand the composable's knobs. - Add a docs section "Exceptions across the adoption lifecycle" to
/pages/phase4/governance-model, and fix that page's leftover story line that says "resolves as Enforced" (D16 made it "now enforced"). - D25: this is lab only, with no qdash demo-world work.
- Adoption seed: every enforceable policy is Observe org-wide, and the pilot (Engineering plus two users) gets Enforce exceptions. Its draft is "Enforce P-MCP for Finance pilot".
- Sweep every lab page in both stages.
- Add
- 08 records (plan/08-records.md):
- CYCLE.md: Key Changes per package (hashes above) and Outcome.
app/data/c114-review.ts: mark superseded rulingssupersededBy(W.1 → D3, W.6 → D1/D7, L8 named drafts and L8b approval → D4/D5). Don't delete them.feedback-intents.mdfor Mark Peterson: the list in plan/README.md §6, plus D16 (outcome at detection, "now enforced") and D17 (one exception per context).
- Captures: run the
/captureshot programc121-labover the lab URLs below, in both stages. - Deploy:
- Run
zsh -ic 'npm run deploy'from design. It builds the working tree as is, uncommitted work included, so check the list it prints. - Verify on design-f39.pages.dev. Access blocks curl on the internal host.
- The deploy uses the published layer, which now has the PolicyTag pieces (0.9.34).
- Run
- Close: update CYCLES.md and HISTORY.md, and run
/document-cycle.
Lab URLs (localhost:3000/pages/phase4/mock/…)
policies · policy-detail?policyId=P-MCP (and P-NO-ROOT) · findings · finding-detail?findingId=F-S04 · organization/teams (+ ?v.posture=matrix|cards) · organization/teams/detail?team=Engineering · organization/endpoints (+ detail?endpoint=win-fin-02) · policy-config/proposed-changes · policy-config/history · policy-config/config-file · parts
Gotchas learned this cycle
colspan="100%"+table-fixed.UxTableListExpandRow's detail cell usescolspan="100%", which Chrome reads as 100 columns, so a fixed-layout table collapses its real columns. Use automatic layout and give the flexible columnw-full max-w-0.- The design site's theme toggle (
ThemeEditor, fixed bottom-6 right-6) owns the bottom-right corner. The lab tray sits atright-20. - PolicyTag's ribbon is
z-0(under sticky table headers at z-1/z-2) with an explicit width. An SVG<img>counts as 0 wide at min-content. UseiconScaleandflushper spot. - Hidden measuring copies:
AvatarRowmeasures with a hidden copy, so its box must stayoverflow-hiddenor the page scrolls sideways. - Hash redirects (
/changes#v13→ History) must run client-side. The hash never reaches the server. - Other sessions' work is in this tree (cost-center, c105, c115, c117 brand and photos, component docs registry,
launch.json) and in the layer (JumpPills,PageTitle,useStickyBand). Commit with explicit paths, and checkgit diff --cachedfor their staged deletion before every commit. - Consumer lockfiles: only design's was refreshed to 0.9.34. bob-wire, www, qflow and qdash still pin 0.9.33. Run
../q-nuxt-layer/scripts/update-consumers.shwhen they need it. app.qpoint.io is stale; skip it.
Open follow-ups (not Wave 3)
- PolicyTag needs a removable variant (a ✕ slot) for the Findings policy filter chip, and a design-site docs entry or demo (
/document-components). - Endpoint activation history is derived, not stored. It's fine for the lab, but the intent wants it preserved.
- Pre-existing horizontal overflow at 1280px on
/policiesand/organization/teams(bar). - Old version anchors log a harmless Vue Router "couldn't find #v13" warning: the router scrolls before the section renders.