Skip to content

p1e: A3 gate emits every shadcn worked example; consume dspack-emit 0.3.2#24

Merged
ryandmonk merged 2 commits into
mainfrom
feat/p1e-consume
Jul 22, 2026
Merged

p1e: A3 gate emits every shadcn worked example; consume dspack-emit 0.3.2#24
ryandmonk merged 2 commits into
mainfrom
feat/p1e-consume

Conversation

@ryandmonk

Copy link
Copy Markdown
Contributor

Studio side of P1.E, paired with dspack-emit #21 (merged, version 0.3.2 in-repo).

The gate that should have caught P1.E now exists: build.ts's shadcn branch emitted only examples[0] — the precise reason two nominally-mapped sub-families could refuse for months unnoticed. Every worked example now emits through the A3-stage gate (exit 4 on refusal, warnings labeled per example), and the set grows with the contract via check:sync.

Fail-first (against published 0.3.1):

shadcn surface emission failed (ex.support-ticket-queue): unknown component 'table-caption': …
build exit code: 4

Draft until @aestheticfunction/dspack-emit@0.3.2 publishes (owner-gated — no trusted-publishing workflow in that repo; npm publish from its main). Then: lockfile bump, full gates re-run, undraft.

🤖 Generated with Claude Code

ryandmonk and others added 2 commits July 22, 2026 11:49
….3.2

The studio side of P1.E: build.ts's shadcn branch emitted only
examples[0], which is exactly why two nominally-mapped sub-families
(table, card) could refuse for months without any gate noticing — the
example that would have caught it was never emitted. Every worked
example now emits (exit 4 on refusal, per-example labeling on
warnings); the set grows with the contract through check:sync.

Fail-first, against the published dspack-emit 0.3.1:

  shadcn surface emission failed (ex.support-ticket-queue): unknown
  component 'table-caption': not a mapped component of the 'shadcn/ui
  — A2UI catalog (compiled from dspack)' profile
  build exit code: 4

dspack-emit 0.3.2 (feat/profile-parity, merged) adds the subTable and
subFlatten parent strategies plus the subCoverage completeness
invariant. The dependency is pinned to 0.3.2 here; lockfile follows
once the package is published (publishing is owner-gated — no
trusted-publishing workflow in dspack-emit).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Verified against the npm tarball (subTable/subFlatten in the compiled
emitter, subCoverage in the profile). Lockfile delta is solely the
dspack-emit 0.3.1 -> 0.3.2 lines. Gates on the published package:
contracts build:catalogs with the all-examples A3 gate green
(ticket-queue emits with three per-cell badge-flatten warnings +
the composition summary), drift-check and check:sync clean, pnpm -r
typecheck/test green, local Playwright 106 passed / 4 skipped,
production config 86 passed. All six P1.1 recordings emit through the
published package: five at 4 columns x 3 rows, the skeletal fifth at
1x1.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@ryandmonk
ryandmonk marked this pull request as ready for review July 22, 2026 16:32
Copilot AI review requested due to automatic review settings July 22, 2026 16:32
@ryandmonk
ryandmonk merged commit c48fa02 into main Jul 22, 2026

Copilot AI 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.

Pull request overview

Updates the contracts build gate to fully exercise the shadcn/ui contract’s worked examples (addressing the prior partial-emission gap) and bumps the studio’s @aestheticfunction/dspack-emit dependency to the paired 0.3.2 release.

Changes:

  • Bump @aestheticfunction/dspack-emit from 0.3.1 to 0.3.2 (package + lockfile).
  • Emit every shadcn worked example surface during packages/contracts/src/build.ts execution, labeling warnings/errors per example and preserving examples[0] as the A3 sample input.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated no comments.

File Description
pnpm-lock.yaml Locks @aestheticfunction/dspack-emit@0.3.2 and updates the contracts importer to use it.
packages/contracts/src/build.ts Expands shadcn surface emission from only examples[0] to all worked examples with per-example labeling and consistent exit behavior.
packages/contracts/package.json Bumps contracts’ direct dependency on @aestheticfunction/dspack-emit to 0.3.2.
Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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