Repository navigation
build: api-tape-replay-test - #906
Conversation
Part of fizzyedit/work#326 Agent-Team: linux Worker: claude Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
PM note: how this PR will be handledWhat it is for: build: api-tape-replay-test Rules that apply: none special. Things to watch (checked by rule):
What happens next:
A living status comment below is kept current. Nothing here is a merge decision. |
Where this PR standsStage: Done: approved What the PM needs before approving (ticks as it is met; the full CI runs only at the end, after the reviews are clean):
Reviews at the current commit (
Updated 2026-10-27 09:22 UTC by the PM. This comment is edited in place. |
Part of fizzyedit/work#326
Goal
Finish work#326: the build-API fixture tests (#879 landed most) plus the PM's addition, a test that a plugin built by an app's build uses
tapeandreplayas core's own instances.What changed and why
The fixture plugin in
scripts/fixtures/build-api/plugin/plugin.zigimportscore,tapeandreplay. A comptime check fails the build unlesscore.anchorisreplay.anchor(one module instance), andregisterwrites a demo withtape.Script, encodes and loads it. Test only; no SDK change, so no fingerprint move andsdk_versionis untouched. SDK impact for the record:plugin_sdk.ziggainsstaticModule, and plugins importtapeandreplay. That is additive and reaches plugins at the next SDK release (labelsdkstays on #834).How it was verified
EXAMPLES_BUILDS="" scripts/check-examples.sh: all fixture steps ok (native, web leaves the native-only plugin out, listed-twice and web-taken errors). The vpk steps were skipped (no dotnet).scripts/check-fmt.shok. The full gates were not run: the change is confined to a script fixture.Not done / follow-ups
The dylib half (
plugin.creategivingtape/replay, fingerprint) is #880. The negative case (a plugin with its own tape copy failing) is not tested.registerruns only in the app, which the script does not launch, so the tape round trip is compiled but not executed here.Changes (10 files, +73/-168)
Gates: 6 of 6 passed
scripts/check-fmt.sh(exit 0)scripts/zb build --summary all(exit 0)scripts/zb build test --summary all(exit 0)scripts/zb build test-integration --summary all(exit 0)scripts/zb build check-web --summary all(exit 0)scripts/zb build test-sdk-version --summary all(exit 0)