Agentic AI Atlasby a5c.ai
OverviewWikiGraphFor AgentsEdgesSearchWorkspace
/
GitHubDocsDiscord
i.3Wiki
Agentic AI Atlas · Current Test Command Inventory
docs/testing/current-test-command-inventorya5c.ai
Search the atlas/
Wiki · linked records

Article and nearby pages

I.Current articlepp. 1 - 1
Agent Adapter And Runtime E2ECoverage And ReportingHarness And Plugin E2EImplementation RoadmapMock And Fixture ContractsPipeline Integration
I.
Wiki article

docs/testing/current-test-command-inventory

Reading · 22 min

Current Test Command Inventory reference

Status: Current. This inventory implements roadmap slice 0, "Inventory and naming". It maps existing CI-relevant test-like package scripts to package or surface, lane, scope, owner, artifact name, and pipeline placement. Proposed future bundles remain in Pipeline Integration(./pipeline-integration.mdproposed-command-bundles) and are not treated as current commands here.

Page nodewiki/docs/testing/current-test-command-inventory.mdNearby pages · 11Documents · 0

Continue reading

Nearby pages in the same section.

Agent Adapter And Runtime E2ECoverage And ReportingHarness And Plugin E2EImplementation RoadmapMock And Fixture ContractsPipeline IntegrationPrimary Flow Data PathsQuality GatesStack PermutationsTest LanesTrace Identifiers And Evidence

Current Test Command Inventory

Status: Current. This inventory implements roadmap slice 0, "Inventory and naming". It maps existing CI-relevant test-like package scripts to package or surface, lane, scope, owner, artifact name, and pipeline placement. Proposed future bundles remain in Pipeline Integration and are not treated as current commands here.

**Pipeline placement is reconciled against actual workflow invocation data** (.github/workflows/ci.yml and .github/workflows/publish.yml read in full, plus the reusable workflows they call: release-artifact-verifier.yml and live-stack-published.yml). Where a script exists but no workflow invokes it, the placement column says so explicitly rather than naming an aspirational lane — an uninvoked gate is a gap, and the remediation program was caused by exactly that kind of paper coverage.

Root release and package-integrity gates (added by the remediation program)

These root scripts are the guardrails FIX-011/FIX-012 added. Their placement is stated exactly as the workflows invoke them.

Root scriptDefinitionLaneScopeActual pipeline placement
test:release-toolingnode --test scripts/__tests__/*.test.mjsNo-modelcontractci.yml job test, step "Release tooling tests (inventory, dependency ownership, packed-artifact verifier)"; and release-artifact-verifier.yml step "Release tooling tests", which publish.yml reaches through its verify_release_artifacts job. Currently expands to 12 suites: dependency-ownership, gateway-engine-floor, hooks-adapter-genty-packed, hooks-atlas-ownership, known-package-defects, publish-package-from-tag, publishable-packages, release-matrix, release-promotion, release-version, verify-published-release, verify-release-artifacts.
test:babysitter-metapackagenpm test --workspace=@a5c-ai/babysitter (→ node --test bin/__tests__/*.test.js)No-modelcontractci.yml job test and publish.yml job validate_core, both under the step name "Metapackage shim tests (packed exit-code propagation)" (FIX-007).
verify:metadatanode ./scripts/check-package-metadata.cjsNo-modelstatic-checkci.yml job test, step "Verify metadata"; publish.yml job lint, step "Verify metadata". Since FIX-011 this also validates the publishable-package inventory, docs coverage, release-matrix coverage of both publication workflows, and **direct runtime dependency ownership** (FIX-002/FIX-006).
verify:release-artifactsnode ./scripts/verify-release-artifacts.mjsNo-model release gaterelease-gateNot invoked by name. publish.yml reaches the script through verify_release_artifacts → release-artifact-verifier.yml, which runs node scripts/verify-release-artifacts.mjs --report-dir artifacts/release-verifier strictly (allow_known_failures: 'false' on every lane) over the full inventory and uploads release-verifier-reports. **This job gates publication**: prepare_staging_publish declares it in both needs: and its if: expression, so every publish_staging_* job is transitively blocked on a green matrix; publish-packages-from-tag.yml runs its own verify_release_artifacts job against the release tag ref before publish_non_plugin_packages.
guard:packagesnode ./scripts/guard-package-integrity.cjsNo-modelstatic-check**Not invoked by ci.yml or publish.yml.** It is the local/fast entry point (release-artifact-verifier.yml names it only in a comment). Run it locally before pushing release-affecting changes.
test:binary-renamesnode ./scripts/check-binary-renames.cjsNo-modelcontractci.yml job test, step "Binary rename guardrail" (FIX-004: proves every declared bin target, including the extensions compatibility bin, resolves to a tsconfig-derived emitted path).
test:package-renamesnode ./scripts/check-package-renames.cjsNo-modelcontract**Not invoked by ci.yml or publish.yml.** Local/manual only.
— (scripts/verify-published-release.mjs)node scripts/verify-published-release.mjs --version <v>No-model release gaterelease-gatepublish.yml job published_consumer_validation → live-stack-published.yml job published_consumer, step "Install, import and bin-smoke every public package at the exact version". Artifact published-consumer-checks. This is the FIX-010 gate that promote_release_channel requires (if: needs.published_consumer_validation.result == 'success').
— (scripts/release-version.cjs)resolve / verify-manifests / assert-channel-tagsNo-model release gaterelease-gatepublish.yml job prepare_staging_publish (resolve, verify-manifests, assert-channel-tags --mode preflight) and job assert_release_channel_tags (final assertion over every public package). Regression-tested by test:release-tooling.
— (scripts/release-promotion.cjs)candidate-tag / promoteNo-model release gaterelease-gatepublish.yml jobs prepare_staging_publish and promote_release_channel. The only channel dist-tag mutation in the pipeline; it requires --evidence artifacts/published-consumer/validation.json. Regression-tested by test:release-tooling.
— (scripts/release-matrix.cjs)--group hooks-leaves [--format workspaces]No-modelcontractpublish.yml job build_all (build fan-out) and job prepare_staging_publish step "Resolve derived publication matrices", whose output becomes the **dynamic** publish_staging_hooks_adapters matrix (12 leaves today, including @a5c-ai/hooks-adapter-genty — FIX-005). Regression-tested by test:release-tooling.

Naming Rules

  • **Check labels** use testing / <lane> <scope> for future reusable jobs and keep existing workflow job names until behavior changes.
  • **Artifacts** use stable, lowercase paths: test-logs/<package>-<script>.log, coverage/<package>-<script>, e2e/<package>-<script>, docs-qa/<package>-<script>.log, or release-logs/<package>-<script>.log.
  • **Current commands** are package scripts that already exist in package.json files under the repo root or packages/**; dev-only *:watch commands are intentionally excluded from CI artifact naming.
  • **No-model** means the command must not require provider credentials. Release-gate commands can still be no-model when they verify packaging, metadata, or static release contracts.
  • **Model-backed** is reserved for commands that require real provider credentials or installed live harnesses; no current package script in this inventory is promoted as model-backed.

Inventory Summary

MetricCount
Package manifests scanned46
Current CI-relevant test-like scripts mapped123
Packages or surfaces with mapped commands36
Root release/package-integrity gates mapped separately10
Public packages in the authoritative inventory (scripts/lib/publishable-packages.cjs)43

Current Command Map

Package or surfaceScriptLaneScopeOwnerArtifact namePipeline placement
@a5c-ai/atlas/catalogtest:atlas-catalog-contractsNo-modelcontractCatalog/Atlas maintainerstest-logs/atlas-catalog-contracts.logci.yml test or package-local validation when catalog surface is touched
@a5c-ai/genty-coretestNo-modelunit-or-integrationRuntime maintainerstest-lo../core-test.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/adapterstestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/adapters-codecstestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-adapters-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/adapters-clitestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-cli-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/comm-adapterprepublishOnlyNo-model release gaterelease-gateAdapter maintainersrelease-logs/agent-comm-adapter-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/comm-adaptertestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-core-pty-contract.log (ci.yml), adapter-logs/agent-comm-adapter-tests.log (publish.yml)publish.yml validate_mux and ci.yml test (step "adapters-core PTY contract (@a5c-ai/comm-adapter suite)"), both via node scripts/adapters-build.cjs test packages/adapters/core. The test script is vitest run src tests, so this is the lane that executes the FIX-009 PTY suites (tests/pty.test.ts, tests/pty-consumer.packaged.test.ts) — the ci.yml step is named for PTY so the coverage is greppable.
@a5c-ai/comm-adapterverify:releaseNo-model release gaterelease-gateAdapter maintainersrelease-logs/agent-comm-adapter-verify-release.logpublish.yml validate and publish gates
@a5c-ai/adapters-gatewaytestNo-modele2eAdapter maintainerse2e/adapters-gateway-testci.yml gateway-node-engine job, matrix node-version: ['22.13.0', '22'] (the first entry must equal engines.node of packages/adapters/gateway/package.json — Node >= 22.13.0, FIX-008); publish.yml validate_mux via node scripts/adapters-build.cjs test packages/adapters/gateway (Node 22 only, no engine-floor matrix)
@a5c-ai/adapters-gatewaytest:node-engine-floorNo-modelcontractAdapter maintainerse2e/adapters-gateway-node-engine-floorNot invoked by name. tests/node-engine-floor.test.ts is listed explicitly in the package test script, so the ci.yml gateway-node-engine matrix runs it on both Node versions. The suite asserts one exact floor across four surfaces — engines.node, the runtime constant, the package README, and the ci.yml matrix — and proves the floor is at or above every built-in reachable from the package root. Changing the floor in only one of those places fails it.
@a5c-ai/adapters-harness-mocktestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-harness-mock-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/adapters-observabilitytestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-observability-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-tuiprepublishOnlyNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-tui-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/genty-tuitestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-tui-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-tuiverify:releaseNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-tui-verify-release.logpublish.yml validate and publish gates
@a5c-ai/genty-uiprepublishOnlyNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-ui-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/genty-uitestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-ui-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-uitest:realtimeNo-modelrelease-gateAdapter maintainersrelease-logs/adapters-ui-test-realtime.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-uiverify:releaseNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-ui-verify-release.logpublish.yml validate and publish gates
@a5c-ai/genty-web-appprepublishOnlyNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-webui-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/genty-web-apptestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-webui-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-web-apptest:e2eNo-modele2eAdapter maintainerse2e/adapters-webui-test-e2eci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-web-apptest:e2e:headedNo-modele2eAdapter maintainerse2e/adapters-webui-test-e2e-headedci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-web-apptest:e2e:installNo-modele2eAdapter maintainerse2e/adapters-webui-test-e2e-installci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-web-apptest:realtimeNo-modelrelease-gateAdapter maintainersrelease-logs/adapters-webui-test-realtime.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/genty-web-appverify:releaseNo-model release gaterelease-gateAdapter maintainersrelease-logs/adapters-webui-verify-release.logpublish.yml validate and publish gates
@a5c-ai/extensions-adapterlintNo-modelstatic-checkAdapter maintainerstest-logs/extensions-adapter-lint.logNot invoked by ci.yml or publish.yml; package-local validation when package is touched
@a5c-ai/extensions-adaptertestNo-modelunit-or-integrationAdapter maintainerstest-logs/extensions-adapter-test.logci.yml test ("adapters-extensions tests"); publish.yml validate_observer_and_compiler ("Test adapters-extensions")
@a5c-ai/extensions-adaptertest:packaged-surface-parityNo-model release gaterelease-gateAdapter maintainerstest-logs/extensions-adapter-test-packaged-surface-parity.log**Not invoked by ci.yml or publish.yml.** The FIX-004 tarball/compatibility-bin properties are covered in the publication path by the package's own verify:release, which scripts/publish-package-from-tag.mjs runs immediately before npm publish, and by the full-inventory verify-release-artifacts.mjs sweep in release-artifact-verifier.yml.
@a5c-ai/extensions-adapterverify:releaseNo-model release gaterelease-gateAdapter maintainersrelease-logs/extensions-adapter-verify-release.logscripts/publish-package-from-tag.mjs runs it per-package immediately before npm publish
@a5c-ai/atlasverify:library-metadataNo-modelcontractCatalog/Atlas maintainerstest-logs/atlas-verify-library-metadata.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/babysitterlintNo-modelstatic-checkOwning package maintainertest-logs/babysitter-lint.logci.yml test or package-local validation when package is touched
@a5c-ai/genty-platformlintNo-modelstatic-checkRuntime maintainerstest-lo../platform-lint.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/genty-platformtestNo-modelunit-or-integrationRuntime maintainerstest-lo../platform-test.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/genty-platformtest:seamsNo-modelcontractRuntime maintainerstest-lo../platform-test-seams.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/babysitter-observer-dashboardlintNo-modelstatic-checkObserver maintainerstest-logs/babysitter-observer-dashboard-lint.logci.yml observer-dashboard; publish.yml validate_observer_and_compiler
@a5c-ai/babysitter-observer-dashboardtestNo-modelunit-or-integrationObserver maintainerstest-logs/babysitter-observer-dashboard-test.logci.yml observer-dashboard; publish.yml validate_observer_and_compiler
@a5c-ai/babysitter-observer-dashboardtest:coverageNo-modelcoverageObserver maintainerscoverage/babysitter-observer-dashboard-test-coverageci.yml observer-dashboard; publish.yml validate_observer_and_compiler
@a5c-ai/babysitter-observer-dashboardtest:e2eNo-modele2eObserver maintainerse2e/babysitter-observer-dashboard-test-e2eci.yml observer-dashboard; publish.yml validate_observer_and_compiler
@a5c-ai/babysitter-observer-dashboardtest:perfNo-modele2eObserver maintainerse2e/babysitter-observer-dashboard-test-perfci.yml observer-dashboard; publish.yml validate_observer_and_compiler
@a5c-ai/babysitter-observer-dashboardverify:releaseNo-model release gaterelease-gateObserver maintainerstest-logs/babysitter-observer-dashboard-release-artifact.logpackage prepublishOnly; scripts/publish-package-from-tag.mjs
@a5c-ai/babysitter-sdkcheck:command-templatesNo-modelstatic-checkSDK maintainerstest-logs/babysitter-sdk-check-command-templates.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/babysitter-sdklintNo-modelstatic-checkSDK maintainerstest-logs/babysitter-sdk-lint.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/babysitter-sdksmoke:cliNo-modelsmokeSDK maintainerstest-logs/babysitter-sdk-smoke-cli.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/babysitter-sdktestNo-modelunit-or-integrationSDK maintainerstest-logs/babysitter-sdk-test.logci.yml packages-sdk/test; publish.yml validate_core
@a5c-ai/genty-tui-pluginslintNo-modelstatic-checkOwning package maintainertest-logs/babysitter-tui-plugins-lint.logci.yml test or package-local validation when package is touched
@a5c-ai/genty-tui-pluginstestNo-modelunit-or-integrationOwning package maintainertest-logs/babysitter-tui-plugins-test.logci.yml test or package-local validation when package is touched
@a5c-ai/tasks-adapterlintNo-modelstatic-checkAdapter maintainerstest-logs/tasks-adapter-lint.logNot invoked by any workflow — the only per-workspace lint runs are @a5c-ai/babysitter-sdk (ci.yml "Lint", publish.yml validate_core) and @a5c-ai/transport-adapter (ci.yml workspace-coverage); run locally
@a5c-ai/tasks-adaptertestNo-modelunit-or-integrationAdapter maintainerstest-logs/adapters-tasks-tests.logci.yml test ("adapters-tasks tests" step) only; publish.yml validate_mux does NOT run it
@a5c-ai/tasks-adaptertest:packaged-surface-parityNo-modelrelease-gateAdapter maintainerstest-logs/tasks-adapter-test-packaged-surface-parity.logci.yml test ("adapters-tasks packaged-surface parity" step); publish.yml validate_mux ("tasks-adapter packaged-surface parity" step); both run strictly (no --allow-known-failures) since FIX-002 landed
@a5c-ai/kradle-installerprepublishOnlyNo-model release gaterelease-gateCloud maintainersrelease-logs/cloud-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/kradle-installertestNo-modelunit-or-integrationCloud maintainerstest-logs/cloud-test.logci.yml test; publish.yml validate_cloud; publish.yml validate/deploy
@a5c-ai/kradle-installertest:coverageNo-modelcoverageCloud maintainerscoverage/cloud-test-coverageci.yml test; publish.yml validate_cloud; publish.yml validate/deploy
@a5c-ai/kradle-installerverify:releaseNo-model release gaterelease-gateCloud maintainersrelease-logs/cloud-verify-release.logpublish.yml validate and publish gates
@a5c-ai/hooks-adapter-claudelintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-claude-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-claudetestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-claude-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-codexlintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-codex-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-codextestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-codex-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-copilotlintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-copilot-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-copilottestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-copilot-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-cursorlintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-cursor-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-cursortestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-cursor-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-geminilintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-gemini-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-geminitestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-gemini-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-oh-my-pilintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-oh-my-pi-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-oh-my-pitestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-oh-my-pi-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-openclawlintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-openclaw-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-openclawtestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-openclaw-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-opencodelintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-opencode-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-opencodetestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-opencode-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-pilintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-adapter-pi-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-pitestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-adapter-pi-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-clilintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-cli-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-clitestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-cli-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-corelintNo-modelstatic-checkHooks-adapter maintainerstest-logs/hooks-adapter-core-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/hooks-adapter-coretestNo-modelunit-or-integrationHooks-adapter maintainerstest-logs/hooks-adapter-core-test.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/transport-adapterlintNo-modelstatic-checkAdapter maintainerstest-logs/transport-adapter-lint.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/transport-adapterscorecard:migrationNo-modelcontractAdapter maintainerstest-logs/transport-adapter-scorecard-migration.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/transport-adaptertestNo-modele2eAdapter maintainerse2e/transport-adapter-testci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/transport-adaptertest:e2eNo-modele2eAdapter maintainerse2e/transport-adapter-test-e2eci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/transport-adaptertest:unitNo-modelunit-or-integrationAdapter maintainerstest-logs/transport-adapter-test-unit.logci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/triggers-adapterprepublishOnlyNo-model release gaterelease-gateTriggers maintainersrelease-logs/triggers-prepublishonly.logpublish.yml validate and publish gates
@a5c-ai/triggers-adaptertestNo-modele2eTriggers maintainerse2e/triggers-testci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/triggers-adaptertest:coverageNo-modelcoverageTriggers maintainerscoverage/triggers-test-coverageci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/triggers-adaptertest:e2eNo-modele2eTriggers maintainerse2e/triggers-test-e2eci.yml test/workspace-coverage; publish.yml validate_mux
@a5c-ai/triggers-adaptertest:unitNo-modelcontractTriggers maintainerstest-logs/triggers-test-unit.logci.yml test/workspace-coverage; publish.yml validate_mux
@v6/graph-toolssmokeNo-modelsmokeCatalog/Atlas maintainerstest-logs/v6-graph-tools-smoke.logci.yml test or package-local validation when package is touched
babysittercheck:library-syntaxNo-modelstatic-checkCI maintainerstest-logs/babysitter-check-library-syntax.logci.yml test or package-local validation when package is touched
babysittercheck:plugin-commandsNo-modelstatic-checkCI maintainerstest-logs/babysitter-check-plugin-commands.logci.yml test or package-local validation when package is touched
babysittercheck:sdk-command-templatesNo-modelstatic-checkCI maintainerstest-logs/babysitter-check-sdk-command-templates.logci.yml packages-sdk/test; publish.yml validate_core
babysittercoverage:cloudNo-modelcoverageCI maintainerscoverage/babysitter-coverage-cloudci.yml test or package-local validation when package is touched
babysitterdocs:buildNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-build.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:clearNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-clear.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:devNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-dev.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:examples:smokeNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-examples-smoke.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:examples:verifyNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-examples-verify.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:freshnessNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-freshness.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:linksNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-links.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:lintNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-lint.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:lint:markdownNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-lint-markdown.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:lint:styleNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-lint-style.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:qaNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-qa.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:serveNo-modeldocs-qaCI maintainersdocs-qa/babysitter-docs-serve.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterdocs:snippetsNo-modelstatic-checkCI maintainerstest-logs/babysitter-docs-snippets.logci.yml docs-quality; publish.yml deploy_docs_site; docs-only PRs
babysitterlint:hooks-adapterNo-modelstatic-checkCI maintainerstest-logs/babysitter-lint-hooks-adapter.logci.yml test/workspace-coverage; publish.yml validate_mux
babysittertest:atlas-catalog-contractsNo-modelcontractCI maintainerstest-logs/babysitter-test-atlas-catalog-contracts.logci.yml test or package-local validation when catalog surface is touched
babysittertest:adaptersNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-adapters.logci.yml test/workspace-coverage; publish.yml validate_mux
babysittertest:e2e:adapters-hooks-adapterNo-modelintegrationCI maintainerse2e/adapters-hooks-adapter/*.jsonlpublish.yml agent_mux_hooks_mux_e2e matrix for claude-code, codex, pi
babysittertest:e2e:adapters-no-model-stackNo-modele2eCI maintainerse2e/no-model-stack/*.jsonl, summary.jsonpublish.yml no_model_mock_matrix across runtime, agent, and hook-mode dimensions
babysittertest:extensions-adapterNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-extensions-adapter.logci.yml test or package-local validation when package is touched
babysittertest:architectureNo-modelstatic-checkCI maintainerstest-logs/babysitter-test-architecture.logci.yml packages-sdk/test; publish.yml validate_core
babysittertest:cloudNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-cloud.logci.yml test or package-local validation when package is touched
babysittertest:hooks-adapterNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-hooks-adapter.logci.yml test/workspace-coverage; publish.yml validate_mux
babysittertest:libraryNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-library.logci.yml test or package-local validation when package is touched
babysittertest:observerNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-observer.logci.yml test or package-local validation when package is touched
babysitterverify:observer-releaseNo-model release gaterelease-gateCI maintainersrelease-logs/babysitter-verify-observer-release.logpackage-local validation and manual release checks
babysittertest:realtime-flowNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-realtime-flow.logci.yml test/workspace-coverage; publish.yml validate_mux
babysittertest:sdkNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-test-sdk.logci.yml packages-sdk/test; publish.yml validate_core
babysitterverify:cloud-releaseNo-model release gaterelease-gateCI maintainersrelease-logs/babysitter-verify-cloud-release.logpublish.yml validate and publish gates
babysitterverify:library-metadataNo-modelcontractCI maintainerstest-logs/babysitter-verify-library-metadata.logci.yml packages-sdk/test; publish.yml validate_core
babysitterverify:metadataNo-modelstatic-checkCI maintainerstest-logs/babysitter-verify-metadata.logci.yml packages-sdk/test; publish.yml validate_core
babysitterverify:realtime-flow-releaseNo-model release gaterelease-gateCI maintainersrelease-logs/babysitter-verify-realtime-flow-release.logpublish.yml validate and publish gates
babysitterverify:v6:seamsNo-modelunit-or-integrationCI maintainerstest-logs/babysitter-verify-v6-seams.logci.yml test or package-local validation when package is touched

Workflow Touchpoints

Current workflows already call many of these commands. Slice 0 does not change workflow behavior; it gives follow-up slices a stable naming target for comments, reusable workflows, and uploaded artifacts.

WorkflowCurrent roleInventory naming target
.github/workflows/ci.ymlPR/push docs, package, adapter, coverage, SDK, and observer validation. Jobs: docs-quality, test, gateway-node-engine (the only matrix job: node-version: ['22.13.0', '22']), workspace-coverage, observer-dashboard. It is the **only** workflow that runs test:release-tooling under its own name (release-artifact-verifier.yml runs it as a step of the release gate). test:babysitter-metapackage runs here and in publish.yml's validate_core.Keep current jobs, then align uploaded logs with test-logs/, coverage/, e2e/, and docs-qa/ names
.github/workflows/publish.ymlUnified branch-aware validation, live-stack preflight, publish, deploy, release-tag, and external-plugin sync ordering. Validation jobs: lint, build_all, validate_core, validate_mux, validate_cloud, validate_kradle, validate_observer_and_compiler, e2e_integration, verify_release_artifacts. prepare_staging_publish runs only when all of those report success.Owns current no-model validation jobs plus the model-backed live-stack scenario/OS matrix before publish jobs
.github/workflows/publish.yml publication and promotion chainprepare_staging_publish (resolve version, sync + verify manifests, preflight channel assertion, derive the hooks-leaves matrix) → dependency-ordered publish jobs → published_consumer_validation → promote_release_channel (gated on that job succeeding) → assert_release_channel_tags → create_release_tagRelease-gate lane; evidence artifacts published-consumer-checks, release-promotion-evidence
.github/workflows/release-artifact-verifier.yml (reusable)Called by publish.yml job verify_release_artifacts and by publish-packages-from-tag.yml's job of the same name (which passes ref: <release tag> so the tag's tree is what gets verified). Runs test:release-tooling and the full-inventory verify-release-artifacts.mjs sweep. allow_known_failures defaults to 'false' on every lane — dispatch, pull_request and workflow_call — and both release callers pass 'false' explicitly, so the sweep runs **without** --allow-known-failures. **It gates publication:** publish.yml's prepare_staging_publish and publish-packages-from-tag.yml's publish_non_plugin_packages both declare verify_release_artifacts in needs, so a packed-artifact failure stops every downstream publish job. Pinned by scripts/__tests__/verify-release-artifacts.test.mjs.Release-gate lane; artifact release-verifier-reports
.github/workflows/live-stack-published.yml (reusable)Called by publish.yml job published_consumer_validation with the exact release version. Runs verify-published-release.mjs against npm. Its documented_install job is gated on a channel input that publish.yml does not pass, so the documented-install lanes are skipped pre-promotion.Release-gate lane; artifact published-consumer-checks
.github/workflows/publish.yml docs deploy jobDocs QA and build/deploy (deploy_docs_site, skipped on develop)Use docs-qa/ artifacts and docs check labels inside the unified publish workflow
.github/workflows/generate-plugins.yml and .github/workflows/sync-external-plugins.ymlGenerated plugin validation and syncKeep generated plugin artifacts separate from runtime/model-backed test artifacts

Gaps For Follow-Up Slices

Scripts that exist but no workflow invokes

Reconciling this inventory against actual workflow invocation data surfaced gates that exist as package scripts but are not wired into ci.yml or publish.yml. Each is a real coverage gap, not a naming gap:

  • guard:packages — the composed fast package-integrity gate. Local/manual only.
  • test:binary-renames — the check that proves a compatibility bin points at an emitted path (the FIX-004 failure mode). Local/manual only.
  • test:package-renames — same class, local/manual only.
  • test:packaged-surface-parity --workspace=@a5c-ai/extensions-adapter — the tasks-adapter equivalent is wired into both workflows; the extensions-adapter one is not.

Wiring these is follow-up work; this document records the current true state rather than the intended one.

Closed coverage gaps

These were listed above as unwired; they are now wired, and the row for each command in the tables reflects the current lanes.

  • test:babysitter-metapackage — was ci.yml only. It now also runs in publish.yml's validate_core (step Metapackage shim tests (packed exit-code propagation), log core-logs/babysitter-metapackage-tests.log), so the publication path re-checks FIX-007 exit-code propagation against the packed metapackage.
  • verify_release_artifacts — was in no publish job's needs, so it reported rather than gated. publish.yml's prepare_staging_publish now needs it (in both needs: and its if:, which uses !cancelled()), and every publish_staging_* job hangs off that job. The tag-recovery workflow publish-packages-from-tag.yml did not call the verifier at all; it now has its own verify_release_artifacts job, gated on should_publish, passing allow_known_failures: 'false' and the release tag as ref, with publish_non_plugin_packages depending on it.
  • The FIX-009 PTY suites (packages/adapters/core/tests/pty.test.ts and tests/pty-consumer.packaged.test.ts) ran only inside publish.yml's validate_mux. ci.yml now runs the same suite at PR time under the greppable step name adapters-core PTY contract (@a5c-ai/comm-adapter suite) (log test-logs/adapters-core-pty-contract.log).

Other gaps

  • Current package scripts are mostly no-model package checks; the implemented model-backed live-stack lane is selected by .github/workflows/publish.yml and exercised through test:e2e:live-stack:pipeline.
  • Artifact naming is partially enforced in publish.yml for validation logs and live-stack artifacts; remaining package-local logs should converge on the inventory names when touched.
  • Some root scripts aggregate package-local scripts. Follow-up workflow comments should name both the aggregate and package-local owner when they upload one shared log.
  • The no-model stack matrix now covers transport-adapter-backed agent launches; the next missing slice is broadening runtime-hook assertions from hook bridge evidence into native agent lifecycle hook emission where each harness supports it.

Trail

Wiki
Babysitter Docs
Testing Strategy

Current Test Command Inventory

Continue reading

Agent Adapter And Runtime E2E
Coverage And Reporting
Harness And Plugin E2E
Implementation Roadmap
Mock And Fixture Contracts
Pipeline Integration
Primary Flow Data Paths
Quality Gates

Page record

Open node ledger

wiki/docs/testing/current-test-command-inventory.md

Documents

No documented graph nodes on this page.