build: admit dspack-emit 0.5.0, repair the lockfile-masked refusal fixture (0.2.1) - #50
Merged
Conversation
…lockfile was hiding (0.2.1)
The emit dependency range ('^0.3.1 || ^0.4.0') predates emit 0.5.0, so
downstream consumers pinning the new emitter resolve TWO emitter versions —
the exact divergence the Studio trace-risk register has warned about since
July. Widened to '^0.3.1 || ^0.4.0 || ^0.5.0'; the lockfile now resolves
0.5.0.
Doing so surfaced a finding worth recording: the committed lockfile had
frozen emit 0.3.1 since July, and one test was green only because of it.
The "emitter REFUSAL" pipeline test placed a card-header INSIDE a card —
a shape that stopped refusing the day emit 0.3.2's subFlatten taught the
card plan to dissolve its own sub-family. Under every emitter since (0.3.2,
0.4.x, 0.5.0) that surface EMITS, so the test fails the moment the lockfile
moves at all — this is not a 0.5.0 behavior change (verified by running the
fixture against 0.4.1 and 0.5.0: identical outcome).
The test's intent — a lint-clean surface the profile cannot place refuses
as a first-class failed-gate artifact, never a crash — is still exactly
right. The fixture now uses table-footer inside a CARD: outside its
compound under every emitter version, which is what the 2026-07-03
live-eval discovery actually was.
119/119 green against emit 0.5.0 from the registry.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR unblocks downstream consumers by expanding @aestheticfunction/dspack-emit’s allowed semver range to include ^0.5.0, regenerating the lockfile to resolve to 0.5.0, and updating the emitter-refusal fixture to remain meaningful under newer emitter behavior.
Changes:
- Widen
@aestheticfunction/dspack-emitdependency range to include^0.5.0and bump package version to0.2.1. - Regenerate
package-lock.jsonso the dependency tree resolves@aestheticfunction/dspack-emit@0.5.0. - Update the pipeline refusal test fixture and expectation from
card-headertotable-footerto preserve the “sub-component outside its compound parent” refusal semantics.
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/run/pipeline.test.ts | Repairs the refusal fixture to use table-footer (a table subcomponent) so the test continues to exercise emitter refusal behavior under newer emitter versions. |
| package.json | Bumps package version to 0.2.1 and admits @aestheticfunction/dspack-emit@^0.5.0 in the dependency range. |
| package-lock.json | Updates the lockfile to match the new package version/range and resolves @aestheticfunction/dspack-emit to 0.5.0. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…ified policy, third repo dspack#35 moved dspack@main to the 32-component production contract, so check:sync — which follows main and gates the test suite in CI — went red on every branch here with no code change (surfaced by #50's first CI run; main was green only by staleness). Identical situation, identical fix: the pin policy already ratified and shipped in dspack-emit (805732c, sha256-verified, self-announcing, tracked for removal) and mirrored in dspack-studio. The pinned artifact is byte-identical to both sibling pins (sha256 ca19f841…). Verified: clean pin exits 0; a mutated expected hash exits 1 with TAMPERED; restored exits 0. Removal gated on the emit representation milestone (aestheticfunction/dspack-emit#28), tracked here as #51. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Narrow unblock for the emit-0.5.0 release train: downstream Studio cannot swap to
dspack-emit@0.5.0with a single-version dependency tree until dspack-gen's range admits it.'^0.3.1 || ^0.4.0'→'^0.3.1 || ^0.4.0 || ^0.5.0'; lockfile regenerated from the registry (resolves 0.5.0). Version → 0.2.1 for the tag-triggered OIDC release.card > card-header) stopped refusing at emit 0.3.2 (subFlatten). Verified not a 0.5.0 change: identical outcome under 0.4.1 and 0.5.0. Fixture repaired totable-footerinside a card — outside its compound under every emitter version, preserving the test's intent (profile-unplaceable surface → first-classfailed-gate, exit 3, refusal recorded).After merge: tag
v0.2.1publishes via the existing OIDC trusted-publishing workflow (no token).🤖 Generated with Claude Code