agentera 3.0.0-dev.4 → 3.0.0-dev.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +79 -22
- package/bundle/.agentera-npx-bundle.json +1 -1
- package/bundle/CHANGELOG.md +1261 -0
- package/bundle/DESIGN.md +229 -0
- package/bundle/LICENSE +201 -0
- package/bundle/README.md +136 -0
- package/bundle/UPGRADE.md +201 -0
- package/bundle/extract-corpus-parity.json +21 -0
- package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
- package/bundle/references/adapters/package-manifest-interface-model.yaml +42 -252
- package/bundle/references/adapters/package-publication.json +43 -0
- package/bundle/references/adapters/package-registry.yaml +20 -188
- package/bundle/references/adapters/package-surface-characterization.md +59 -48
- package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +74 -0
- package/bundle/references/adapters/runtime-lifecycle-authority.yaml +62 -0
- package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +84 -0
- package/bundle/references/adapters/runtime-retired-resources.yaml +97 -0
- package/bundle/references/analysis/benchmark.md +10 -6
- package/bundle/references/analysis/evidence-tier-authority.yaml +518 -0
- package/bundle/references/analysis/startup-measurement-contract.yaml +37 -26
- package/bundle/references/analysis/verification-policy.yaml +143 -0
- package/bundle/references/artifacts/artifact-registry-interface-model.yaml +20 -10
- package/bundle/references/artifacts/glossary-entry-contract.yaml +1254 -0
- package/bundle/references/artifacts/state-storage-authority.yaml +2930 -0
- package/bundle/references/artifacts/verbosity-budget-authority.yaml +42 -0
- package/bundle/references/cli/agent-ready-state-contract.yaml +133 -71
- package/bundle/references/cli/app-lifecycle-vocabulary.yaml +7 -8
- package/bundle/references/cli/audience-namespace-cli-migration.yaml +73 -33
- package/bundle/references/cli/bundle-skill-vocabulary.yaml +12 -49
- package/bundle/references/cli/capability-instruction-contract.yaml +96 -58
- package/bundle/references/cli/capability-instruction-structure.md +144 -0
- package/bundle/references/cli/capability-tool-classification.yaml +14 -14
- package/bundle/references/cli/coexistence-probe.yaml +13 -0
- package/bundle/references/cli/hybrid-route-contract.yaml +416 -0
- package/bundle/references/cli/parity-expected-actual-template.md +30 -0
- package/bundle/references/cli/prime-consumer-compatibility.yaml +701 -0
- package/bundle/references/cli/routing-execution-vocabulary.yaml +16 -38
- package/bundle/references/cli/routing-model.md +139 -0
- package/bundle/references/cli/single-name-protocol.yaml +42 -0
- package/bundle/references/cli/trigger-schema-enrichment.md +140 -0
- package/bundle/references/cli/update-channels.yaml +35 -2
- package/bundle/references/cli/upgrade-repair-wording.md +25 -0
- package/bundle/references/cli/v3-handoff-manifest.schema.yaml +97 -0
- package/bundle/references/cli/vocabulary-index.yaml +23 -18
- package/bundle/references/cli/vocabulary.md +341 -328
- package/bundle/references/meta/documentation-inventory.md +10 -3
- package/bundle/registry.json +14 -14
- package/bundle/skills/agentera/SKILL.md +202 -408
- package/bundle/skills/agentera/capabilities/audit/schemas/artifacts.yaml +84 -0
- package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/audit/schemas/triggers.yaml +25 -0
- package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/validation.yaml +37 -18
- package/bundle/skills/agentera/capabilities/build/schemas/artifacts.yaml +102 -0
- package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +6 -5
- package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +27 -0
- package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +176 -0
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/artifacts.yaml +12 -12
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/exit.yaml +5 -5
- package/bundle/skills/agentera/capabilities/design/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/validation.yaml +7 -7
- package/bundle/skills/agentera/capabilities/discuss/schemas/artifacts.yaml +51 -0
- package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/discuss/schemas/triggers.yaml +20 -0
- package/bundle/skills/agentera/capabilities/discuss/schemas/validation.yaml +144 -0
- package/bundle/skills/agentera/capabilities/document/schemas/artifacts.yaml +80 -0
- package/bundle/skills/agentera/capabilities/document/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/validation.yaml +18 -18
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/artifacts.yaml +17 -17
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/optimize/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/validation.yaml +9 -9
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/artifacts.yaml +76 -0
- package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/exit.yaml +9 -7
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +121 -0
- package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +66 -0
- package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/plan/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +121 -0
- package/bundle/skills/agentera/capabilities/profile/schemas/artifacts.yaml +23 -0
- package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/exit.yaml +6 -5
- package/bundle/skills/agentera/capabilities/profile/schemas/triggers.yaml +20 -0
- package/bundle/skills/agentera/capabilities/profile/schemas/validation.yaml +115 -0
- package/bundle/skills/agentera/capabilities/research/schemas/artifacts.yaml +24 -0
- package/bundle/skills/agentera/capabilities/research/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/validation.yaml +2 -2
- package/bundle/skills/agentera/capabilities/status/schemas/artifacts.yaml +73 -0
- package/bundle/skills/agentera/capabilities/status/schemas/triggers.yaml +22 -0
- package/bundle/skills/agentera/capabilities/{hej → status}/schemas/validation.yaml +5 -5
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/artifacts.yaml +16 -16
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/exit.yaml +7 -6
- package/bundle/skills/agentera/capabilities/vision/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/validation.yaml +18 -20
- package/bundle/skills/agentera/capability_schema_contract.yaml +200 -37
- package/bundle/skills/agentera/protocol.yaml +31 -31
- package/bundle/skills/agentera/references/contract.md +387 -329
- package/bundle/skills/agentera/route-phrases.yaml +81 -0
- package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +5 -4
- package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +40 -22
- package/bundle/skills/agentera/schemas/artifacts/design.yaml +5 -4
- package/bundle/skills/agentera/schemas/artifacts/docs.yaml +15 -19
- package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +145 -14
- package/bundle/skills/agentera/schemas/artifacts/glossary.yaml +82 -0
- package/bundle/skills/agentera/schemas/artifacts/health.yaml +58 -21
- package/bundle/skills/agentera/schemas/artifacts/objective.yaml +22 -8
- package/bundle/skills/agentera/schemas/artifacts/plan.yaml +419 -33
- package/bundle/skills/agentera/schemas/artifacts/progress.yaml +143 -53
- package/bundle/skills/agentera/schemas/artifacts/todo.yaml +343 -31
- package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
- package/dist/analytics/extractCorpus/cli.js +191 -0
- package/dist/analytics/extractCorpus/cli.js.map +1 -0
- package/dist/analytics/extractCorpus/copilotSessions.js +276 -0
- package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/core.js +393 -0
- package/dist/analytics/extractCorpus/core.js.map +1 -0
- package/dist/analytics/extractCorpus/corpus.js +168 -0
- package/dist/analytics/extractCorpus/corpus.js.map +1 -0
- package/dist/analytics/extractCorpus/coverageAudit.js +261 -0
- package/dist/analytics/extractCorpus/coverageAudit.js.map +1 -0
- package/dist/analytics/extractCorpus/cursorSessions.js +426 -0
- package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/evidenceTiers.js +604 -0
- package/dist/analytics/extractCorpus/evidenceTiers.js.map +1 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js +106 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js.map +1 -0
- package/dist/analytics/extractCorpus/filesystemSources.js +119 -0
- package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
- package/dist/analytics/extractCorpus/index.js +15 -0
- package/dist/analytics/extractCorpus/index.js.map +1 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js +205 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/sqliteCaps.js +44 -0
- package/dist/analytics/extractCorpus/sqliteCaps.js.map +1 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js +368 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/tierReader.js +109 -0
- package/dist/analytics/extractCorpus/tierReader.js.map +1 -0
- package/dist/analytics/extractCorpus.js +2 -1790
- package/dist/analytics/extractCorpus.js.map +1 -1
- package/dist/analytics/glossaryAdviceResolution.js +167 -0
- package/dist/analytics/glossaryAdviceResolution.js.map +1 -0
- package/dist/analytics/glossaryInputAcquisition.js +320 -0
- package/dist/analytics/glossaryInputAcquisition.js.map +1 -0
- package/dist/analytics/personalGlossaryAdmission.js +134 -0
- package/dist/analytics/personalGlossaryAdmission.js.map +1 -0
- package/dist/analytics/personalGlossaryProfile.js +220 -0
- package/dist/analytics/personalGlossaryProfile.js.map +1 -0
- package/dist/analytics/profileSignals.js +212 -0
- package/dist/analytics/profileSignals.js.map +1 -0
- package/dist/analytics/usageStats.js +169 -41
- package/dist/analytics/usageStats.js.map +1 -1
- package/dist/audit/terminologyDrift.js +282 -0
- package/dist/audit/terminologyDrift.js.map +1 -0
- package/dist/bin/agentera.js +3 -1
- package/dist/bin/agentera.js.map +1 -1
- package/dist/capabilities/audit/instructions.js +17 -0
- package/dist/capabilities/audit/instructions.js.map +1 -0
- package/dist/capabilities/build/instructions.js +57 -0
- package/dist/capabilities/build/instructions.js.map +1 -0
- package/dist/capabilities/design/instructions.js +5 -0
- package/dist/capabilities/design/instructions.js.map +1 -0
- package/dist/capabilities/discuss/instructions.js +30 -0
- package/dist/capabilities/discuss/instructions.js.map +1 -0
- package/dist/capabilities/document/instructions.js +12 -0
- package/dist/capabilities/document/instructions.js.map +1 -0
- package/dist/capabilities/index.js +39 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/optimize/instructions.js +15 -0
- package/dist/capabilities/optimize/instructions.js.map +1 -0
- package/dist/capabilities/orchestrate/instructions.js +41 -0
- package/dist/capabilities/orchestrate/instructions.js.map +1 -0
- package/dist/capabilities/plan/instructions.js +33 -0
- package/dist/capabilities/plan/instructions.js.map +1 -0
- package/dist/capabilities/profile/instructions.js +71 -0
- package/dist/capabilities/profile/instructions.js.map +1 -0
- package/dist/capabilities/research/instructions.js +6 -0
- package/dist/capabilities/research/instructions.js.map +1 -0
- package/dist/capabilities/status/instructions.js +12 -0
- package/dist/capabilities/status/instructions.js.map +1 -0
- package/dist/capabilities/status/startupInstructions.js +39 -0
- package/dist/capabilities/status/startupInstructions.js.map +1 -0
- package/dist/capabilities/vision/instructions.js +5 -0
- package/dist/capabilities/vision/instructions.js.map +1 -0
- package/dist/cli/appContext.js +30 -23
- package/dist/cli/appContext.js.map +1 -1
- package/dist/cli/argvalidate.js.map +1 -1
- package/dist/cli/capabilityContext/benchmark.js +565 -0
- package/dist/cli/capabilityContext/benchmark.js.map +1 -0
- package/dist/cli/capabilityContext/bespoke.js +45 -0
- package/dist/cli/capabilityContext/bespoke.js.map +1 -0
- package/dist/cli/capabilityContext/build.js +244 -0
- package/dist/cli/capabilityContext/build.js.map +1 -0
- package/dist/cli/capabilityContext/closeout.js +235 -0
- package/dist/cli/capabilityContext/closeout.js.map +1 -0
- package/dist/cli/capabilityContext/contract.js +214 -0
- package/dist/cli/capabilityContext/contract.js.map +1 -0
- package/dist/cli/capabilityContext/evidence.js +465 -0
- package/dist/cli/capabilityContext/evidence.js.map +1 -0
- package/dist/cli/capabilityContext/index.js +4 -0
- package/dist/cli/capabilityContext/index.js.map +1 -0
- package/dist/cli/capabilityContext/orchestration.js +133 -0
- package/dist/cli/capabilityContext/orchestration.js.map +1 -0
- package/dist/cli/capabilityContext/planState.js +261 -0
- package/dist/cli/capabilityContext/planState.js.map +1 -0
- package/dist/cli/capabilityContext/progress.js +143 -0
- package/dist/cli/capabilityContext/progress.js.map +1 -0
- package/dist/cli/capabilityContext/projectVerification.js +410 -0
- package/dist/cli/capabilityContext/projectVerification.js.map +1 -0
- package/dist/cli/capabilityContext/shared.js +100 -0
- package/dist/cli/capabilityContext/shared.js.map +1 -0
- package/dist/cli/capabilityContext/slim.js +153 -0
- package/dist/cli/capabilityContext/slim.js.map +1 -0
- package/dist/cli/capabilityContext/startup.js +278 -0
- package/dist/cli/capabilityContext/startup.js.map +1 -0
- package/dist/cli/capabilityContext/types.js +56 -0
- package/dist/cli/capabilityContext/types.js.map +1 -0
- package/dist/cli/capabilityContext.js +1 -2420
- package/dist/cli/capabilityContext.js.map +1 -1
- package/dist/cli/commands/appHome.js +23 -0
- package/dist/cli/commands/appHome.js.map +1 -0
- package/dist/cli/commands/capability.js +3 -10
- package/dist/cli/commands/capability.js.map +1 -1
- package/dist/cli/commands/compact.js +41 -12
- package/dist/cli/commands/compact.js.map +1 -1
- package/dist/cli/commands/doctor.js +34 -99
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/durability.js +82 -0
- package/dist/cli/commands/durability.js.map +1 -0
- package/dist/cli/commands/entityMigrate.js +132 -0
- package/dist/cli/commands/entityMigrate.js.map +1 -0
- package/dist/cli/commands/glossaryAdvice.js +139 -0
- package/dist/cli/commands/glossaryAdvice.js.map +1 -0
- package/dist/cli/commands/lint.js +26 -43
- package/dist/cli/commands/lint.js.map +1 -1
- package/dist/cli/commands/personalGlossary.js +177 -0
- package/dist/cli/commands/personalGlossary.js.map +1 -0
- package/dist/cli/commands/prime/briefOrientation.js +808 -0
- package/dist/cli/commands/prime/briefOrientation.js.map +1 -0
- package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
- package/dist/cli/commands/prime/buildExecutionRequest.js.map +1 -0
- package/dist/cli/commands/prime/bundleStatus.js +191 -0
- package/dist/cli/commands/prime/bundleStatus.js.map +1 -0
- package/dist/cli/commands/prime/collectEntityOrientation.js +291 -0
- package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -0
- package/dist/cli/commands/prime/collectOrientationState.js +178 -0
- package/dist/cli/commands/prime/collectOrientationState.js.map +1 -0
- package/dist/cli/commands/prime/orientationOutput.js +377 -0
- package/dist/cli/commands/prime/orientationOutput.js.map +1 -0
- package/dist/cli/commands/prime/types.js +2 -0
- package/dist/cli/commands/prime/types.js.map +1 -0
- package/dist/cli/commands/prime/v1Migration.js +39 -0
- package/dist/cli/commands/prime/v1Migration.js.map +1 -0
- package/dist/cli/commands/prime.js +96 -556
- package/dist/cli/commands/prime.js.map +1 -1
- package/dist/cli/commands/profileGrounding.js +56 -0
- package/dist/cli/commands/profileGrounding.js.map +1 -0
- package/dist/cli/commands/query.js +77 -52
- package/dist/cli/commands/query.js.map +1 -1
- package/dist/cli/commands/report.js +96 -24
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/route.js +142 -0
- package/dist/cli/commands/route.js.map +1 -0
- package/dist/cli/commands/schema.js +258 -105
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/state/decisions.js +388 -0
- package/dist/cli/commands/state/decisions.js.map +1 -0
- package/dist/cli/commands/state/docs.js +71 -0
- package/dist/cli/commands/state/docs.js.map +1 -0
- package/dist/cli/commands/state/experimentRecords.js +152 -0
- package/dist/cli/commands/state/experimentRecords.js.map +1 -0
- package/dist/cli/commands/state/experiments.js +15 -0
- package/dist/cli/commands/state/experiments.js.map +1 -0
- package/dist/cli/commands/state/get.js +130 -0
- package/dist/cli/commands/state/get.js.map +1 -0
- package/dist/cli/commands/state/health.js +15 -0
- package/dist/cli/commands/state/health.js.map +1 -0
- package/dist/cli/commands/state/index.js +17 -0
- package/dist/cli/commands/state/index.js.map +1 -0
- package/dist/cli/commands/state/list.js +195 -0
- package/dist/cli/commands/state/list.js.map +1 -0
- package/dist/cli/commands/state/objective.js +26 -0
- package/dist/cli/commands/state/objective.js.map +1 -0
- package/dist/cli/commands/state/plan.js +15 -0
- package/dist/cli/commands/state/plan.js.map +1 -0
- package/dist/cli/commands/state/planTasks.js +155 -0
- package/dist/cli/commands/state/planTasks.js.map +1 -0
- package/dist/cli/commands/state/plans.js +155 -0
- package/dist/cli/commands/state/plans.js.map +1 -0
- package/dist/cli/commands/state/progress.js +14 -0
- package/dist/cli/commands/state/progress.js.map +1 -0
- package/dist/cli/commands/state/shared.js +15 -0
- package/dist/cli/commands/state/shared.js.map +1 -0
- package/dist/cli/commands/state/todo.js +43 -0
- package/dist/cli/commands/state/todo.js.map +1 -0
- package/dist/cli/commands/state/write.js +425 -0
- package/dist/cli/commands/state/write.js.map +1 -0
- package/dist/cli/commands/upgrade.js +146 -4
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/commands/upgradeVerify.js +119 -0
- package/dist/cli/commands/upgradeVerify.js.map +1 -0
- package/dist/cli/commands/validate.js +173 -210
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/commands/verify.js +24 -8
- package/dist/cli/commands/verify.js.map +1 -1
- package/dist/cli/contracts/bundleStatus.js +2 -0
- package/dist/cli/contracts/bundleStatus.js.map +1 -0
- package/dist/cli/contracts/orientationState.js +2 -0
- package/dist/cli/contracts/orientationState.js.map +1 -0
- package/dist/cli/dispatch/argvParser.js +33 -0
- package/dist/cli/dispatch/argvParser.js.map +1 -0
- package/dist/cli/dispatch/check.js +390 -0
- package/dist/cli/dispatch/check.js.map +1 -0
- package/dist/cli/dispatch/commands.js +27 -0
- package/dist/cli/dispatch/commands.js.map +1 -0
- package/dist/cli/dispatch/index.js +234 -0
- package/dist/cli/dispatch/index.js.map +1 -0
- package/dist/cli/dispatch/lifecycle.js +698 -0
- package/dist/cli/dispatch/lifecycle.js.map +1 -0
- package/dist/cli/dispatch/prime.js +140 -0
- package/dist/cli/dispatch/prime.js.map +1 -0
- package/dist/cli/dispatch/shared.js +64 -0
- package/dist/cli/dispatch/shared.js.map +1 -0
- package/dist/cli/dispatch/state.js +141 -0
- package/dist/cli/dispatch/state.js.map +1 -0
- package/dist/cli/dispatch.js +1 -995
- package/dist/cli/dispatch.js.map +1 -1
- package/dist/cli/errors.js +53 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/help.js +356 -30
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/migrationRequired.js +89 -0
- package/dist/cli/migrationRequired.js.map +1 -0
- package/dist/cli/orientation/attention.js +72 -0
- package/dist/cli/orientation/attention.js.map +1 -0
- package/dist/cli/orientation/corpusCoverage.js +103 -0
- package/dist/cli/orientation/corpusCoverage.js.map +1 -0
- package/dist/cli/orientation.js +443 -172
- package/dist/cli/orientation.js.map +1 -1
- package/dist/cli/planArtifacts.js +351 -0
- package/dist/cli/planArtifacts.js.map +1 -0
- package/dist/cli/planEvidence.js +158 -0
- package/dist/cli/planEvidence.js.map +1 -0
- package/dist/cli/planLifecycleState.js +36 -0
- package/dist/cli/planLifecycleState.js.map +1 -0
- package/dist/cli/planTaskIndex.js +12 -0
- package/dist/cli/planTaskIndex.js.map +1 -0
- package/dist/cli/prime-blob.js +70 -2
- package/dist/cli/prime-blob.js.map +1 -1
- package/dist/cli/profileAcquisition.js +168 -0
- package/dist/cli/profileAcquisition.js.map +1 -0
- package/dist/cli/startupCompletenessContract.js +60 -0
- package/dist/cli/startupCompletenessContract.js.map +1 -0
- package/dist/cli/stateQuery.js +63 -10
- package/dist/cli/stateQuery.js.map +1 -1
- package/dist/cli/structured.js.map +1 -1
- package/dist/cli/todoMarkdown.js +47 -0
- package/dist/cli/todoMarkdown.js.map +1 -0
- package/dist/cli/todoReadinessSelection.js +192 -0
- package/dist/cli/todoReadinessSelection.js.map +1 -0
- package/dist/cli/todoSeverity.js +19 -0
- package/dist/cli/todoSeverity.js.map +1 -0
- package/dist/core/atomicWriter.js +21 -0
- package/dist/core/atomicWriter.js.map +1 -0
- package/dist/core/difflib.js.map +1 -1
- package/dist/core/envPaths.js +21 -0
- package/dist/core/envPaths.js.map +1 -0
- package/dist/core/jsonValue.js +6 -0
- package/dist/core/jsonValue.js.map +1 -0
- package/dist/core/paths.js.map +1 -1
- package/dist/core/pyjson.js +67 -2
- package/dist/core/pyjson.js.map +1 -1
- package/dist/core/shell.js +5 -0
- package/dist/core/shell.js.map +1 -0
- package/dist/core/skillIdentity.js +24 -0
- package/dist/core/skillIdentity.js.map +1 -0
- package/dist/core/sourceRoot.js.map +1 -1
- package/dist/core/text.js +11 -0
- package/dist/core/text.js.map +1 -0
- package/dist/core/toml.js.map +1 -1
- package/dist/core/yaml.js +8 -0
- package/dist/core/yaml.js.map +1 -1
- package/dist/eval/evalSkills.js +30 -25
- package/dist/eval/evalSkills.js.map +1 -1
- package/dist/eval/hybridRouteEvaluation.js +156 -0
- package/dist/eval/hybridRouteEvaluation.js.map +1 -0
- package/dist/eval/semanticEval.js +43 -19
- package/dist/eval/semanticEval.js.map +1 -1
- package/dist/eval/semanticFixtures.js +16 -4
- package/dist/eval/semanticFixtures.js.map +1 -1
- package/dist/hooks/common.js +10 -27
- package/dist/hooks/common.js.map +1 -1
- package/dist/hooks/compaction/apply.js +447 -0
- package/dist/hooks/compaction/apply.js.map +1 -0
- package/dist/hooks/compaction/dryRun.js +185 -0
- package/dist/hooks/compaction/dryRun.js.map +1 -0
- package/dist/hooks/compaction/index.js +23 -0
- package/dist/hooks/compaction/index.js.map +1 -0
- package/dist/hooks/compaction/parse.js +326 -0
- package/dist/hooks/compaction/parse.js.map +1 -0
- package/dist/hooks/compaction/retention.js +203 -0
- package/dist/hooks/compaction/retention.js.map +1 -0
- package/dist/hooks/compaction/status.js +361 -0
- package/dist/hooks/compaction/status.js.map +1 -0
- package/dist/hooks/compaction/types.js +6 -0
- package/dist/hooks/compaction/types.js.map +1 -0
- package/dist/hooks/cursorPreToolUse.js +1 -1
- package/dist/hooks/cursorPreToolUse.js.map +1 -1
- package/dist/hooks/cursorSessionStart.js +14 -21
- package/dist/hooks/cursorSessionStart.js.map +1 -1
- package/dist/hooks/projectHookInput.js +26 -0
- package/dist/hooks/projectHookInput.js.map +1 -0
- package/dist/hooks/sessionStart.js +55 -170
- package/dist/hooks/sessionStart.js.map +1 -1
- package/dist/hooks/sessionStop.js +12 -26
- package/dist/hooks/sessionStop.js.map +1 -1
- package/dist/hooks/validateArtifact/agentFacing.js +10 -0
- package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
- package/dist/hooks/validateArtifact/index.js +151 -0
- package/dist/hooks/validateArtifact/index.js.map +1 -0
- package/dist/hooks/validateArtifact/markdown.js +146 -0
- package/dist/hooks/validateArtifact/markdown.js.map +1 -0
- package/dist/hooks/validateArtifact/runtime.js +86 -0
- package/dist/hooks/validateArtifact/runtime.js.map +1 -0
- package/dist/hooks/validateArtifact/schema.js +547 -0
- package/dist/hooks/validateArtifact/schema.js.map +1 -0
- package/dist/hooks/validateArtifact/traversal.js +108 -0
- package/dist/hooks/validateArtifact/traversal.js.map +1 -0
- package/dist/hooks/validateArtifact/violations.js +108 -0
- package/dist/hooks/validateArtifact/violations.js.map +1 -0
- package/dist/migrate/v2HandoffManifest.js +455 -0
- package/dist/migrate/v2HandoffManifest.js.map +1 -0
- package/dist/registries/artifactProtocolIds.js +79 -0
- package/dist/registries/artifactProtocolIds.js.map +1 -0
- package/dist/registries/artifactRegistry.js +224 -62
- package/dist/registries/artifactRegistry.js.map +1 -1
- package/dist/registries/artifactSchemaProjection.js +46 -0
- package/dist/registries/artifactSchemaProjection.js.map +1 -0
- package/dist/registries/capabilityContract.js +141 -12
- package/dist/registries/capabilityContract.js.map +1 -1
- package/dist/registries/evaluatorHandoffContract.js +171 -0
- package/dist/registries/evaluatorHandoffContract.js.map +1 -0
- package/dist/registries/evidenceTierContract.js +372 -0
- package/dist/registries/evidenceTierContract.js.map +1 -0
- package/dist/registries/glossaryAdviceContract.js +79 -0
- package/dist/registries/glossaryAdviceContract.js.map +1 -0
- package/dist/registries/glossaryCaveatContract.js +68 -0
- package/dist/registries/glossaryCaveatContract.js.map +1 -0
- package/dist/registries/glossaryConsumerContractValidation.js +788 -0
- package/dist/registries/glossaryConsumerContractValidation.js.map +1 -0
- package/dist/registries/glossaryEntryContract.js +757 -0
- package/dist/registries/glossaryEntryContract.js.map +1 -0
- package/dist/registries/glossaryTermIdentity.js +18 -0
- package/dist/registries/glossaryTermIdentity.js.map +1 -0
- package/dist/registries/glossaryTermOccurrence.js +21 -0
- package/dist/registries/glossaryTermOccurrence.js.map +1 -0
- package/dist/registries/hybridRoute.js +203 -0
- package/dist/registries/hybridRoute.js.map +1 -0
- package/dist/registries/hybridRouteReceipt.js +221 -0
- package/dist/registries/hybridRouteReceipt.js.map +1 -0
- package/dist/registries/packageRegistry.js +90 -230
- package/dist/registries/packageRegistry.js.map +1 -1
- package/dist/registries/todoReadinessContract.js +449 -0
- package/dist/registries/todoReadinessContract.js.map +1 -0
- package/dist/registries/triggerLoader.js +175 -0
- package/dist/registries/triggerLoader.js.map +1 -0
- package/dist/registries/verbosityBudgetContract.js +206 -0
- package/dist/registries/verbosityBudgetContract.js.map +1 -0
- package/dist/release/releaseMetadata.js +319 -0
- package/dist/release/releaseMetadata.js.map +1 -0
- package/dist/runtime/lifecycleAdapterContract.js +458 -0
- package/dist/runtime/lifecycleAdapterContract.js.map +1 -0
- package/dist/runtime/lifecycleAdapters.js +778 -0
- package/dist/runtime/lifecycleAdapters.js.map +1 -0
- package/dist/runtime/lifecycleAuthority.js +454 -0
- package/dist/runtime/lifecycleAuthority.js.map +1 -0
- package/dist/runtime/lifecycleOperationContract.js +114 -0
- package/dist/runtime/lifecycleOperationContract.js.map +1 -0
- package/dist/runtime/lifecycleOperations.js +635 -0
- package/dist/runtime/lifecycleOperations.js.map +1 -0
- package/dist/runtime/lifecycleOwnershipJournal.js +623 -0
- package/dist/runtime/lifecycleOwnershipJournal.js.map +1 -0
- package/dist/runtime/lifecyclePublication.js +416 -0
- package/dist/runtime/lifecyclePublication.js.map +1 -0
- package/dist/runtime/lifecycleSnapshot.js +439 -0
- package/dist/runtime/lifecycleSnapshot.js.map +1 -0
- package/dist/runtime/nativeResourceCleanup.js +317 -0
- package/dist/runtime/nativeResourceCleanup.js.map +1 -0
- package/dist/setup/codex/cli.js +130 -0
- package/dist/setup/codex/cli.js.map +1 -0
- package/dist/setup/codex/configToml.js +558 -0
- package/dist/setup/codex/configToml.js.map +1 -0
- package/dist/setup/codex/constants.js +14 -0
- package/dist/setup/codex/constants.js.map +1 -0
- package/dist/setup/codex/installRoot.js +64 -0
- package/dist/setup/codex/installRoot.js.map +1 -0
- package/dist/setup/codex/state.js +252 -0
- package/dist/setup/codex/state.js.map +1 -0
- package/dist/setup/codex.js +9 -1055
- package/dist/setup/codex.js.map +1 -1
- package/dist/setup/opencode.js +21 -0
- package/dist/setup/opencode.js.map +1 -0
- package/dist/setup/opencodeConstants.js +2 -0
- package/dist/setup/opencodeConstants.js.map +1 -0
- package/dist/setup/sharedSkill.js +46 -0
- package/dist/setup/sharedSkill.js.map +1 -0
- package/dist/setup/smokeChecks.js +24 -53
- package/dist/setup/smokeChecks.js.map +1 -1
- package/dist/state/archiveDiscovery.js +581 -0
- package/dist/state/archiveDiscovery.js.map +1 -0
- package/dist/state/archivePublication.js +226 -0
- package/dist/state/archivePublication.js.map +1 -0
- package/dist/state/archiveRecovery.js +238 -0
- package/dist/state/archiveRecovery.js.map +1 -0
- package/dist/state/archiveReplay.js +54 -0
- package/dist/state/archiveReplay.js.map +1 -0
- package/dist/state/canonicalMigrationRecord.js +37 -0
- package/dist/state/canonicalMigrationRecord.js.map +1 -0
- package/dist/state/changelog.js +222 -0
- package/dist/state/changelog.js.map +1 -0
- package/dist/state/decisionEntities.js +368 -0
- package/dist/state/decisionEntities.js.map +1 -0
- package/dist/state/decisionLegacyValidation.js +216 -0
- package/dist/state/decisionLegacyValidation.js.map +1 -0
- package/dist/state/decisionMigrationProvenance.js +200 -0
- package/dist/state/decisionMigrationProvenance.js.map +1 -0
- package/dist/state/decisionOverlay.js +255 -0
- package/dist/state/decisionOverlay.js.map +1 -0
- package/dist/state/decisionRevision.js +257 -0
- package/dist/state/decisionRevision.js.map +1 -0
- package/dist/state/decisionRevisionMigration.js +90 -0
- package/dist/state/decisionRevisionMigration.js.map +1 -0
- package/dist/state/directRetrieval.js +324 -0
- package/dist/state/directRetrieval.js.map +1 -0
- package/dist/state/durability.js +325 -0
- package/dist/state/durability.js.map +1 -0
- package/dist/state/entityCutover.js +294 -0
- package/dist/state/entityCutover.js.map +1 -0
- package/dist/state/entityCutoverGit.js +128 -0
- package/dist/state/entityCutoverGit.js.map +1 -0
- package/dist/state/entityGlossaryAuthority.js +14 -0
- package/dist/state/entityGlossaryAuthority.js.map +1 -0
- package/dist/state/entityListProjection.js +188 -0
- package/dist/state/entityListProjection.js.map +1 -0
- package/dist/state/entityListRuntimeRegistry.js +50 -0
- package/dist/state/entityListRuntimeRegistry.js.map +1 -0
- package/dist/state/entityMigrationCausality.js +99 -0
- package/dist/state/entityMigrationCausality.js.map +1 -0
- package/dist/state/entityMigrationIdentity.js +6 -0
- package/dist/state/entityMigrationIdentity.js.map +1 -0
- package/dist/state/entityMigrationPreview.js +884 -0
- package/dist/state/entityMigrationPreview.js.map +1 -0
- package/dist/state/entityPublicationContext.js +807 -0
- package/dist/state/entityPublicationContext.js.map +1 -0
- package/dist/state/entityRetrievalHelp.js +476 -0
- package/dist/state/entityRetrievalHelp.js.map +1 -0
- package/dist/state/entityStorage.js +897 -0
- package/dist/state/entityStorage.js.map +1 -0
- package/dist/state/exactReplacementRecovery.js +19 -0
- package/dist/state/exactReplacementRecovery.js.map +1 -0
- package/dist/state/experimentArchive.js +64 -0
- package/dist/state/experimentArchive.js.map +1 -0
- package/dist/state/experimentIdentity.js +203 -0
- package/dist/state/experimentIdentity.js.map +1 -0
- package/dist/state/healthEntities.js +263 -0
- package/dist/state/healthEntities.js.map +1 -0
- package/dist/state/healthEntityValidation.js +19 -0
- package/dist/state/healthEntityValidation.js.map +1 -0
- package/dist/state/healthRepair.js +70 -0
- package/dist/state/healthRepair.js.map +1 -0
- package/dist/state/installRoot.js +64 -24
- package/dist/state/installRoot.js.map +1 -1
- package/dist/state/legacyEntityCutoverEvidence.js +66 -0
- package/dist/state/legacyEntityCutoverEvidence.js.map +1 -0
- package/dist/state/legacyIdentity.js +48 -0
- package/dist/state/legacyIdentity.js.map +1 -0
- package/dist/state/legacySummaryRecord.js +7 -0
- package/dist/state/legacySummaryRecord.js.map +1 -0
- package/dist/state/listAccounting.js +55 -0
- package/dist/state/listAccounting.js.map +1 -0
- package/dist/state/listClassification.js +18 -0
- package/dist/state/listClassification.js.map +1 -0
- package/dist/state/listCursor.js +43 -0
- package/dist/state/listCursor.js.map +1 -0
- package/dist/state/listRetrieval.js +782 -0
- package/dist/state/listRetrieval.js.map +1 -0
- package/dist/state/migrationSourceBinding.js +31 -0
- package/dist/state/migrationSourceBinding.js.map +1 -0
- package/dist/state/objectiveExperimentEntities.js +323 -0
- package/dist/state/objectiveExperimentEntities.js.map +1 -0
- package/dist/state/planEntities.js +531 -0
- package/dist/state/planEntities.js.map +1 -0
- package/dist/state/planIdentity.js +48 -0
- package/dist/state/planIdentity.js.map +1 -0
- package/dist/state/planRetrieval.js +314 -0
- package/dist/state/planRetrieval.js.map +1 -0
- package/dist/state/planTaskRetrieval.js +295 -0
- package/dist/state/planTaskRetrieval.js.map +1 -0
- package/dist/state/progressEntities.js +513 -0
- package/dist/state/progressEntities.js.map +1 -0
- package/dist/state/progressGlossaryCaveat.js +169 -0
- package/dist/state/progressGlossaryCaveat.js.map +1 -0
- package/dist/state/progressPublicationOrder.js +20 -0
- package/dist/state/progressPublicationOrder.js.map +1 -0
- package/dist/state/projectRoot.js +63 -0
- package/dist/state/projectRoot.js.map +1 -0
- package/dist/state/projectionPolicy.js +191 -0
- package/dist/state/projectionPolicy.js.map +1 -0
- package/dist/state/retrievalAuthority.js +157 -0
- package/dist/state/retrievalAuthority.js.map +1 -0
- package/dist/state/safeProjectFile.js +156 -0
- package/dist/state/safeProjectFile.js.map +1 -0
- package/dist/state/startupAnalysis/benchmark.js +433 -0
- package/dist/state/startupAnalysis/benchmark.js.map +1 -0
- package/dist/state/startupAnalysis/contract.js +126 -0
- package/dist/state/startupAnalysis/contract.js.map +1 -0
- package/dist/state/startupAnalysis/helpers.js +287 -0
- package/dist/state/startupAnalysis/helpers.js.map +1 -0
- package/dist/state/startupAnalysis/index.js +7 -0
- package/dist/state/startupAnalysis/index.js.map +1 -0
- package/dist/state/startupAnalysis/metrics.js +341 -0
- package/dist/state/startupAnalysis/metrics.js.map +1 -0
- package/dist/state/startupAnalysis/records.js +199 -0
- package/dist/state/startupAnalysis/records.js.map +1 -0
- package/dist/state/startupAnalysis/report.js +112 -0
- package/dist/state/startupAnalysis/report.js.map +1 -0
- package/dist/state/startupAnalysis/threshold.js +513 -0
- package/dist/state/startupAnalysis/threshold.js.map +1 -0
- package/dist/state/startupAnalysis.js +2 -1952
- package/dist/state/startupAnalysis.js.map +1 -1
- package/dist/state/startupProjection.js +499 -0
- package/dist/state/startupProjection.js.map +1 -0
- package/dist/state/stateMode.js +86 -0
- package/dist/state/stateMode.js.map +1 -0
- package/dist/state/stateStorageAuthority.js +48 -0
- package/dist/state/stateStorageAuthority.js.map +1 -0
- package/dist/state/summaryEntityRead.js +26 -0
- package/dist/state/summaryEntityRead.js.map +1 -0
- package/dist/state/summaryMigrationProvenance.js +67 -0
- package/dist/state/summaryMigrationProvenance.js.map +1 -0
- package/dist/state/summarySourceRowAuthority.js +37 -0
- package/dist/state/summarySourceRowAuthority.js.map +1 -0
- package/dist/state/todoDocsEntities.js +986 -0
- package/dist/state/todoDocsEntities.js.map +1 -0
- package/dist/state/todoDocsEntityValidation.js +159 -0
- package/dist/state/todoDocsEntityValidation.js.map +1 -0
- package/dist/state/todoReconciliationActivation.js +63 -0
- package/dist/state/todoReconciliationActivation.js.map +1 -0
- package/dist/state/todoReconciliationTransaction.js +554 -0
- package/dist/state/todoReconciliationTransaction.js.map +1 -0
- package/dist/state/write/assign.js +21 -0
- package/dist/state/write/assign.js.map +1 -0
- package/dist/state/write/candidateMutation.js +270 -0
- package/dist/state/write/candidateMutation.js.map +1 -0
- package/dist/state/write/errors.js +12 -0
- package/dist/state/write/errors.js.map +1 -0
- package/dist/state/write/experimentPublication.js +193 -0
- package/dist/state/write/experimentPublication.js.map +1 -0
- package/dist/state/write/explain.js +333 -0
- package/dist/state/write/explain.js.map +1 -0
- package/dist/state/write/fields.js +62 -0
- package/dist/state/write/fields.js.map +1 -0
- package/dist/state/write/glossaryPublication.js +264 -0
- package/dist/state/write/glossaryPublication.js.map +1 -0
- package/dist/state/write/grammar.js +271 -0
- package/dist/state/write/grammar.js.map +1 -0
- package/dist/state/write/helpers.js +30 -0
- package/dist/state/write/helpers.js.map +1 -0
- package/dist/state/write/index.js +13 -0
- package/dist/state/write/index.js.map +1 -0
- package/dist/state/write/input.js +368 -0
- package/dist/state/write/input.js.map +1 -0
- package/dist/state/write/lock.js +838 -0
- package/dist/state/write/lock.js.map +1 -0
- package/dist/state/write/mutation.js +235 -0
- package/dist/state/write/mutation.js.map +1 -0
- package/dist/state/write/operations.js +170 -0
- package/dist/state/write/operations.js.map +1 -0
- package/dist/state/write/planEvaluation.js +129 -0
- package/dist/state/write/planEvaluation.js.map +1 -0
- package/dist/state/write/planPublication.js +180 -0
- package/dist/state/write/planPublication.js.map +1 -0
- package/dist/state/write/runtimeOperations.js +65 -0
- package/dist/state/write/runtimeOperations.js.map +1 -0
- package/dist/state/write/serialize.js +2 -0
- package/dist/state/write/serialize.js.map +1 -0
- package/dist/state/write/transaction.js +53 -0
- package/dist/state/write/transaction.js.map +1 -0
- package/dist/state/write/validate.js +8 -0
- package/dist/state/write/validate.js.map +1 -0
- package/dist/upgrade/appContentRefresh.js +384 -0
- package/dist/upgrade/appContentRefresh.js.map +1 -0
- package/dist/upgrade/appModel.js +8 -6
- package/dist/upgrade/appModel.js.map +1 -1
- package/dist/upgrade/atomicWriter.js +2 -0
- package/dist/upgrade/atomicWriter.js.map +1 -0
- package/dist/upgrade/bundleEvidence.js +34 -0
- package/dist/upgrade/bundleEvidence.js.map +1 -0
- package/dist/upgrade/channels.js +12 -7
- package/dist/upgrade/channels.js.map +1 -1
- package/dist/upgrade/coexistenceProbe.js +105 -0
- package/dist/upgrade/coexistenceProbe.js.map +1 -0
- package/dist/upgrade/compatibility.js +56 -20
- package/dist/upgrade/compatibility.js.map +1 -1
- package/dist/upgrade/doctor.js +197 -191
- package/dist/upgrade/doctor.js.map +1 -1
- package/dist/upgrade/doctorClassifier.js +188 -0
- package/dist/upgrade/doctorClassifier.js.map +1 -0
- package/dist/upgrade/installedHooksRetirement.js +197 -0
- package/dist/upgrade/installedHooksRetirement.js.map +1 -0
- package/dist/upgrade/legacyAgentCleanup.js +283 -0
- package/dist/upgrade/legacyAgentCleanup.js.map +1 -0
- package/dist/upgrade/lifecycleUpgrade.js +114 -0
- package/dist/upgrade/lifecycleUpgrade.js.map +1 -0
- package/dist/upgrade/migrateArtifactsV2ToV3.js +363 -137
- package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
- package/dist/upgrade/migrationPublication.js +123 -0
- package/dist/upgrade/migrationPublication.js.map +1 -0
- package/dist/upgrade/nextMajorDoctor.js +156 -0
- package/dist/upgrade/nextMajorDoctor.js.map +1 -0
- package/dist/upgrade/npxPlatformStatus.js +23 -0
- package/dist/upgrade/npxPlatformStatus.js.map +1 -0
- package/dist/upgrade/projectIntegration.js +142 -171
- package/dist/upgrade/projectIntegration.js.map +1 -1
- package/dist/upgrade/projectIntegrationDecision.js +51 -0
- package/dist/upgrade/projectIntegrationDecision.js.map +1 -0
- package/dist/upgrade/runtimeMigration.js +336 -281
- package/dist/upgrade/runtimeMigration.js.map +1 -1
- package/dist/upgrade/upgradeCommands.js +9 -0
- package/dist/upgrade/upgradeCommands.js.map +1 -1
- package/dist/upgrade/upgradeLock.js +86 -0
- package/dist/upgrade/upgradeLock.js.map +1 -0
- package/dist/upgrade/upgradeOrchestrator.js +217 -56
- package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
- package/dist/upgrade/v3CapabilitySurface.js +15 -0
- package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
- package/dist/upgrade/versionResolution.js +12 -4
- package/dist/upgrade/versionResolution.js.map +1 -1
- package/dist/validate/appHomeContract.js +5 -9
- package/dist/validate/appHomeContract.js.map +1 -1
- package/dist/validate/capability.js +144 -14
- package/dist/validate/capability.js.map +1 -1
- package/dist/validate/crossCapability.js +15 -9
- package/dist/validate/crossCapability.js.map +1 -1
- package/dist/validate/selfAudit.js +73 -36
- package/dist/validate/selfAudit.js.map +1 -1
- package/dist/validate/v1LegacyCruft.js +141 -0
- package/dist/validate/v1LegacyCruft.js.map +1 -0
- package/dist/validate/vocabularyAuthority.js +305 -0
- package/dist/validate/vocabularyAuthority.js.map +1 -0
- package/package.json +46 -27
- package/bundle/references/adapters/cursor.md +0 -213
- package/bundle/references/adapters/opencode.md +0 -530
- package/bundle/references/adapters/runtime-adapter-characterization.md +0 -79
- package/bundle/references/adapters/runtime-adapter-interface-model.yaml +0 -200
- package/bundle/references/adapters/runtime-adapter-registry.yaml +0 -548
- package/bundle/references/adapters/runtime-feature-parity.md +0 -189
- package/bundle/references/v1-section-mapping.md +0 -47
- package/bundle/skills/agentera/.claude-plugin/plugin.json +0 -27
- package/bundle/skills/agentera/agents/dokumentera.toml +0 -6
- package/bundle/skills/agentera/agents/hej.toml +0 -6
- package/bundle/skills/agentera/agents/inspektera.toml +0 -6
- package/bundle/skills/agentera/agents/inspirera.toml +0 -6
- package/bundle/skills/agentera/agents/optimera.toml +0 -6
- package/bundle/skills/agentera/agents/orkestrera.toml +0 -6
- package/bundle/skills/agentera/agents/planera.toml +0 -6
- package/bundle/skills/agentera/agents/profilera.toml +0 -6
- package/bundle/skills/agentera/agents/realisera.toml +0 -6
- package/bundle/skills/agentera/agents/resonera.toml +0 -6
- package/bundle/skills/agentera/agents/visionera.toml +0 -6
- package/bundle/skills/agentera/agents/visualisera.toml +0 -6
- package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
- package/bundle/skills/agentera/capabilities/dokumentera/schemas/artifacts.yaml +0 -73
- package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +0 -35
- package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
- package/bundle/skills/agentera/capabilities/hej/schemas/artifacts.yaml +0 -69
- package/bundle/skills/agentera/capabilities/hej/schemas/triggers.yaml +0 -58
- package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
- package/bundle/skills/agentera/capabilities/inspektera/schemas/artifacts.yaml +0 -76
- package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +0 -38
- package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
- package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +0 -24
- package/bundle/skills/agentera/capabilities/inspirera/schemas/triggers.yaml +0 -34
- package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
- package/bundle/skills/agentera/capabilities/optimera/schemas/triggers.yaml +0 -39
- package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/artifacts.yaml +0 -64
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/triggers.yaml +0 -42
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +0 -107
- package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
- package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +0 -62
- package/bundle/skills/agentera/capabilities/planera/schemas/triggers.yaml +0 -34
- package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +0 -61
- package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
- package/bundle/skills/agentera/capabilities/profilera/schemas/artifacts.yaml +0 -18
- package/bundle/skills/agentera/capabilities/profilera/schemas/triggers.yaml +0 -45
- package/bundle/skills/agentera/capabilities/profilera/schemas/validation.yaml +0 -57
- package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
- package/bundle/skills/agentera/capabilities/realisera/schemas/artifacts.yaml +0 -80
- package/bundle/skills/agentera/capabilities/realisera/schemas/triggers.yaml +0 -39
- package/bundle/skills/agentera/capabilities/realisera/schemas/validation.yaml +0 -110
- package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
- package/bundle/skills/agentera/capabilities/resonera/schemas/artifacts.yaml +0 -47
- package/bundle/skills/agentera/capabilities/resonera/schemas/triggers.yaml +0 -46
- package/bundle/skills/agentera/capabilities/resonera/schemas/validation.yaml +0 -77
- package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
- package/bundle/skills/agentera/capabilities/visionera/schemas/triggers.yaml +0 -41
- package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
- package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +0 -33
- package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
- package/bundle/skills/hej/SKILL.md +0 -69
- package/bundle/skills/hej/agents/hej.toml +0 -11
- package/bundle/skills/hej/agents/openai.yaml +0 -8
- package/dist/cli/commands/backfill.js +0 -84
- package/dist/cli/commands/backfill.js.map +0 -1
- package/dist/cli/commands/state.js +0 -1012
- package/dist/cli/commands/state.js.map +0 -1
- package/dist/core/git.js +0 -43
- package/dist/core/git.js.map +0 -1
- package/dist/hooks/compaction.js +0 -935
- package/dist/hooks/compaction.js.map +0 -1
- package/dist/hooks/validateArtifact.js +0 -933
- package/dist/hooks/validateArtifact.js.map +0 -1
- package/dist/registries/runtimeAdapterRegistry.js +0 -315
- package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
- package/dist/setup/copilot.js +0 -227
- package/dist/setup/copilot.js.map +0 -1
- package/dist/setup/cursor.js +0 -127
- package/dist/setup/cursor.js.map +0 -1
- package/dist/setup/doctor.js +0 -1297
- package/dist/setup/doctor.js.map +0 -1
- package/dist/state/progressCommit.js +0 -289
- package/dist/state/progressCommit.js.map +0 -1
- package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -571
- package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
- package/dist/validate/lifecycleAdapters.js +0 -772
- package/dist/validate/lifecycleAdapters.js.map +0 -1
- /package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/exit.yaml +0 -0
- /package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/exit.yaml +0 -0
- /package/bundle/skills/agentera/capabilities/{hej → status}/schemas/exit.yaml +0 -0
|
@@ -0,0 +1,701 @@
|
|
|
1
|
+
schema_version: agentera.prime_consumer_compatibility.v1
|
|
2
|
+
status: approved_boundary
|
|
3
|
+
plan: plan:634c092e-a7bc-48f4-80ee-2c91940e54f1
|
|
4
|
+
plan_task: 1
|
|
5
|
+
purpose: >-
|
|
6
|
+
Task 1 compatibility boundary for the "Make prime startup compact and
|
|
7
|
+
self-contained" plan. Inventory every documented prime consumer, classify
|
|
8
|
+
every field proposed for omission as removable, conditional, or
|
|
9
|
+
transition-required, and record the approved public-output policy that Tasks 2
|
|
10
|
+
through 4 must satisfy. This file is the consumer-facing contract boundary; it
|
|
11
|
+
does not consolidate the emitted field authority (Task 2) and does not define
|
|
12
|
+
byte budgets (json_output_surface_manifest.yaml owns those).
|
|
13
|
+
exclusions:
|
|
14
|
+
- Structured attention records (attention stays delimiter-encoded string[]).
|
|
15
|
+
- Stable artifact identities and reference-based routing.
|
|
16
|
+
- New summary-versus-diagnostic projection modes.
|
|
17
|
+
- Compiled or cached capability instructions.
|
|
18
|
+
|
|
19
|
+
# ---------------------------------------------------------------------------
|
|
20
|
+
# Consumer inventory. Each consumer names its startup command and the concrete
|
|
21
|
+
# fields it reads, with a file:line evidence pointer into the current tree.
|
|
22
|
+
# Tasks 2-4 MUST keep every consumed field resolvable from a declared surface.
|
|
23
|
+
# ---------------------------------------------------------------------------
|
|
24
|
+
consumers:
|
|
25
|
+
- id: status_dashboard_renderer
|
|
26
|
+
startup_command: agentera prime --context status --format json
|
|
27
|
+
evidence: skills/agentera/SKILL.md:83
|
|
28
|
+
dashboard_evidence: packages/cli/src/capabilities/status/instructions.ts
|
|
29
|
+
state_evidence: packages/cli/src/cli/commands/prime/orientationOutput.ts:209
|
|
30
|
+
consumed_fields:
|
|
31
|
+
- capability_context.instructions
|
|
32
|
+
- capability_context.context.status_context.health
|
|
33
|
+
- capability_context.context.status_context.todo
|
|
34
|
+
- capability_context.context.status_context.plan
|
|
35
|
+
- capability_context.context.status_context.objective
|
|
36
|
+
- capability_context.context.status_context.profile
|
|
37
|
+
- capability_context.context.status_context.next_action
|
|
38
|
+
- capability_context.context.status_context.attention
|
|
39
|
+
- capability_context.context.status_context.state_presence
|
|
40
|
+
- capability_context.context.status_context.source_contract.capability_startup
|
|
41
|
+
- capability_context.context.status_context.source_contract.empty_state
|
|
42
|
+
notes: >-
|
|
43
|
+
Bare `/agentera` and status orientation run one status-context call.
|
|
44
|
+
Deterministic routing resolves bare, direct, and curated phrase requests;
|
|
45
|
+
every other request requires a validated semantic receipt before the
|
|
46
|
+
selected capability context starts. The status response contains the full
|
|
47
|
+
`capability_context.instructions` body and bounded
|
|
48
|
+
`capability_context.context.status_context`; omitted rich detail recovers
|
|
49
|
+
through its named command, never by raw artifact read.
|
|
50
|
+
- id: capability_context_dispatcher
|
|
51
|
+
startup_command: agentera prime --context <capability> --format json
|
|
52
|
+
evidence: packages/cli/src/cli/capabilityContext/startup.ts:264
|
|
53
|
+
skill_evidence: skills/agentera/SKILL.md:77-96
|
|
54
|
+
consumed_fields:
|
|
55
|
+
- command
|
|
56
|
+
- status
|
|
57
|
+
- capability_context
|
|
58
|
+
- capability_context.instructions
|
|
59
|
+
notes: >-
|
|
60
|
+
Per-capability startup capsule. The CLI emits
|
|
61
|
+
`capability_context.instructions` (the capability's instructions module),
|
|
62
|
+
not `prose`; the shared skill consumes that field directly. This consumer
|
|
63
|
+
governs the `--context`
|
|
64
|
+
surface, not the bare briefing; the bounded decision brief (Task 3) must
|
|
65
|
+
not break the `--context` capsule. Executable fixture proves the emitted
|
|
66
|
+
payload contains `capability_context.instructions` and NOT `prose`.
|
|
67
|
+
- id: packaging_distribution_gate
|
|
68
|
+
startup_command: agentera prime --format json
|
|
69
|
+
evidence: packages/cli/test/packaging/packageVerification.test.ts
|
|
70
|
+
consumed_fields:
|
|
71
|
+
- command
|
|
72
|
+
- status
|
|
73
|
+
- app_home
|
|
74
|
+
- app_home.source
|
|
75
|
+
notes: >-
|
|
76
|
+
Distribution-boundary consumer. The one extracted-package conjunction
|
|
77
|
+
asserts `command: "prime"`, `status: "ok"`, and that `app_home.source`
|
|
78
|
+
reflects resolution after the packed upgrade path. Tasks 2-4 must keep
|
|
79
|
+
the published prime JSON shape stable so fresh-cache npx gates keep
|
|
80
|
+
passing. Not a dashboard consumer; does not read state families.
|
|
81
|
+
- id: json_output_surface_manifest
|
|
82
|
+
startup_command: agentera prime [ --dashboard | --context <capability> ] --format json
|
|
83
|
+
evidence: scripts/json_output_surface_manifest.yaml:47-161
|
|
84
|
+
consumed_fields: declared_surfaces
|
|
85
|
+
notes: >-
|
|
86
|
+
Measurement/budget authority, not a runtime consumer. Declares five prime
|
|
87
|
+
surfaces: prime-dashboard, prime-status-context, prime-briefing,
|
|
88
|
+
prime-fields-sparse, and prime-capability-context. The capability surface expands over the current
|
|
89
|
+
English CAPABILITY_NAMES set; generic capsules use the 55000-byte ceiling,
|
|
90
|
+
while status uses its dedicated 25000-byte one-call budget. It owns the
|
|
91
|
+
byte/token budgets; Task 3 (<=12000) and Task 4 (<=25000) budgets are
|
|
92
|
+
reconciled against it.
|
|
93
|
+
- id: vocabulary_capability_context_guide
|
|
94
|
+
startup_command: agentera prime --context <capability> --format json
|
|
95
|
+
evidence: references/cli/vocabulary.md:90-113
|
|
96
|
+
consumed_fields:
|
|
97
|
+
- capability_context
|
|
98
|
+
- capability_context.instructions
|
|
99
|
+
notes: >-
|
|
100
|
+
Documentation consumer, not a runtime consumer: the vocabulary guide
|
|
101
|
+
tells capability consumers how to read the startup capsule. Reconciled
|
|
102
|
+
from the retired `prose` field to the v3 `capability_context.instructions`
|
|
103
|
+
field after the second Task 1 evaluation found this guidance was the one
|
|
104
|
+
remaining live consumer contradiction. Runtime authority
|
|
105
|
+
(capabilityContext/startup.ts:264) and SKILL.md (lines 112-114) both use
|
|
106
|
+
`capability_context.instructions`. The
|
|
107
|
+
`documentation_drift` guard below prevents this guidance from drifting
|
|
108
|
+
back to `prose`; it does not execute a prime command.
|
|
109
|
+
|
|
110
|
+
# ---------------------------------------------------------------------------
|
|
111
|
+
# Field-authority reconciliation. The four lists that described the prime field
|
|
112
|
+
# surface used to disagree (Task 1 documented the drift). Task 2 reconciled them
|
|
113
|
+
# to one authority: PRIME_STRUCTURED_FIELDS in packages/cli/src/cli/stateQuery.ts
|
|
114
|
+
# (public_output_policy.canonical_field_set). Each list below now derives from
|
|
115
|
+
# that authority, so schema discovery, the emitted JSON source_contract.fields,
|
|
116
|
+
# the text-mode fields line, and the agent-ready-state contract advertise the
|
|
117
|
+
# same canonical 27-field set. The `issues` deprecated transition field preserves
|
|
118
|
+
# the four legacy severity counts (`critical`, `degraded`, `normal`, `annoying`)
|
|
119
|
+
# with a stderr deprecation warning, but intentionally excludes canonical
|
|
120
|
+
# `todo.detail` so bounded detail is serialized once. It remains until the 3.0.0
|
|
121
|
+
# stable cut and is excluded from the canonical advertised
|
|
122
|
+
# `source_contract.fields` set (`todo` is canonical). It is NOT selector-only: it
|
|
123
|
+
# ships in the default bare briefing as bounded CLI transition compatibility.
|
|
124
|
+
# ---------------------------------------------------------------------------
|
|
125
|
+
field_authorities:
|
|
126
|
+
- id: orientation_output_emission
|
|
127
|
+
location: packages/cli/src/cli/commands/prime/orientationOutput.ts
|
|
128
|
+
authority: packages/cli/src/cli/stateQuery.ts:PRIME_STRUCTURED_FIELDS
|
|
129
|
+
field_count: 27
|
|
130
|
+
role: actual_emission_authority
|
|
131
|
+
notes: >-
|
|
132
|
+
Emits PRIME_STRUCTURED_FIELDS as source_contract.fields; the keys actually
|
|
133
|
+
serialized by buildOrientationJsonPayload. `issues` emits only `todo`'s
|
|
134
|
+
four legacy severity counts with a stderr warning; canonical `todo.detail`
|
|
135
|
+
is not duplicated. `issues` is not a member of the canonical set.
|
|
136
|
+
- id: schema_advertised
|
|
137
|
+
location: packages/cli/src/cli/commands/schema.ts
|
|
138
|
+
authority: packages/cli/src/cli/stateQuery.ts:PRIME_STRUCTURED_FIELDS
|
|
139
|
+
field_count: 27
|
|
140
|
+
role: schema_discovery
|
|
141
|
+
notes: >-
|
|
142
|
+
Reconciled by Task 2: availableStructuredFields for the prime selector
|
|
143
|
+
advertises PRIME_STRUCTURED_FIELDS plus the context-only capability_context
|
|
144
|
+
pointer (28 declared); fields_by_command.status advertises the 27-field
|
|
145
|
+
set. Previously drifted (missing project_integration and history).
|
|
146
|
+
- id: text_briefing_hardcoded
|
|
147
|
+
location: packages/cli/src/cli/commands/prime/orientationOutput.ts
|
|
148
|
+
authority: packages/cli/src/cli/stateQuery.ts:PRIME_STRUCTURED_FIELDS
|
|
149
|
+
field_count: 27
|
|
150
|
+
role: text_briefing
|
|
151
|
+
notes: >-
|
|
152
|
+
Reconciled by Task 2: the text-mode source_contract fields line is now
|
|
153
|
+
derived from PRIME_STRUCTURED_FIELDS.join so text and JSON advertise one
|
|
154
|
+
canonical representation. Previously hardcoded a 21-field subset.
|
|
155
|
+
- id: agent_ready_state_contract
|
|
156
|
+
location: references/cli/agent-ready-state-contract.yaml
|
|
157
|
+
authority: packages/cli/src/cli/stateQuery.ts:PRIME_STRUCTURED_FIELDS
|
|
158
|
+
field_count: 27
|
|
159
|
+
role: documented_consumer_contract
|
|
160
|
+
notes: >-
|
|
161
|
+
Reconciled by Task 2: both hej.fields lists now mirror the canonical
|
|
162
|
+
27-field set (retired `bundle` dropped; app, app_home, project_integration,
|
|
163
|
+
shared_skill, project_integration, and history added).
|
|
164
|
+
|
|
165
|
+
# ---------------------------------------------------------------------------
|
|
166
|
+
# Field classification. Every field proposed for omission is classified with a
|
|
167
|
+
# rationale and the task that consumes the decision.
|
|
168
|
+
# required: always present in bare prime; consumers depend on it.
|
|
169
|
+
# conditional: default-only; Task 2 may omit when in default state, preserving
|
|
170
|
+
# missing-vs-empty semantics and named-command recovery.
|
|
171
|
+
# diagnostic: lifecycle/history detail; omitted from default startup unless
|
|
172
|
+
# status declares it necessary (Task 4 decision).
|
|
173
|
+
# deprecated_transition: emitted alias; removable at the 3.0.0 stable cut only.
|
|
174
|
+
# retired: not emitted; a consumer depending on it must fail visibly.
|
|
175
|
+
# ---------------------------------------------------------------------------
|
|
176
|
+
field_classification:
|
|
177
|
+
- field: command
|
|
178
|
+
status: required
|
|
179
|
+
rationale: REQUIRED_SPARSE_CONTEXT_FIELDS; emitted on every structured payload.
|
|
180
|
+
- field: status
|
|
181
|
+
status: required
|
|
182
|
+
rationale: REQUIRED_SPARSE_CONTEXT_FIELDS; every consumer gates on status=ok.
|
|
183
|
+
- field: app_home
|
|
184
|
+
status: required
|
|
185
|
+
rationale: Install/v1/profile safety; status text briefing prints app_home.
|
|
186
|
+
- field: app
|
|
187
|
+
status: required
|
|
188
|
+
rationale: publicDoctorStatus projection; app/v1/profile safety per source_contract.access.
|
|
189
|
+
- field: mode
|
|
190
|
+
status: required
|
|
191
|
+
rationale: Fresh-vs-returning routing; opencode and status consumers read it.
|
|
192
|
+
- field: profile
|
|
193
|
+
status: required
|
|
194
|
+
rationale: opencode reads profile.status; status dashboard glyph.
|
|
195
|
+
- field: v1_migration
|
|
196
|
+
status: conditional
|
|
197
|
+
rationale: >-
|
|
198
|
+
Default-only when detected=false. No documented consumer reads it in the
|
|
199
|
+
default startup path. Task 2 omits it from the default bare briefing when
|
|
200
|
+
not detected (see default_emission_omission_contract); recovery via
|
|
201
|
+
`agentera upgrade --dry-run`.
|
|
202
|
+
- field: health
|
|
203
|
+
status: required
|
|
204
|
+
rationale: opencode reads grade/trajectory; status dashboard glyph.
|
|
205
|
+
- field: todo
|
|
206
|
+
status: required
|
|
207
|
+
rationale: Status dashboard glyph; canonical replacement for the issues alias.
|
|
208
|
+
- field: plan
|
|
209
|
+
status: required
|
|
210
|
+
rationale: opencode reads exists/status/title/first_pending; status dashboard glyph.
|
|
211
|
+
- field: docs
|
|
212
|
+
status: conditional
|
|
213
|
+
rationale: >-
|
|
214
|
+
Default-only when no docs state. Task 2 omits it from the default bare
|
|
215
|
+
briefing when docs.exists is false (see default_emission_omission_contract);
|
|
216
|
+
recovery via `agentera state docs list --format json`.
|
|
217
|
+
- field: progress
|
|
218
|
+
status: required
|
|
219
|
+
rationale: opencode reads progress.latest; status brief references shipped work.
|
|
220
|
+
- field: objective
|
|
221
|
+
status: conditional
|
|
222
|
+
rationale: >-
|
|
223
|
+
Default-only when none active. Task 2 omits it from the default bare
|
|
224
|
+
briefing when objective.active is false (see
|
|
225
|
+
default_emission_omission_contract); status derives "none active" from
|
|
226
|
+
state_presence.active.objective. Recovery via
|
|
227
|
+
`agentera state objective list --format json`.
|
|
228
|
+
- field: state_presence
|
|
229
|
+
status: required
|
|
230
|
+
rationale: Owns missing-versus-empty semantics; must not be omitted.
|
|
231
|
+
- field: project_integration
|
|
232
|
+
status: required
|
|
233
|
+
rationale: >-
|
|
234
|
+
Status routing consumes the app and project-state recommendation; the
|
|
235
|
+
bounded brief retains that routing projection even when no upgrade
|
|
236
|
+
recommendation is active.
|
|
237
|
+
- field: attention
|
|
238
|
+
status: required
|
|
239
|
+
rationale: >-
|
|
240
|
+
Bounded; opencode and status dashboard consume it. Valid current glossary
|
|
241
|
+
caveats add at most one generic review item through the glossary authority's
|
|
242
|
+
declared prime projection. When current, its one reserved final slot leaves
|
|
243
|
+
the first five unrelated items in their existing order under the six-item
|
|
244
|
+
public cap; lifecycle identity and private semantics remain internal, and
|
|
245
|
+
next_action is unchanged.
|
|
246
|
+
- field: history
|
|
247
|
+
status: diagnostic
|
|
248
|
+
rationale: >-
|
|
249
|
+
Startup history. The bounded brief retains counts and named retrieval
|
|
250
|
+
pointers while omitting entry detail; explicit state list/get commands
|
|
251
|
+
recover the current history.
|
|
252
|
+
- field: shared_skill
|
|
253
|
+
status: required
|
|
254
|
+
rationale: >-
|
|
255
|
+
Canonical shared-skill status and read-only diagnosis. Bare prime omits
|
|
256
|
+
the privacy-sensitive absolute path; doctor or an explicit shared_skill
|
|
257
|
+
field read recovers full path diagnostics.
|
|
258
|
+
- field: decision_attention
|
|
259
|
+
status: conditional
|
|
260
|
+
rationale: Null unless returned decisions require satisfaction review.
|
|
261
|
+
- field: next_action
|
|
262
|
+
status: required
|
|
263
|
+
rationale: opencode and status routing; SKILL.md bare /agentera route follows it.
|
|
264
|
+
- field: orchestration_context
|
|
265
|
+
status: conditional
|
|
266
|
+
rationale: >-
|
|
267
|
+
Always null in bare prime; meaningful only in --context orchestrate. Task 2
|
|
268
|
+
may omit null bespoke contexts from the bare briefing without breaking
|
|
269
|
+
documented consumers.
|
|
270
|
+
- field: closeout_context
|
|
271
|
+
status: conditional
|
|
272
|
+
rationale: Always null in bare prime; meaningful only in --context document.
|
|
273
|
+
- field: evidence_context
|
|
274
|
+
status: conditional
|
|
275
|
+
rationale: Always null in bare prime; meaningful only in --context audit.
|
|
276
|
+
- field: benchmark_context
|
|
277
|
+
status: conditional
|
|
278
|
+
rationale: Always null in bare prime; meaningful only in --context optimize.
|
|
279
|
+
- field: execution_context
|
|
280
|
+
status: conditional
|
|
281
|
+
rationale: Always null in bare prime; meaningful only in --context build.
|
|
282
|
+
- field: source
|
|
283
|
+
status: required
|
|
284
|
+
rationale: Provenance; artifacts_present drives fresh-vs-returning dashboard.
|
|
285
|
+
- field: source_contract
|
|
286
|
+
status: required
|
|
287
|
+
rationale: Declares fields, capability_startup, capability_context, artifact_writes.
|
|
288
|
+
- field: capability_context
|
|
289
|
+
status: conditional
|
|
290
|
+
rationale: >-
|
|
291
|
+
Declared available on the `prime` selector but emitted only by the
|
|
292
|
+
`--context <capability>` surface (buildPrimeCapabilityContextPayload),
|
|
293
|
+
NOT by the default bare briefing. The bare briefing instead carries a
|
|
294
|
+
`source_contract.capability_context` pointer with a `fetch_command`. The
|
|
295
|
+
capability_context_dispatcher consumer depends on it. Required when
|
|
296
|
+
present; its nested `instructions` field is the capability's startup
|
|
297
|
+
instructions module (runtime authority: capabilityContext/startup.ts:250).
|
|
298
|
+
Task 2 may keep it off the bare default; Tasks 3-4 must not break the
|
|
299
|
+
`--context` capsule that emits it.
|
|
300
|
+
- field: issues
|
|
301
|
+
status: deprecated_transition
|
|
302
|
+
rationale: >-
|
|
303
|
+
Deprecated count-only compatibility projection of `todo`. It preserves
|
|
304
|
+
critical, degraded, normal, and annoying for legacy consumers while
|
|
305
|
+
excluding canonical `todo.detail` to prevent startup payload duplication.
|
|
306
|
+
No current consumer in this inventory reads it; the projection remains
|
|
307
|
+
until its owning contract removes it.
|
|
308
|
+
- field: bundle
|
|
309
|
+
status: retired
|
|
310
|
+
rationale: >-
|
|
311
|
+
v2-era field renamed to `app`/`app_home` in v3. agent-ready-state-contract
|
|
312
|
+
still documents it (drift); it is not emitted. A consumer depending on it
|
|
313
|
+
must fail visibly (see fail fixtures).
|
|
314
|
+
|
|
315
|
+
# ---------------------------------------------------------------------------
|
|
316
|
+
# Approved public-output policy for Tasks 2-4. Unambiguous so each later task
|
|
317
|
+
# can make emission decisions without re-litigating compatibility.
|
|
318
|
+
# ---------------------------------------------------------------------------
|
|
319
|
+
public_output_policy:
|
|
320
|
+
canonical_field_set: >-
|
|
321
|
+
The emitted STATUS_STRUCTURED_FIELDS (27) is the single consumer-facing
|
|
322
|
+
authority for the bare prime briefing. Task 2 reconciles schema.ts, the text
|
|
323
|
+
briefing hardcoded list, and agent-ready-state-contract.yaml hej.fields to
|
|
324
|
+
this set, removing the four-way drift documented above.
|
|
325
|
+
deprecated_alias_rule:
|
|
326
|
+
field: issues
|
|
327
|
+
status: retained_until_3_0_0_stable_cut
|
|
328
|
+
retained_fields:
|
|
329
|
+
- critical
|
|
330
|
+
- degraded
|
|
331
|
+
- normal
|
|
332
|
+
- annoying
|
|
333
|
+
excluded_fields:
|
|
334
|
+
- detail
|
|
335
|
+
rationale: >-
|
|
336
|
+
`issues` preserves the four legacy severity counts with a stderr
|
|
337
|
+
deprecation warning. Canonical bounded detail belongs only to `todo.detail`
|
|
338
|
+
and is intentionally excluded to prevent duplicate startup payload. No
|
|
339
|
+
task in this plan may remove the compatibility projection before the cut.
|
|
340
|
+
default_only_omission_rule: >-
|
|
341
|
+
Fields classified conditional or diagnostic may be omitted by Task 2 when
|
|
342
|
+
they are in their default/empty state, provided missing-versus-empty
|
|
343
|
+
semantics stay distinguishable and a named authoritative command returns the
|
|
344
|
+
current detail (`agentera state <artifact>`, `agentera schema`,
|
|
345
|
+
`agentera upgrade --dry-run`). Null bespoke contexts
|
|
346
|
+
(orchestration/closeout/evidence/benchmark/execution) may be omitted from
|
|
347
|
+
the bare briefing; they remain declared on the `--context` surface.
|
|
348
|
+
bounded_brief_rule: >-
|
|
349
|
+
Task 3 produces a bounded default decision brief (<=12000 bytes pretty
|
|
350
|
+
UTF-8 JSON + trailing newline; diagnostics on stderr) that retains every
|
|
351
|
+
required field plus any active conditional field, and never collapses
|
|
352
|
+
missing versus present-but-empty.
|
|
353
|
+
self_contained_status_rule: >-
|
|
354
|
+
Task 4 folds the bounded state into one `agentera prime --context status
|
|
355
|
+
--format json` response (<=25000 bytes) so the status dashboard needs no
|
|
356
|
+
separate bare-prime call or raw artifact read. The `--context` capsule
|
|
357
|
+
contract (command/status/capability_context) is unchanged, including
|
|
358
|
+
contract-owned state declarations, inventory, included/missing families,
|
|
359
|
+
schema diagnostics, and first-invocation reads. The status capsule assembles
|
|
360
|
+
and measures that fixed envelope first, then bounds
|
|
361
|
+
`capability_context.context.status_context` to the remaining complete-capsule
|
|
362
|
+
budget. If a projection leaves the complete envelope over budget, the next
|
|
363
|
+
allowance is set one byte below that projection's actual serialized size,
|
|
364
|
+
forcing a strictly smaller bounded form; projection continues monotonically
|
|
365
|
+
until the capsule fits or the routing-preserving irreducible form fails
|
|
366
|
+
explicitly. The status-specific degraded envelope retains TODO
|
|
367
|
+
aggregate/detail recovery, attention, and next_action rather than collapsing
|
|
368
|
+
to non-routing metadata. App/project integration and shared-skill diagnosis
|
|
369
|
+
remain available through the bounded status state while unrelated rich
|
|
370
|
+
copies are omitted.
|
|
371
|
+
status_context_contract:
|
|
372
|
+
startup_command: agentera prime --context status --format json
|
|
373
|
+
state_path: capability_context.context.status_context
|
|
374
|
+
instructions_path: capability_context.instructions
|
|
375
|
+
max_utf8_bytes: 25000
|
|
376
|
+
measurement: Buffer.byteLength(JSON.stringify(payload, null, 2) + "\n", "utf8")
|
|
377
|
+
budget_allocation: >-
|
|
378
|
+
Assemble contract-owned capability metadata, instructions, and context
|
|
379
|
+
keys and measure the complete envelope. The nested status projection keeps
|
|
380
|
+
source_contract.capability_startup and source_contract.empty_state, and
|
|
381
|
+
omits bare-prime source inventory metadata that the dashboard does not
|
|
382
|
+
consume. When the envelope is over budget, set the next status_context
|
|
383
|
+
allowance one byte below the current nested projection's measured
|
|
384
|
+
serialized size. Every accepted retry is therefore strictly smaller;
|
|
385
|
+
terminate only with a <=25000-byte capsule or explicit irreducible
|
|
386
|
+
routing-envelope failure.
|
|
387
|
+
required_capability_metadata:
|
|
388
|
+
- capability_context.state.declared_read_needs
|
|
389
|
+
- capability_context.state.declared_write_targets
|
|
390
|
+
- capability_context.state.artifact_inventory
|
|
391
|
+
- capability_context.state.included
|
|
392
|
+
- capability_context.state.schema_error
|
|
393
|
+
- capability_context.context.first_invocation_read
|
|
394
|
+
- capability_context.context.schema_error
|
|
395
|
+
required_state:
|
|
396
|
+
- health
|
|
397
|
+
- todo
|
|
398
|
+
- plan
|
|
399
|
+
- profile
|
|
400
|
+
- next_action
|
|
401
|
+
- attention
|
|
402
|
+
- state_presence
|
|
403
|
+
- source_contract
|
|
404
|
+
budget_fallback_retains:
|
|
405
|
+
- todo
|
|
406
|
+
- attention
|
|
407
|
+
- next_action
|
|
408
|
+
omitted_detail_recovery: capability_context.context.status_context.brief.omitted_rich_state
|
|
409
|
+
raw_artifact_reads_required: false
|
|
410
|
+
fail_visible_rule: >-
|
|
411
|
+
Undeclared or retired field dependencies must fail visibly: selecting an
|
|
412
|
+
undeclared field via `--fields` returns nonzero exit code 1 and a correction
|
|
413
|
+
listing the declared available fields. Tasks 2-4 must preserve this
|
|
414
|
+
contract after any field-set change.
|
|
415
|
+
|
|
416
|
+
# ---------------------------------------------------------------------------
|
|
417
|
+
# Default-emission conditional omission contract. Advertised selectable fields
|
|
418
|
+
# (declared_available_fields / PRIME_STRUCTURED_FIELDS) may be broader than the
|
|
419
|
+
# keys present in a given bare prime response: the declaration is the union of
|
|
420
|
+
# fields a consumer may select, not a promise that every one is emitted on every
|
|
421
|
+
# call. The following conditional top-level fields are OMITTED from the default
|
|
422
|
+
# bare briefing when they carry only default/inactive payload so startup does not
|
|
423
|
+
# carry adjective noise. Their omission is unambiguous because (a) the field
|
|
424
|
+
# stays declared in source_contract.fields as a selectable surface, (b)
|
|
425
|
+
# state_presence carries the missing-vs-empty signal for the artifact families
|
|
426
|
+
# it owns, and (c) a named authoritative command returns the live detail.
|
|
427
|
+
# Required consumers and missing-vs-empty semantics are preserved: explicit
|
|
428
|
+
# `--fields <name>` selection and the `--context` capsule keep the full payload,
|
|
429
|
+
# so a consumer recovering an omitted field is never confused by its absence.
|
|
430
|
+
# The emitted `issues` deprecated transition alias is NOT conditional: it ships
|
|
431
|
+
# by default (excluded only from the canonical advertised set) until the stable
|
|
432
|
+
# cut; see deprecated_alias_rule.
|
|
433
|
+
# ---------------------------------------------------------------------------
|
|
434
|
+
default_emission_omission_contract:
|
|
435
|
+
implemented_by: packages/cli/src/cli/commands/prime/orientationOutput.ts:omitInactiveConditionalDefaults
|
|
436
|
+
applies_to: default bare prime (requested fields empty)
|
|
437
|
+
does_not_apply_to: explicit `--fields <name>` selection; `--context <capability>` capsule
|
|
438
|
+
omitted_when_default:
|
|
439
|
+
- field: v1_migration
|
|
440
|
+
omitted_when: v1_migration.detected !== true
|
|
441
|
+
recovery_command: agentera upgrade --dry-run
|
|
442
|
+
disambiguated_by: >-
|
|
443
|
+
source_contract.fields declares v1_migration as a selectable field; the
|
|
444
|
+
named recovery command returns the live migration preview. state_presence
|
|
445
|
+
does not carry v1_migration (it is not an artifact family); the field is
|
|
446
|
+
the sole v1 signal.
|
|
447
|
+
- field: docs
|
|
448
|
+
omitted_when: docs.exists !== true
|
|
449
|
+
recovery_command: agentera state docs list --format json
|
|
450
|
+
disambiguated_by: >-
|
|
451
|
+
state_presence.available.docs and state_presence.absence.docs carry the
|
|
452
|
+
missing-vs-empty signal for the docs artifact family.
|
|
453
|
+
- field: objective
|
|
454
|
+
omitted_when: objective.active !== true
|
|
455
|
+
recovery_command: agentera state objective list --format json
|
|
456
|
+
disambiguated_by: >-
|
|
457
|
+
state_presence.active.objective is false; status derives "none active"
|
|
458
|
+
from state_presence rather than from an emitted default-only objective
|
|
459
|
+
blob.
|
|
460
|
+
never_omitted:
|
|
461
|
+
- state_presence
|
|
462
|
+
- next_action
|
|
463
|
+
- health
|
|
464
|
+
- todo
|
|
465
|
+
- plan
|
|
466
|
+
- progress
|
|
467
|
+
- profile
|
|
468
|
+
- source
|
|
469
|
+
- source_contract
|
|
470
|
+
- attention
|
|
471
|
+
|
|
472
|
+
# Task 3 bounded decision brief. The default bare emission projects the full
|
|
473
|
+
# orientation payload to a bounded decision brief (<=12000 bytes pretty UTF-8
|
|
474
|
+
# JSON + trailing newline; diagnostics on stderr). Every required top-level
|
|
475
|
+
# field stays PRESENT (compatibility_boundary test asserts the key set); only
|
|
476
|
+
# rich diagnostic/writer detail WITHIN those fields is projected to
|
|
477
|
+
# routing-essential leaves. Each projected sub-detail carries a named
|
|
478
|
+
# authoritative recovery command so an agent never needs raw artifact access.
|
|
479
|
+
# `--dashboard` (full fidelity, 35000-byte budget), `--fields <name>`, and the
|
|
480
|
+
# `--context` capsule are NOT projected and keep the full payload. The byte
|
|
481
|
+
# gate is deterministic pretty-JSON UTF-8 measurement; an over-budget brief is
|
|
482
|
+
# rejected in favor of a bounded degraded envelope (status ok, brief.status
|
|
483
|
+
# signals degraded). Every successful envelope keeps bounded plan selection,
|
|
484
|
+
# executable next_action, canonical history evidence, profile,
|
|
485
|
+
# state_presence, source_contract, and the byte-budget recovery.
|
|
486
|
+
brief_omission_contract:
|
|
487
|
+
implemented_by: packages/cli/src/cli/commands/prime/briefOrientation.ts:briefOrientationPayload
|
|
488
|
+
applies_to: default bare prime (no --fields, no --dashboard, no --context)
|
|
489
|
+
does_not_apply_to: "agentera prime --dashboard --format json; --fields <name>; --context <capability>"
|
|
490
|
+
budget_utf8_bytes: 12000
|
|
491
|
+
measurement: >-
|
|
492
|
+
Buffer.byteLength(JSON.stringify(brief, null, 2) + "\n", "utf8"); stdout
|
|
493
|
+
only; diagnostics measured separately on stderr.
|
|
494
|
+
retained_top_level_fields: >-
|
|
495
|
+
Every field in never_omitted plus command, status, app_home, app, mode,
|
|
496
|
+
history, shared_skill, project_integration, decision_attention, and
|
|
497
|
+
the bespoke context pointers (kept null on the bare surface). The
|
|
498
|
+
conditional v1_migration/docs/objective are retained when active (see
|
|
499
|
+
omitted_when_default). issues ships as the deprecated count-only
|
|
500
|
+
transition projection and excludes canonical todo.detail.
|
|
501
|
+
projected_subdetail:
|
|
502
|
+
- field: startup.path_diagnostics
|
|
503
|
+
reason: startup_path_diagnostics
|
|
504
|
+
recovery: agentera doctor --format json
|
|
505
|
+
- field: plan.tasks
|
|
506
|
+
reason: plan_task_detail
|
|
507
|
+
recovery: agentera state plan tasks list --format json
|
|
508
|
+
- field: plan.archived_plans
|
|
509
|
+
reason: archive_catalog
|
|
510
|
+
recovery: agentera state plan list --format json
|
|
511
|
+
- field: plan.diagnostics
|
|
512
|
+
reason: plan_diagnostics
|
|
513
|
+
recovery: agentera state plan list --format json
|
|
514
|
+
- field: history.progress.entries
|
|
515
|
+
reason: startup_history_entries
|
|
516
|
+
recovery: agentera state progress list --format json
|
|
517
|
+
- field: history.decisions.entries
|
|
518
|
+
reason: startup_history_entries
|
|
519
|
+
recovery: agentera state decisions list --format json
|
|
520
|
+
- field: history.health.entries
|
|
521
|
+
reason: startup_history_entries
|
|
522
|
+
recovery: agentera state health list --format json
|
|
523
|
+
- field: project_integration.phases
|
|
524
|
+
reason: phase_blockers
|
|
525
|
+
recovery: agentera doctor --format json
|
|
526
|
+
- field: source_contract.artifact_writes.artifacts
|
|
527
|
+
reason: writer_contract_detail
|
|
528
|
+
recovery: agentera schema --format json
|
|
529
|
+
- field: source_contract.capability_startup.available_state
|
|
530
|
+
reason: startup_available_state_listing
|
|
531
|
+
recovery: agentera schema --format json
|
|
532
|
+
- field: profile.bounded_signals
|
|
533
|
+
reason: profile_signal_detail
|
|
534
|
+
recovery: agentera profile --format json
|
|
535
|
+
history_projection:
|
|
536
|
+
count_fields: [total, returned, remaining, full, summary]
|
|
537
|
+
degraded_fields: [caveats, degraded_history]
|
|
538
|
+
provenance_fields: [source_contract]
|
|
539
|
+
recovery_fields: [retrieval.list, retrieval.get]
|
|
540
|
+
semantics: >-
|
|
541
|
+
Progress, decisions, and health retain canonical entity-history counts.
|
|
542
|
+
A degraded or compacted history retains bounded caveats, explicit
|
|
543
|
+
summary-only counts, source-contract provenance, and exact list/get
|
|
544
|
+
pointers. It never reconstructs omitted records or infers decision
|
|
545
|
+
satisfaction; explicit firm, provisional, missing, compacted, and
|
|
546
|
+
review-needed evidence remains unchanged when present.
|
|
547
|
+
never_collapsed: >-
|
|
548
|
+
state_presence is projected to its finite contract-owned active, available,
|
|
549
|
+
any_active, absence_explained, and absence keys rather than copied verbatim;
|
|
550
|
+
known boolean values and absence reasons remain bounded, so missing versus
|
|
551
|
+
present-but-empty stays behaviorally distinguishable even for adversarial
|
|
552
|
+
caller objects. source_contract is likewise projected to bounded known
|
|
553
|
+
fields and named recovery pointers. Every successful normal or degraded
|
|
554
|
+
envelope keeps plan.first_pending identity, dependencies, acceptance, and
|
|
555
|
+
exact task get; next_action keeps its executable identity, capability,
|
|
556
|
+
phase, eligibility, and exact retrieval. Canonical history counts,
|
|
557
|
+
degraded caveats, and exact history recovery remain bounded consumer
|
|
558
|
+
evidence. Every bare-prime projection omits absolute app-home,
|
|
559
|
+
source-root, shared-skill, schema, and project path diagnostics while
|
|
560
|
+
retaining app/shared-skill status, stable source identity, truthful
|
|
561
|
+
presence, and doctor recovery. brief.path_diagnostics_recovery retains
|
|
562
|
+
that doctor command even when compact or irreducible metadata omits the
|
|
563
|
+
full recovery catalog. Normal and degraded projections retain bounded progress and
|
|
564
|
+
health signals; degraded projections also retain bounded TODO counts and
|
|
565
|
+
attention. Optional startup paths, plan task catalogs, and next-action
|
|
566
|
+
alternatives compact before selected routing or canonical history evidence.
|
|
567
|
+
fallback_behavior: >-
|
|
568
|
+
The detailed degraded envelope is byte-gated again after utf8_bytes is
|
|
569
|
+
settled. If it cannot fit, the recovery catalog, optional source-contract
|
|
570
|
+
detail, next-action alternatives, and free text compact proportionally
|
|
571
|
+
before selected plan, executable next_action, or canonical history
|
|
572
|
+
evidence. A compact and then irreducible finite routing envelope are tried
|
|
573
|
+
deterministically. If the configured budget cannot hold that routing
|
|
574
|
+
evidence, briefOrientationPayload fails explicitly rather than returning
|
|
575
|
+
exit zero without an executable task or emitting over-budget stdout.
|
|
576
|
+
|
|
577
|
+
# ---------------------------------------------------------------------------
|
|
578
|
+
# Fixtures used by packages/cli/test/cli/primeCompatibilityBoundary.test.ts.
|
|
579
|
+
# Pass fixtures are the documented consumers; their consumed_fields must be a
|
|
580
|
+
# subset of declared_available_fields. Fail fixtures depend on retired or
|
|
581
|
+
# undeclared fields and must fail visibly through the fail_visible_rule.
|
|
582
|
+
# ---------------------------------------------------------------------------
|
|
583
|
+
declared_available_fields:
|
|
584
|
+
- command
|
|
585
|
+
- status
|
|
586
|
+
- app_home
|
|
587
|
+
- app
|
|
588
|
+
- mode
|
|
589
|
+
- profile
|
|
590
|
+
- v1_migration
|
|
591
|
+
- health
|
|
592
|
+
- todo
|
|
593
|
+
- plan
|
|
594
|
+
- docs
|
|
595
|
+
- progress
|
|
596
|
+
- objective
|
|
597
|
+
- state_presence
|
|
598
|
+
- project_integration
|
|
599
|
+
- attention
|
|
600
|
+
- history
|
|
601
|
+
- shared_skill
|
|
602
|
+
- decision_attention
|
|
603
|
+
- next_action
|
|
604
|
+
- orchestration_context
|
|
605
|
+
- closeout_context
|
|
606
|
+
- evidence_context
|
|
607
|
+
- benchmark_context
|
|
608
|
+
- execution_context
|
|
609
|
+
- source
|
|
610
|
+
- source_contract
|
|
611
|
+
- capability_context
|
|
612
|
+
- issues
|
|
613
|
+
fixtures:
|
|
614
|
+
pass:
|
|
615
|
+
- consumer: status_dashboard_renderer
|
|
616
|
+
executable_command: agentera prime --context status --format json
|
|
617
|
+
depends_on:
|
|
618
|
+
- capability_context
|
|
619
|
+
nested_fields:
|
|
620
|
+
- capability_context.instructions
|
|
621
|
+
- capability_context.context.status_context.health
|
|
622
|
+
- capability_context.context.status_context.todo
|
|
623
|
+
- capability_context.context.status_context.plan
|
|
624
|
+
- capability_context.context.status_context.profile.status
|
|
625
|
+
- capability_context.context.status_context.next_action.object
|
|
626
|
+
- capability_context.context.status_context.attention
|
|
627
|
+
- capability_context.context.status_context.state_presence
|
|
628
|
+
- capability_context.context.status_context.source_contract
|
|
629
|
+
conditional_nested_fields:
|
|
630
|
+
# objective is a conditional top-level field (see
|
|
631
|
+
# default_emission_omission_contract): emitted when an objective is
|
|
632
|
+
# active, omitted (and rendered "none active") otherwise. The dashboard
|
|
633
|
+
# derives the active/none-active signal from state_presence, so it does
|
|
634
|
+
# not declare objective as an always-present dependency.
|
|
635
|
+
- path: capability_context.context.status_context.objective
|
|
636
|
+
present_when: capability_context.context.status_context.state_presence.active.objective
|
|
637
|
+
- consumer: capability_context_dispatcher
|
|
638
|
+
executable_command: agentera prime --context build --format json
|
|
639
|
+
depends_on:
|
|
640
|
+
- command
|
|
641
|
+
- status
|
|
642
|
+
- capability_context
|
|
643
|
+
nested_fields:
|
|
644
|
+
- capability_context.instructions
|
|
645
|
+
absent_fields:
|
|
646
|
+
- capability_context.prose
|
|
647
|
+
- consumer: packaging_distribution_gate
|
|
648
|
+
executable_command: agentera prime --format json
|
|
649
|
+
depends_on:
|
|
650
|
+
- command
|
|
651
|
+
- status
|
|
652
|
+
- app_home
|
|
653
|
+
nested_fields:
|
|
654
|
+
- app_home.source
|
|
655
|
+
asserts:
|
|
656
|
+
- path: command
|
|
657
|
+
equals: prime
|
|
658
|
+
- path: status
|
|
659
|
+
equals: ok
|
|
660
|
+
- consumer: bare_agentera_route
|
|
661
|
+
executable_command: agentera prime --format json
|
|
662
|
+
depends_on:
|
|
663
|
+
- next_action
|
|
664
|
+
- source_contract
|
|
665
|
+
nested_fields:
|
|
666
|
+
- source_contract.capability_context
|
|
667
|
+
- next_action.object
|
|
668
|
+
fail:
|
|
669
|
+
- consumer: v2_bundle_consumer
|
|
670
|
+
depends_on:
|
|
671
|
+
- bundle
|
|
672
|
+
executable_command: agentera prime --fields bundle --format json
|
|
673
|
+
rationale: >-
|
|
674
|
+
`bundle` was renamed to `app`/`app_home` in v3 and is not emitted.
|
|
675
|
+
Selecting it via `--fields bundle` must return exit code 1 with a
|
|
676
|
+
correction listing the declared available fields.
|
|
677
|
+
|
|
678
|
+
# ---------------------------------------------------------------------------
|
|
679
|
+
# Documentation drift guard. Active consumer guidance must not send consumers
|
|
680
|
+
# to the retired `prose` field; the runtime emits `instructions` only (see
|
|
681
|
+
# capability_context_dispatcher fixture for the executable proof). Each entry
|
|
682
|
+
# names a documentation file that governs the consumer field name; the test
|
|
683
|
+
# suite scans the live file so the documented field cannot drift back.
|
|
684
|
+
# ---------------------------------------------------------------------------
|
|
685
|
+
documentation_drift:
|
|
686
|
+
canonical_field: capability_context.instructions
|
|
687
|
+
retired_field: capability_context.prose
|
|
688
|
+
scanned_documents:
|
|
689
|
+
- id: vocabulary_capability_context_contract
|
|
690
|
+
path: references/cli/vocabulary.md
|
|
691
|
+
evidence: references/cli/vocabulary.md:90-113
|
|
692
|
+
governs: the `--context` capsule field capability consumers are told to read
|
|
693
|
+
must_contain: capability_context.instructions
|
|
694
|
+
must_not_contain: capability_context.prose
|
|
695
|
+
|
|
696
|
+
approval:
|
|
697
|
+
recorded_for_tasks: [2, 3, 4]
|
|
698
|
+
decision: >-
|
|
699
|
+
The compatibility boundary above is approved. Tasks 2-4 implement emission
|
|
700
|
+
changes within this policy without re-deriving consumer compatibility.
|
|
701
|
+
recorded_at: 2026-07-16
|