Back to Plate

sync shadcn codeblock wrapper note

docs/plans/2026-05-30-sync-shadcn-codeblock-wrapper-note.md

53.0.810.0 KB
Original Source

sync shadcn codeblock wrapper note

Objective: Apply the dashboard metadata request for mdx/codeblock-collapsible-wrapper: keep the row in pending, ensure the note reads Pull upstream wrapper behavior first; keep Plate full/open/expandButtonTitle support., regenerate the dashboard view, and verify no baseline or implementation state changed.

Flow mode: One-shot sync-shadcn apply metadata update. This is not implementation mode because the target state is pending.

Goal plan: docs/plans/2026-05-30-sync-shadcn-codeblock-wrapper-note.md

Primary template: docs/plans/templates/sync-shadcn.md

Applied packs:

  • none

Sync source:

  • upstream repo: shadcn-ui/ui
  • upstream clone: ../shadcn
  • upstream app: ../shadcn/apps/v4
  • Plate docs app: apps/www
  • durable state: docs/sync/shadcn/status.json
  • durable policy: docs/sync/shadcn/decisions.md

Completion threshold: Complete when docs/sync/shadcn/deltas.json and docs/sync/shadcn/dashboard.json both show codeblock-collapsible-wrapper with state pending and the requested note, pnpm sync-shadcn dashboard has regenerated the view, JSON parsing passes, and docs/sync/shadcn/status.json:lastSyncedCommit remains unchanged.

Verification surface:

  • docs/sync/shadcn/deltas.json
  • docs/sync/shadcn/dashboard.json
  • docs/sync/shadcn/dashboard.html
  • docs/sync/shadcn/status.json
  • .agents/rules/sync-shadcn/scripts/build-dashboard.mjs

Constraints:

  • Do not patch apps/www; this is a metadata-only pending row.
  • Do not mark the row synced before upstream wrapper behavior is implemented.
  • Do not change lastSyncedCommit, lastPlannedCommit, lastPlan, or partialSyncs.
  • Do not run build:registry.

Boundaries:

  • In scope: confirm or update the row note, regenerate dashboard artifacts, and verify sync JSON.
  • Out of scope: implementing the collapsible wrapper, screenshots, broader MDX primitive review, upstream range planning, and baseline advancement.

Output budget strategy: Use focused JSON extraction and capped source reads only. No upstream diff, inventory, screenshots, or run artifacts are needed for a direct metadata row.

Blocked condition: Blocked only if the durable JSON cannot parse, the dashboard generator fails, or the row cannot be found in both deltas.json and dashboard.json.

Sync state:

  • baseline: unchanged at 4a4dc8eb0fc793d8e9225e780183ad605f15d2c2
  • row state: pending
  • implementation status: not started; future work must pull upstream wrapper behavior while preserving Plate full, open, and expandButtonTitle props

Current verdict:

  • verdict: complete
  • confidence: high
  • recommended next owner: sync-shadcn implementation slice when the user asks
  • reason: the requested pending note is already durable and dashboard output was regenerated

Start Gates:

GateAppliesEvidence
autogoal loaded and active goal checked/createdyesActive goal created for this metadata-only apply request.
sync-shadcn skill/rule readyesUser provided the active skill body; apply rules followed.
Output budget strategy recorded before broad upstream commandsyesNo broad upstream commands used; focused JSON checks only.
docs/sync/shadcn/status.json readyesBaseline fields read and unchanged.
docs/sync/shadcn/decisions.md readyesDurable policy read before closeout.
Prior migration plans/solution notes checkedyesMemory lookup confirmed ../shadcn/apps/v4 as the upstream reference for Plate docs syncs.
../shadcn clone exists and was fetched/pulled intentionallynoDirect metadata apply did not need upstream ref refresh.
Base and target refs resolved to exact SHAsnoNo upstream range plan was created for this row.
Base ancestry or ref problem provennoNo upstream range plan was created for this row.
Planning-only vs implementation mode decidedyesTarget state is pending, so this is metadata-only apply mode.
User-review boundary recordedyesWrapper implementation remains a future accepted slice, not part of this request.

Work Checklist:

  • Objective, threshold, verification surface, constraints, boundaries, and blocked condition are filled from the active goal.
  • Verified the row exists in docs/sync/shadcn/deltas.json.
  • Verified the row already has state pending.
  • Verified the row already has the requested suggestion note.
  • Regenerated docs/sync/shadcn/dashboard.html and dashboard.json.
  • Parsed deltas.json and dashboard.json.
  • Verified the generated dashboard row keeps state pending and the requested note.
  • Verified status.json baseline fields remained unchanged.
  • Recorded that implementation and screenshots are out of scope for this metadata-only apply.

Completion Gates:

GateAppliesRequired actionEvidence
Named verification thresholdyesProve row state and note in durable and generated JSONNode extraction returned pending and the exact note from both JSON files.
Upstream range artifacts existnoRecord metadata-only exceptionNo range artifacts needed for target state pending.
Inventory completenessnoRecord metadata-only exceptionNo upstream inventory generated.
Decision accountingyesConfirm only listed row handledOnly codeblock-collapsible-wrapper was evaluated.
Status JSON parse and semanticsyesParse status and verify baseline unchangedStatus fields read with lastSyncedCommit unchanged.
Source-backed Plate mappingnoRecord implementation deferralFuture source work remains in apps/www/src/components/code-block-wrapper.tsx.
Visual comparison screenshotsnoRecord metadata-only exceptionNo browser-visible implementation changed.
Planning-only no implementation editsyesVerify mode did not require apps/www editsTarget state pending; no implementation patch was made.
Accepted implementation verificationnoRecord future slice boundaryImplementation not accepted in this request.
Browser surface changednoRecord metadata-only exceptionNo UI source changed.
Package manifests, lockfile, or install graph changednoRecord metadata-only exceptionNo package files touched.
Agent rules or skills changednoRecord metadata-only exceptionNo .agents/** source edited.
CI-controlled generated outputyesAvoid registry/template generationOnly sync dashboard artifacts regenerated.
Baseline advancementnoKeep baseline unchangedlastSyncedCommit remains 4a4dc8eb0fc793d8e9225e780183ad605f15d2c2.
User review boundaryyesKeep implementation as future requestRow remains pending with implementation guidance.
Output budget disciplineyesUse focused JSON readsNo broad diff output produced.
Goal plan completeyesRun autogoal completion checkRecorded in final closeout.

Phase / pass table:

PhaseStatusEvidenceNext
Intake and baseline readdoneStatus JSON and row readnone
Metadata applydoneNote already matched requested textnone
Dashboard regenerationdonepnpm sync-shadcn dashboard passednone
VerificationdoneJSON parse and row extraction passednone
CloseoutdoneThis plan records the evidencenone

Decision counts:

DecisionCountNotes
metadata-only pending1codeblock-collapsible-wrapper remains pending with implementation guidance.

Recommended merge slices:

OrderSliceClassFilesWhyVerification
1Codeblock collapsible wrapper implementationsmart-mergeapps/www/src/components/code-block-wrapper.tsx, ../shadcn/apps/v4/components/code-collapsible-wrapper.tsxPull upstream wrapper behavior while preserving Plate full, open, and expandButtonTitle.Future source audit, focused typecheck, lint, and screenshots if visual behavior changes.

Questions:

  • N/A.

Findings:

  • The requested note was already present in deltas.json; dashboard regeneration confirmed it in generated JSON too.

Decisions and tradeoffs:

  • Kept the row pending because the user explicitly requested pending -> pending; marking it synced before implementation would be fake progress.

Error attempts:

Error / failed attemptCountNext different moveResolution
None0N/AN/A

Verification evidence:

  • pnpm sync-shadcn dashboard passed.
  • node --check .agents/rules/sync-shadcn/scripts/build-dashboard.mjs passed.
  • Node parsed docs/sync/shadcn/deltas.json and docs/sync/shadcn/dashboard.json.
  • Node extraction showed codeblock-collapsible-wrapper is pending in both JSON files with the exact requested suggestion.
  • Status JSON read showed baseline fields unchanged.

Final handoff:

  • Range: N/A metadata-only dashboard apply.
  • Plan artifact: docs/plans/2026-05-30-sync-shadcn-codeblock-wrapper-note.md
  • Inventory artifact: N/A metadata-only dashboard apply.
  • Decision counts: 1 metadata-only pending row.
  • Recommended first slice: future codeblock wrapper smart-merge.
  • Review request: N/A; user already supplied the pending decision.
  • Question: N/A.
  • Status JSON: unchanged.
  • Verification: passed.
  • Baseline: unchanged.

Timeline:

  • 2026-05-30T22:22:25.678Z Sync Shadcn goal plan created.
  • Dashboard row and baseline inspected.
  • Dashboard regenerated and JSON verified.

Reboot status:

QuestionAnswer
Where am I?Closeout complete.
Where am I going?No remaining work for this request.
What is the goal?Keep codeblock-collapsible-wrapper pending with the requested note and regenerated dashboard.
What have I learned?The requested note was already durable before regeneration.
What have I done?Regenerated dashboard, verified row state/note, verified status baseline unchanged.

Open risks:

  • None for this metadata-only apply. The actual wrapper implementation remains future work.