Repository navigation
ci: build the compat runtime entry before node and integration tests - #377
Conversation
A clean checkout has no packages/ai-claude-compat/dist (gitignored), yet that package's only export is dist/index.js and packages/aitm imports it by package name from dozens of modules. The node and integration CI jobs, plus the local bin/setup and bin/check, now build the compat package before the authoritative runners, so those runners resolve the runtime entry from a clean checkout instead of depending on a pre-existing dist. Dz-Task-Id: tsk_a603f70bf281e4f05b657ac0b05bbab7
|
Make compat runtime artifacts available before tests
Work landed on #377 — watching it toward merge. 46m · 126 tool calls · 21 messages Sessions: coding run 🤖 developerz.ai, an automated agent, not a human — hv-dedicated-dev-din (developerz-ai[bot]) · model |
✅ Reviewed — nothing blocking0 actionable comment(s) · grounded on your code ⏱ 1m 01s wall clock · 🤖 developerz.ai — automated review, running on your model and your box. |
There was a problem hiding this comment.
Review summary — 6 file(s), 0 finding(s).
- test files were not shown to the reviewer — this diff touched no path recognised as a test, so no assertion was available to read the change against
🤖 developerz.ai review — automated, running on your model and your box. What is this? · Reviewed by router/gpt-6.1-sol on box hv-dedicated-4 — 47.7k in / 976 out over 3 calls; cost unknown: no price on record for router/gpt-6.1-sol.
|
Waiting on the repository owner: this pull request changes The merge check refused the edit: .dz/maintainer/reviewer.md: no transform is declared for this gate path — only a workflow edit (T1, T2), an ADDED .github/workflows/ci.yml / .mcp.json / .dz/maintainer/reviewer.md (T3), a new .dz/maintainer/maintainer.yml (T4) or a MODIFIED .mcp.json (T5) has one for #377 — the PR is re-proved when its head changes, when the platform changes its gate-path transforms or templates, and on the hourly re-check; no .maintainer.yml key and no approval releases it — a workflow edit proves only as a tag pin, a permissions narrowing or a platform template, an added .mcp.json or reviewer prompt only as the platform template, a modified .mcp.json only as the platform adding its managed servers to the base file and touching nothing of the maintainer's, and a policy file only as a NEW .dz/maintainer/maintainer.yml on a repo with none that grants no more than the account's posture default The task it answers planned this edit, so the goal cannot be met without it and it is not re-filed without them. To take it, merge it on GitHub. To have the platform merge it, push a narrower edit: a new head is checked again and merged when the check passes. Nothing here is re-tried or closed automatically, and no email is sent; the pull request is listed with the stuck pull requests. 🤖 Posted by developerz.ai — an automated agent, not a human. |
…compat-runtime-artifacts-available-before--a603f70b # Conflicts: # CLAUDE.md
There was a problem hiding this comment.
Review summary — 6 file(s), 0 finding(s).
completed Adds the compat runtime build before local tests and updates the documented commands. No blocking defects found in the supplied diff; the reported CI jobs passed.
- test files were not shown to the reviewer — this diff touched no path recognised as a test, so no assertion was available to read the change against
🤖 developerz.ai review — automated, running on your model and your box. What is this? · Reviewed by router/gpt-6.1-sol on box hv-dedicated-dev-din — 46.1k in / 634 out over 2 calls; cost unknown: no price on record for router/gpt-6.1-sol.
What
A clean checkout has no packages/ai-claude-compat/dist (gitignored), yet that
package's only export is dist/index.js and packages/aitm imports it by package
name from dozens of modules. The node and integration CI jobs, plus the local
bin/setup and bin/check, now build the compat package before the authoritative
runners, so those runners resolve the runtime entry from a clean checkout
instead of depending on a pre-existing dist.
Acceptance
.github/workflows/ci.yml: both thenodeand theintegrationjob contain a step namedbuild (compat runtime)runningnpm run build -w @developerz.ai/ai-claude-compat, placed before their test steps.bin/setupruns the compat build afterbun install, andbin/checkruns it beforebun run test:node— grep findsnpm run build -w @developerz.ai/ai-claude-compatin both.bun teststep exists anywhere in.github/workflows/ci.yml; thebunjob still runs install/lint/madge/typecheck only, and the node and integration jobs remain the authoritative runners.packages/ai-claude-compat/distdeleted, the repo gate (bin/check) completes and leavespackages/ai-claude-compat/dist/index.json disk — the compat runtime entry exists with no manually generated artifact.bun run test:nodeandnpm run test:integration -w @developerz.ai/aitmboth pass with the compat entry produced only by the new step (nobun.lock,package.jsonor dependency change is part of this task).CLAUDE.md,.claude/skills/verify-change/SKILL.md,.claude/skills/integration-suite/SKILL.mdand.dz/maintainer/reviewer.mdmatch the newbin/setup,bin/checkand CI step exactly.Changes
.github/workflows/ci.yml(edit) — Add a step namedbuild (compat runtime)runningnpm run build -w @developerz.ai/ai-claude-compatto thenodejob (right after itsinstallstep, before itsteststep) and to theintegrationjob (right afterinstall, beforeintegration tests): a clean checkout has no packages/ai-claude-compat/dist, yet that dist/index.js is the package's ONLY export and packages/aitm imports it by package name. Leave thebunjob untouched and add nobun teststep (Support thenode:testbuilt-in API oven-sh/bun#5090).bin/setup(edit) — Chainnpm run build -w @developerz.ai/ai-claude-compatafterbun installso a clean checkout ends setup with the compat runtime entry (packages/ai-claude-compat/dist/index.js) present — the authoritative node/integration runners then resolve@developerz.ai/ai-claude-compatwithout a manually generated artifact. Keepset -euo pipefailand the existingcd.bin/check(edit) — Insertnpm run build -w @developerz.ai/ai-claude-compat &&immediately beforebun run test:nodein the gate chain, so the authoritative node and integration runners always see the compat runtime entry even when bin/setup was never run. Every other step keeps its current order (typecheck → typecheck:tests → lint → madge → test:node → test:integration).CLAUDE.md(edit) — Fix the house tables this change falsifies: thebin/checkrow (add the compat build step AND thetest:integrationstep it currently omits), thebin/setuprow (bun install + compat build), and the ci.yml job-table rows fornodeandintegration(both gain the compat build step). Quote the exact command strings from the shared spec; touch nothing else in the file..claude/skills/verify-change/SKILL.md(edit) — Refresh the gate table this change falsifies: theinstallrow (bin/setup now also builds the compat runtime entry) and theproverow (bin/check's command line now containsnpm run build -w @developerz.ai/ai-claude-compatbeforebun run test:node). Quote the exact strings from the shared spec; leave the exit-code rules and the other rows alone..claude/skills/integration-suite/SKILL.md(edit) — Make the run recipe true again: step 1 (install) must also build the compat runtime entry before the suite can resolve its imports, and step 6 (CI reference) must say the integration job in ci.yml now builds that entry beforetest:integration. Keep the rest of the recipe as is..dz/maintainer/reviewer.md(edit) — Keep the maintainer brief's quoted gate true: the two places that spell out bin/check's command line (the Stack section and the 'Gates that matter' bullet) must include the compat runtime build step, in the same order as the script. Do not touch the other .dz briefs or .dz/onboarding/scorecard.md.Verification
./bin/checkpassed (exit 0) in 3m 37s.🤖 Opened by developerz.ai for task
tsk_a603f70bf281e4f05b657ac0b05bbab7on developerz-ai/ai-task-master.Raised automatically by the
raw_task_triagelane.