agentera 3.0.0-dev.5 → 3.0.0-dev.51
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 +119 -22
- package/bundle/CHANGELOG.md +1351 -0
- package/bundle/DESIGN.md +229 -0
- package/bundle/LICENSE +201 -0
- package/bundle/README.md +143 -0
- package/bundle/UPGRADE.md +236 -0
- package/bundle/extract-corpus-parity.json +21 -0
- package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
- package/bundle/references/adapters/package-publication.json +437 -0
- package/bundle/references/adapters/package-registry.yaml +435 -189
- package/bundle/references/adapters/package-surface-characterization.md +66 -35
- 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 +333 -0
- package/bundle/references/analysis/evidence-tier-authority.yaml +518 -0
- package/bundle/references/analysis/verification-policy.yaml +191 -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 +3022 -0
- package/bundle/references/artifacts/verbosity-budget-authority.yaml +42 -0
- package/bundle/references/cli/app-lifecycle-vocabulary.yaml +7 -8
- package/bundle/references/cli/capability-instruction-contract.yaml +11 -14
- package/bundle/references/cli/hybrid-route-contract.yaml +438 -0
- package/bundle/references/cli/routing-model.md +155 -0
- package/bundle/references/cli/trigger-schema-enrichment.md +147 -0
- package/bundle/references/cli/update-channels.yaml +19 -1
- package/bundle/references/cli/vocabulary-index.yaml +20 -17
- package/bundle/references/cli/vocabulary.md +326 -361
- package/bundle/references/meta/retained-reference-authority.yaml +151 -0
- package/bundle/registry.json +13 -13
- package/bundle/skills/agentera/SKILL.md +224 -422
- 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 +18 -18
- 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 +178 -34
- package/bundle/skills/agentera/protocol.yaml +31 -31
- 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 +39 -21
- 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 +458 -36
- package/bundle/skills/agentera/schemas/artifacts/progress.yaml +128 -17
- package/bundle/skills/agentera/schemas/artifacts/todo.yaml +342 -42
- package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
- package/dist/analytics/extractCorpus/cli.js +190 -0
- package/dist/analytics/extractCorpus/copilotSessions.js +275 -0
- package/dist/analytics/extractCorpus/core.js +392 -0
- package/dist/analytics/extractCorpus/corpus.js +167 -0
- package/dist/analytics/extractCorpus/coverageAudit.js +260 -0
- package/dist/analytics/extractCorpus/cursorSessions.js +425 -0
- package/dist/analytics/extractCorpus/evidenceTiers.js +603 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js +105 -0
- package/dist/analytics/extractCorpus/filesystemSources.js +118 -0
- package/dist/analytics/extractCorpus/index.js +14 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js +204 -0
- package/dist/analytics/extractCorpus/sqliteCaps.js +43 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js +367 -0
- package/dist/analytics/extractCorpus/tierReader.js +108 -0
- package/dist/analytics/extractCorpus.js +2 -1791
- package/dist/analytics/glossaryAdviceResolution.js +166 -0
- package/dist/analytics/glossaryInputAcquisition.js +319 -0
- package/dist/analytics/personalGlossaryAdmission.js +133 -0
- package/dist/analytics/personalGlossaryProfile.js +219 -0
- package/dist/analytics/profileSignals.js +211 -0
- package/dist/analytics/usageStats.js +169 -42
- package/dist/audit/terminologyDrift.js +281 -0
- package/dist/bin/agentera.js +3 -2
- package/dist/capabilities/audit/instructions.js +16 -0
- package/dist/capabilities/build/instructions.js +56 -0
- package/dist/capabilities/design/instructions.js +4 -0
- package/dist/capabilities/discuss/instructions.js +29 -0
- package/dist/capabilities/document/instructions.js +11 -0
- package/dist/capabilities/index.js +29 -27
- package/dist/capabilities/optimize/instructions.js +14 -0
- package/dist/capabilities/orchestrate/instructions.js +42 -0
- package/dist/capabilities/plan/instructions.js +33 -0
- package/dist/capabilities/profile/instructions.js +70 -0
- package/dist/capabilities/research/instructions.js +5 -0
- package/dist/capabilities/status/instructions.js +15 -0
- package/dist/capabilities/status/startupInstructions.js +34 -0
- package/dist/capabilities/vision/instructions.js +4 -0
- package/dist/cli/appContext.js +30 -24
- package/dist/cli/argvalidate.js +0 -1
- package/dist/cli/capabilityContext/benchmark.js +565 -0
- package/dist/cli/capabilityContext/bespoke.js +44 -0
- package/dist/cli/capabilityContext/build.js +242 -0
- package/dist/cli/capabilityContext/closeout.js +233 -0
- package/dist/cli/capabilityContext/contract.js +179 -0
- package/dist/cli/capabilityContext/evidence.js +463 -0
- package/dist/cli/capabilityContext/index.js +3 -0
- package/dist/cli/capabilityContext/orchestration.js +131 -0
- package/dist/cli/capabilityContext/planState.js +260 -0
- package/dist/cli/capabilityContext/progress.js +142 -0
- package/dist/cli/capabilityContext/projectVerification.js +409 -0
- package/dist/cli/capabilityContext/shared.js +83 -0
- package/dist/cli/capabilityContext/slim.js +152 -0
- package/dist/cli/capabilityContext/startup.js +150 -0
- package/dist/cli/capabilityContext/startupAggregation.js +68 -0
- package/dist/cli/capabilityContext/types.js +56 -0
- package/dist/cli/capabilityContext.js +1 -2487
- package/dist/cli/commands/appHome.js +22 -0
- package/dist/cli/commands/capability.js +4 -4
- package/dist/cli/commands/compact.js +164 -14
- package/dist/cli/commands/doctor.js +122 -97
- package/dist/cli/commands/durability.js +81 -0
- package/dist/cli/commands/glossaryAdvice.js +138 -0
- package/dist/cli/commands/lint.js +26 -44
- package/dist/cli/commands/personalGlossary.js +176 -0
- package/dist/cli/commands/prime/briefOrientation.js +747 -0
- package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
- package/dist/cli/commands/prime/bundleStatus.js +190 -0
- package/dist/cli/commands/prime/collectEntityOrientation.js +326 -0
- package/dist/cli/commands/prime/collectOrientationState.js +212 -0
- package/dist/cli/commands/prime/orientationOutput.js +399 -0
- package/dist/cli/commands/prime/types.js +1 -0
- package/dist/cli/commands/prime/v1Migration.js +38 -0
- package/dist/cli/commands/prime.js +80 -558
- package/dist/cli/commands/profileGrounding.js +55 -0
- package/dist/cli/commands/query.js +78 -53
- package/dist/cli/commands/report.js +96 -25
- package/dist/cli/commands/route.js +142 -0
- package/dist/cli/commands/schema.js +266 -143
- package/dist/cli/commands/state/decisions.js +387 -0
- package/dist/cli/commands/state/docs.js +70 -0
- package/dist/cli/commands/state/experimentRecords.js +151 -0
- package/dist/cli/commands/state/experiments.js +14 -0
- package/dist/cli/commands/state/get.js +129 -0
- package/dist/cli/commands/state/health.js +14 -0
- package/dist/cli/commands/state/index.js +16 -0
- package/dist/cli/commands/state/list.js +194 -0
- package/dist/cli/commands/state/objective.js +25 -0
- package/dist/cli/commands/state/plan.js +14 -0
- package/dist/cli/commands/state/planTasks.js +154 -0
- package/dist/cli/commands/state/plans.js +154 -0
- package/dist/cli/commands/state/progress.js +13 -0
- package/dist/cli/commands/state/shared.js +14 -0
- package/dist/cli/commands/state/todo.js +42 -0
- package/dist/cli/commands/state/write.js +430 -0
- package/dist/cli/commands/upgrade.js +146 -5
- package/dist/cli/commands/upgradeVerify.js +118 -0
- package/dist/cli/commands/validate.js +272 -223
- package/dist/cli/commands/verify.js +24 -9
- package/dist/cli/contracts/bundleStatus.js +1 -0
- package/dist/cli/contracts/orientationState.js +1 -0
- package/dist/cli/dispatch/argvParser.js +32 -0
- package/dist/cli/dispatch/check.js +372 -0
- package/dist/cli/dispatch/commands.js +27 -0
- package/dist/cli/dispatch/index.js +207 -0
- package/dist/cli/dispatch/lifecycle.js +652 -0
- package/dist/cli/dispatch/prime.js +139 -0
- package/dist/cli/dispatch/projections.js +17 -0
- package/dist/cli/dispatch/shared.js +63 -0
- package/dist/cli/dispatch/state.js +140 -0
- package/dist/cli/dispatch.js +1 -1294
- package/dist/cli/errors.js +16 -17
- package/dist/cli/help.js +394 -43
- package/dist/cli/migrationRequired.js +87 -0
- package/dist/cli/orientation/attention.js +61 -0
- package/dist/cli/orientation/corpusCoverage.js +102 -0
- package/dist/cli/orientation.js +438 -170
- package/dist/cli/planArtifacts.js +350 -0
- package/dist/cli/planEvidence.js +157 -0
- package/dist/cli/planLifecycleState.js +36 -0
- package/dist/cli/planTaskIndex.js +11 -0
- package/dist/cli/preCutoverCommand.js +32 -0
- package/dist/cli/prime-blob.js +71 -3
- package/dist/cli/profileAcquisition.js +167 -0
- package/dist/cli/startupCompletenessContract.js +59 -0
- package/dist/cli/stateQuery.js +56 -14
- package/dist/cli/structured.js +0 -1
- package/dist/cli/todoMarkdown.js +25 -12
- package/dist/cli/todoReadinessSelection.js +192 -0
- package/dist/cli/todoSeverity.js +18 -0
- package/dist/core/atomicWriter.js +20 -0
- package/dist/core/developmentChannel.js +1 -0
- package/dist/core/developmentInvocation.js +374 -0
- package/dist/core/difflib.js +0 -1
- package/dist/core/envPaths.js +20 -0
- package/dist/core/jsonValue.js +5 -0
- package/dist/core/paths.js +0 -1
- package/dist/core/pyjson.js +67 -3
- package/dist/core/shell.js +4 -0
- package/dist/core/skillIdentity.js +23 -0
- package/dist/core/sourceRoot.js +9 -12
- package/dist/core/text.js +10 -0
- package/dist/core/toml.js +0 -1
- package/dist/core/yaml.js +8 -1
- package/dist/eval/evalSkills.js +30 -26
- package/dist/eval/hybridRouteEvaluation.js +155 -0
- package/dist/eval/semanticEval.js +43 -20
- package/dist/eval/semanticFixtures.js +16 -5
- package/dist/hooks/common.js +11 -79
- package/dist/hooks/compaction/apply.js +446 -0
- package/dist/hooks/compaction/dryRun.js +184 -0
- package/dist/hooks/compaction/index.js +22 -0
- package/dist/hooks/compaction/parse.js +325 -0
- package/dist/hooks/compaction/retention.js +202 -0
- package/dist/hooks/compaction/status.js +360 -0
- package/dist/hooks/compaction/types.js +5 -0
- package/dist/hooks/validateArtifact/agentFacing.js +9 -0
- package/dist/hooks/validateArtifact/index.js +92 -0
- package/dist/hooks/validateArtifact/markdown.js +145 -0
- package/dist/hooks/validateArtifact/schema.js +546 -0
- package/dist/hooks/validateArtifact/traversal.js +107 -0
- package/dist/hooks/validateArtifact/violations.js +107 -0
- package/dist/migrate/v2HandoffManifest.js +452 -0
- package/dist/registries/activationContract.js +2 -0
- package/dist/registries/activationTuples.js +107 -0
- package/dist/registries/artifactProtocolIds.js +78 -0
- package/dist/registries/artifactRegistry.js +224 -63
- package/dist/registries/artifactSchemaProjection.js +45 -0
- package/dist/registries/capabilityContract.js +129 -2
- package/dist/registries/evaluatorHandoffContract.js +2 -3
- package/dist/registries/evidenceTierContract.js +371 -0
- package/dist/registries/glossaryAdviceContract.js +79 -0
- package/dist/registries/glossaryCaveatContract.js +67 -0
- package/dist/registries/glossaryConsumerContractValidation.js +787 -0
- package/dist/registries/glossaryEntryContract.js +757 -0
- package/dist/registries/glossaryTermIdentity.js +17 -0
- package/dist/registries/glossaryTermOccurrence.js +20 -0
- package/dist/registries/hybridRoute.js +274 -0
- package/dist/registries/hybridRouteReceipt.js +221 -0
- package/dist/registries/packagePublication.js +229 -0
- package/dist/registries/packageRegistry.js +187 -211
- package/dist/registries/todoReadinessContract.js +448 -0
- package/dist/registries/triggerLoader.js +174 -0
- package/dist/registries/verbosityBudgetContract.js +205 -0
- package/dist/release/releaseMetadata.js +385 -0
- package/dist/runtime/lifecycleAdapterContract.js +457 -0
- package/dist/runtime/lifecycleAdapters.js +777 -0
- package/dist/runtime/lifecycleAuthority.js +453 -0
- package/dist/runtime/lifecycleOperationContract.js +123 -0
- package/dist/runtime/lifecycleOperations.js +634 -0
- package/dist/runtime/lifecycleOwnershipJournal.js +622 -0
- package/dist/runtime/lifecyclePublication.js +415 -0
- package/dist/runtime/lifecycleSnapshot.js +438 -0
- package/dist/runtime/nativeResourceCleanup.js +502 -0
- package/dist/setup/opencode.js +20 -0
- package/dist/setup/opencodeConstants.js +1 -0
- package/dist/setup/sharedSkill.js +45 -0
- package/dist/setup/smokeChecks.js +21 -82
- package/dist/state/archiveDiscovery.js +580 -0
- package/dist/state/archivePublication.js +225 -0
- package/dist/state/archiveRecovery.js +237 -0
- package/dist/state/archiveReplay.js +53 -0
- package/dist/state/canonicalMigrationRecord.js +36 -0
- package/dist/state/changelog.js +221 -0
- package/dist/state/decisionEntities.js +367 -0
- package/dist/state/decisionLegacyValidation.js +215 -0
- package/dist/state/decisionMigrationProvenance.js +199 -0
- package/dist/state/decisionOverlay.js +254 -0
- package/dist/state/decisionRevision.js +256 -0
- package/dist/state/decisionRevisionMigration.js +89 -0
- package/dist/state/directRetrieval.js +323 -0
- package/dist/state/durability.js +324 -0
- package/dist/state/entityCutover.js +459 -0
- package/dist/state/entityCutoverGit.js +127 -0
- package/dist/state/entityGlossaryAuthority.js +13 -0
- package/dist/state/entityListProjection.js +187 -0
- package/dist/state/entityListRuntimeRegistry.js +85 -0
- package/dist/state/entityMigrationCausality.js +97 -0
- package/dist/state/entityMigrationIdentity.js +5 -0
- package/dist/state/entityMigrationPreview.js +846 -0
- package/dist/state/entityMigrationTodo.js +133 -0
- package/dist/state/entityPublicationContext.js +806 -0
- package/dist/state/entityRetrievalHelp.js +506 -0
- package/dist/state/entityStorage.js +899 -0
- package/dist/state/exactReplacementRecovery.js +18 -0
- package/dist/state/experimentArchive.js +63 -0
- package/dist/state/experimentIdentity.js +202 -0
- package/dist/state/healthEntities.js +262 -0
- package/dist/state/healthEntityValidation.js +18 -0
- package/dist/state/healthRepair.js +69 -0
- package/dist/state/installRoot.js +64 -25
- package/dist/state/legacyEntityCutoverEvidence.js +65 -0
- package/dist/state/legacyIdentity.js +47 -0
- package/dist/state/legacySummaryRecord.js +6 -0
- package/dist/state/listAccounting.js +54 -0
- package/dist/state/listClassification.js +17 -0
- package/dist/state/listCursor.js +42 -0
- package/dist/state/listRetrieval.js +781 -0
- package/dist/state/migrationSourceBinding.js +30 -0
- package/dist/state/objectiveExperimentEntities.js +322 -0
- package/dist/state/planEntities.js +982 -0
- package/dist/state/planIdentity.js +47 -0
- package/dist/state/planLineageValidation.js +52 -0
- package/dist/state/planReplacementTransaction.js +475 -0
- package/dist/state/planRetrieval.js +313 -0
- package/dist/state/planTaskRetrieval.js +294 -0
- package/dist/state/progressEntities.js +512 -0
- package/dist/state/progressGlossaryCaveat.js +168 -0
- package/dist/state/progressPublicationOrder.js +19 -0
- package/dist/state/projectRoot.js +62 -0
- package/dist/state/projectionPolicy.js +190 -0
- package/dist/state/retrievalAuthority.js +156 -0
- package/dist/state/safeProjectFile.js +155 -0
- package/dist/state/startupAnalysis/benchmark.js +432 -0
- package/dist/state/startupAnalysis/contract.js +160 -0
- package/dist/state/startupAnalysis/helpers.js +286 -0
- package/dist/state/startupAnalysis/index.js +6 -0
- package/dist/state/startupAnalysis/metrics.js +340 -0
- package/dist/state/startupAnalysis/records.js +198 -0
- package/dist/state/startupAnalysis/report.js +111 -0
- package/dist/state/startupAnalysis/threshold.js +512 -0
- package/dist/state/startupAnalysis.js +2 -1953
- package/dist/state/startupProjection.js +499 -0
- package/dist/state/stateMode.js +85 -0
- package/dist/state/stateStorageAuthority.js +47 -0
- package/dist/state/summaryEntityRead.js +25 -0
- package/dist/state/summaryMigrationProvenance.js +66 -0
- package/dist/state/summarySourceRowAuthority.js +36 -0
- package/dist/state/todoActivationSafety.js +58 -0
- package/dist/state/todoDocsEntities.js +1069 -0
- package/dist/state/todoDocsEntityValidation.js +158 -0
- package/dist/state/todoMarkdownProjection.js +51 -0
- package/dist/state/todoReconciliationActivation.js +140 -0
- package/dist/state/todoReconciliationInspection.js +169 -0
- package/dist/state/todoReconciliationRepair.js +170 -0
- package/dist/state/todoReconciliationTransaction.js +582 -0
- package/dist/state/write/assign.js +20 -0
- package/dist/state/write/candidateMutation.js +269 -0
- package/dist/state/write/errors.js +11 -0
- package/dist/state/write/experimentPublication.js +192 -0
- package/dist/state/write/explain.js +363 -0
- package/dist/state/write/fields.js +61 -0
- package/dist/state/write/glossaryPublication.js +263 -0
- package/dist/state/write/grammar.js +285 -0
- package/dist/state/write/helpers.js +29 -0
- package/dist/state/write/index.js +12 -0
- package/dist/state/write/input.js +367 -0
- package/dist/state/write/lock.js +837 -0
- package/dist/state/write/mutation.js +234 -0
- package/dist/state/write/operations.js +170 -0
- package/dist/state/write/planEvaluation.js +128 -0
- package/dist/state/write/planPublication.js +179 -0
- package/dist/state/write/runtimeOperations.js +144 -0
- package/dist/state/write/serialize.js +1 -0
- package/dist/state/write/transaction.js +52 -0
- package/dist/state/write/validate.js +7 -0
- package/dist/upgrade/appContentRefresh.js +383 -0
- package/dist/upgrade/appModel.js +8 -7
- package/dist/upgrade/atomicWriter.js +1 -0
- package/dist/upgrade/bundleEvidence.js +33 -0
- package/dist/upgrade/channels.js +12 -8
- package/dist/upgrade/compatibility.js +56 -21
- package/dist/upgrade/doctor.js +197 -192
- package/dist/upgrade/doctorClassifier.js +187 -0
- package/dist/upgrade/installedHooksRetirement.js +196 -0
- package/dist/upgrade/legacyAgentCleanup.js +282 -0
- package/dist/upgrade/lifecycleUpgrade.js +113 -0
- package/dist/upgrade/migrateArtifactsV2ToV3.js +367 -149
- package/dist/upgrade/migrationPublication.js +122 -0
- package/dist/upgrade/nextMajorDoctor.js +42 -8
- package/dist/upgrade/npxPlatformStatus.js +22 -0
- package/dist/upgrade/projectIntegration.js +145 -187
- package/dist/upgrade/projectIntegrationDecision.js +50 -0
- package/dist/upgrade/retiredResourceDiagnostics.js +117 -0
- package/dist/upgrade/runtimeMigration.js +273 -363
- package/dist/upgrade/upgradeCommands.js +14 -1
- package/dist/upgrade/upgradeLock.js +85 -0
- package/dist/upgrade/upgradeOrchestrator.js +263 -59
- package/dist/upgrade/v3CapabilitySurface.js +14 -0
- package/dist/upgrade/versionResolution.js +8 -1
- package/dist/validate/activationArtifactEvidence.js +844 -0
- package/dist/validate/activationConjunction.js +816 -0
- package/dist/validate/activationEvidenceManifest.js +515 -0
- package/dist/validate/activationPackageSemantics.js +29 -0
- package/dist/validate/appHomeContract.js +5 -11
- package/dist/validate/bootstrapAuthority.js +44 -0
- package/dist/validate/capability.js +133 -12
- package/dist/validate/crossCapability.js +15 -10
- package/dist/validate/retainedReferenceAuthority.js +879 -0
- package/dist/validate/selfAudit.js +73 -37
- package/dist/validate/v1LegacyCruft.js +131 -0
- package/dist/validate/vocabularyAuthority.js +303 -0
- package/package.json +53 -27
- package/bundle/references/adapters/cursor.md +0 -213
- package/bundle/references/adapters/opencode.md +0 -530
- package/bundle/references/adapters/package-manifest-interface-model.yaml +0 -337
- 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/analysis/benchmark.md +0 -267
- package/bundle/references/analysis/startup-measurement-contract.yaml +0 -424
- package/bundle/references/cli/agent-ready-state-contract.yaml +0 -953
- package/bundle/references/cli/audience-namespace-cli-migration.yaml +0 -355
- package/bundle/references/cli/bundle-skill-vocabulary.yaml +0 -278
- package/bundle/references/cli/capability-tool-classification.yaml +0 -53
- package/bundle/references/cli/routing-execution-vocabulary.yaml +0 -281
- package/bundle/references/meta/documentation-inventory.md +0 -43
- 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/schemas/artifacts.yaml +0 -73
- package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +0 -35
- 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/schemas/artifacts.yaml +0 -76
- package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +0 -38
- 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/schemas/triggers.yaml +0 -39
- 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 -120
- 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/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/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/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/schemas/triggers.yaml +0 -41
- package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +0 -33
- package/bundle/skills/agentera/references/contract.md +0 -1039
- 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/analytics/extractCorpus.js.map +0 -1
- package/dist/analytics/usageStats.js.map +0 -1
- package/dist/bin/agentera.js.map +0 -1
- package/dist/capabilities/dokumentera/instructions.js +0 -6
- package/dist/capabilities/dokumentera/instructions.js.map +0 -1
- package/dist/capabilities/hej/instructions.js +0 -6
- package/dist/capabilities/hej/instructions.js.map +0 -1
- package/dist/capabilities/index.js.map +0 -1
- package/dist/capabilities/inspektera/instructions.js +0 -6
- package/dist/capabilities/inspektera/instructions.js.map +0 -1
- package/dist/capabilities/inspirera/instructions.js +0 -6
- package/dist/capabilities/inspirera/instructions.js.map +0 -1
- package/dist/capabilities/optimera/instructions.js +0 -6
- package/dist/capabilities/optimera/instructions.js.map +0 -1
- package/dist/capabilities/orkestrera/instructions.js +0 -6
- package/dist/capabilities/orkestrera/instructions.js.map +0 -1
- package/dist/capabilities/planera/instructions.js +0 -6
- package/dist/capabilities/planera/instructions.js.map +0 -1
- package/dist/capabilities/profilera/instructions.js +0 -6
- package/dist/capabilities/profilera/instructions.js.map +0 -1
- package/dist/capabilities/realisera/instructions.js +0 -6
- package/dist/capabilities/realisera/instructions.js.map +0 -1
- package/dist/capabilities/resonera/instructions.js +0 -6
- package/dist/capabilities/resonera/instructions.js.map +0 -1
- package/dist/capabilities/visionera/instructions.js +0 -6
- package/dist/capabilities/visionera/instructions.js.map +0 -1
- package/dist/capabilities/visualisera/instructions.js +0 -6
- package/dist/capabilities/visualisera/instructions.js.map +0 -1
- package/dist/cli/appContext.js.map +0 -1
- package/dist/cli/argvalidate.js.map +0 -1
- package/dist/cli/capabilityContext.js.map +0 -1
- package/dist/cli/commands/capability.js.map +0 -1
- package/dist/cli/commands/compact.js.map +0 -1
- package/dist/cli/commands/doctor.js.map +0 -1
- package/dist/cli/commands/lint.js.map +0 -1
- package/dist/cli/commands/prime.js.map +0 -1
- package/dist/cli/commands/query.js.map +0 -1
- package/dist/cli/commands/report.js.map +0 -1
- package/dist/cli/commands/schema.js.map +0 -1
- package/dist/cli/commands/state.js +0 -1023
- package/dist/cli/commands/state.js.map +0 -1
- package/dist/cli/commands/upgrade.js.map +0 -1
- package/dist/cli/commands/validate.js.map +0 -1
- package/dist/cli/commands/verify.js.map +0 -1
- package/dist/cli/dispatch.js.map +0 -1
- package/dist/cli/errors.js.map +0 -1
- package/dist/cli/help.js.map +0 -1
- package/dist/cli/orientation.js.map +0 -1
- package/dist/cli/prime-blob.js.map +0 -1
- package/dist/cli/stateQuery.js.map +0 -1
- package/dist/cli/structured.js.map +0 -1
- package/dist/cli/todoMarkdown.js.map +0 -1
- package/dist/core/difflib.js.map +0 -1
- package/dist/core/paths.js.map +0 -1
- package/dist/core/pyjson.js.map +0 -1
- package/dist/core/sourceRoot.js.map +0 -1
- package/dist/core/toml.js.map +0 -1
- package/dist/core/yaml.js.map +0 -1
- package/dist/eval/evalSkills.js.map +0 -1
- package/dist/eval/semanticEval.js.map +0 -1
- package/dist/eval/semanticFixtures.js.map +0 -1
- package/dist/hooks/common.js.map +0 -1
- package/dist/hooks/compaction.js +0 -935
- package/dist/hooks/compaction.js.map +0 -1
- package/dist/hooks/cursorPreToolUse.js +0 -19
- package/dist/hooks/cursorPreToolUse.js.map +0 -1
- package/dist/hooks/cursorSessionStart.js +0 -71
- package/dist/hooks/cursorSessionStart.js.map +0 -1
- package/dist/hooks/sessionStart.js +0 -209
- package/dist/hooks/sessionStart.js.map +0 -1
- package/dist/hooks/sessionStop.js +0 -212
- package/dist/hooks/sessionStop.js.map +0 -1
- package/dist/hooks/validateArtifact.js +0 -935
- package/dist/hooks/validateArtifact.js.map +0 -1
- package/dist/registries/artifactRegistry.js.map +0 -1
- package/dist/registries/capabilityContract.js.map +0 -1
- package/dist/registries/evaluatorHandoffContract.js.map +0 -1
- package/dist/registries/packageRegistry.js.map +0 -1
- package/dist/registries/runtimeAdapterRegistry.js +0 -315
- package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
- package/dist/setup/codex.js +0 -1197
- package/dist/setup/codex.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/setup/smokeChecks.js.map +0 -1
- package/dist/state/installRoot.js.map +0 -1
- package/dist/state/startupAnalysis.js.map +0 -1
- package/dist/upgrade/appModel.js.map +0 -1
- package/dist/upgrade/channels.js.map +0 -1
- package/dist/upgrade/compatibility.js.map +0 -1
- package/dist/upgrade/doctor.js.map +0 -1
- package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -570
- package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
- package/dist/upgrade/migrateArtifactsV2ToV3.js.map +0 -1
- package/dist/upgrade/nextMajorDoctor.js.map +0 -1
- package/dist/upgrade/projectIntegration.js.map +0 -1
- package/dist/upgrade/runtimeMigration.js.map +0 -1
- package/dist/upgrade/upgradeCommands.js.map +0 -1
- package/dist/upgrade/upgradeOrchestrator.js.map +0 -1
- package/dist/upgrade/versionResolution.js.map +0 -1
- package/dist/validate/appHomeContract.js.map +0 -1
- package/dist/validate/capability.js.map +0 -1
- package/dist/validate/crossCapability.js.map +0 -1
- package/dist/validate/lifecycleAdapters.js +0 -772
- package/dist/validate/lifecycleAdapters.js.map +0 -1
- package/dist/validate/selfAudit.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,42 @@
|
|
|
1
|
+
schema_version: agentera.verbosityBudgetAuthority.v1
|
|
2
|
+
status: active_authority
|
|
3
|
+
purpose: >-
|
|
4
|
+
Define which artifact schema owns each verbosity budget. Budget values stay
|
|
5
|
+
in the owning schema so validators and future consumers cannot introduce a
|
|
6
|
+
second value table.
|
|
7
|
+
authority:
|
|
8
|
+
source: references/artifacts/verbosity-budget-authority.yaml
|
|
9
|
+
schema_directory: ../../skills/agentera/schemas/artifacts
|
|
10
|
+
single_source_rule: >-
|
|
11
|
+
Each supported artifact resolves to exactly one schema BUDGET group.
|
|
12
|
+
Missing, unreadable, duplicate, or malformed declarations are authority
|
|
13
|
+
errors; consumers must not substitute generic or historical limits.
|
|
14
|
+
classification:
|
|
15
|
+
numeric_limit: A positive max_words value.
|
|
16
|
+
explicit_no_limit: A null max_words value.
|
|
17
|
+
non_word_unit: A positive token_budget value; it does not authorize word lint.
|
|
18
|
+
invalid_declaration: A missing, duplicate, ambiguous, or malformed declaration.
|
|
19
|
+
scope:
|
|
20
|
+
supported_artifacts:
|
|
21
|
+
- artifact_id: changelog
|
|
22
|
+
schema: changelog.yaml
|
|
23
|
+
- artifact_id: decisions
|
|
24
|
+
schema: decisions.yaml
|
|
25
|
+
- artifact_id: design
|
|
26
|
+
schema: design.yaml
|
|
27
|
+
- artifact_id: docs
|
|
28
|
+
schema: docs.yaml
|
|
29
|
+
- artifact_id: experiments
|
|
30
|
+
schema: experiments.yaml
|
|
31
|
+
- artifact_id: health
|
|
32
|
+
schema: health.yaml
|
|
33
|
+
- artifact_id: objective
|
|
34
|
+
schema: objective.yaml
|
|
35
|
+
- artifact_id: plan
|
|
36
|
+
schema: plan.yaml
|
|
37
|
+
- artifact_id: progress
|
|
38
|
+
schema: progress.yaml
|
|
39
|
+
- artifact_id: todo
|
|
40
|
+
schema: todo.yaml
|
|
41
|
+
- artifact_id: vision
|
|
42
|
+
schema: vision.yaml
|
|
@@ -2,7 +2,7 @@ schema_version: agentera.app_lifecycle_vocabulary.v1
|
|
|
2
2
|
status: active_authority
|
|
3
3
|
decision: 54
|
|
4
4
|
purpose: >-
|
|
5
|
-
Define the app lifecycle vocabulary shared by doctor,
|
|
5
|
+
Define the app lifecycle vocabulary shared by doctor, status, upgrade, docs,
|
|
6
6
|
and tests so structured status metadata, operation verbs, deprecated aliases,
|
|
7
7
|
and consumer ownership boundaries have one machine-readable source.
|
|
8
8
|
sources:
|
|
@@ -12,7 +12,7 @@ sources:
|
|
|
12
12
|
- references/cli/vocabulary.md#app-lifecycle-status-vocabulary
|
|
13
13
|
scope:
|
|
14
14
|
includes:
|
|
15
|
-
- Agentera app lifecycle status metadata emitted by doctor,
|
|
15
|
+
- Agentera app lifecycle status metadata emitted by doctor, status, and upgrade.
|
|
16
16
|
- Upgrade workflow operation verbs for app files, data migration, and no-change outcomes.
|
|
17
17
|
- Cross-major status concepts that annotate migration work without adding parallel status enums.
|
|
18
18
|
- Transitional deprecated aliases needed to classify shipped or historical consumers.
|
|
@@ -25,10 +25,9 @@ scope:
|
|
|
25
25
|
- Update channel names, dist-tag resolution, and override keys.
|
|
26
26
|
- General prose outside app lifecycle metadata.
|
|
27
27
|
compatibility_boundary: >-
|
|
28
|
-
|
|
29
|
-
`activeBundleRoot`, and `--only bundle` may remain
|
|
30
|
-
|
|
31
|
-
lifecycle status vocabulary.
|
|
28
|
+
Retired v2 identifiers such as `.agentera-bundle.json`, `bundle.status`,
|
|
29
|
+
`activeBundleRoot`, and `--only bundle` may remain only in migration readers,
|
|
30
|
+
fixtures, and released history. They are not current app lifecycle vocabulary.
|
|
32
31
|
canonical_status_order:
|
|
33
32
|
- up_to_date
|
|
34
33
|
- outdated
|
|
@@ -155,7 +154,7 @@ operation_verbs:
|
|
|
155
154
|
lifecycle_allowed: false
|
|
156
155
|
consumer_order:
|
|
157
156
|
- doctor
|
|
158
|
-
-
|
|
157
|
+
- status
|
|
159
158
|
- upgrade
|
|
160
159
|
- docs
|
|
161
160
|
- tests
|
|
@@ -176,7 +175,7 @@ consumers:
|
|
|
176
175
|
- migrate
|
|
177
176
|
- upgrade
|
|
178
177
|
may_define_new_statuses: false
|
|
179
|
-
|
|
178
|
+
status:
|
|
180
179
|
owns:
|
|
181
180
|
- installed app gate summary exposed in the composite state briefing.
|
|
182
181
|
- recovery prompts derived from doctor and upgrade metadata.
|
|
@@ -29,8 +29,8 @@ current_state:
|
|
|
29
29
|
definition: >-
|
|
30
30
|
The TypeScript module that exports the capability's behavioral
|
|
31
31
|
instructions as a default-exported string constant. The runtime loads
|
|
32
|
-
the compiled .js path and serves the
|
|
33
|
-
`capability_context` capsule's `
|
|
32
|
+
the compiled .js path and serves the instructions through the slim
|
|
33
|
+
`capability_context` capsule's `instructions` field.
|
|
34
34
|
legacy_instruction_file:
|
|
35
35
|
path: skills/agentera/capabilities/<name>/instructions.md
|
|
36
36
|
status: historical_or_compatibility_evidence_only
|
|
@@ -55,10 +55,10 @@ current_state:
|
|
|
55
55
|
field: first_invocation_read
|
|
56
56
|
status: emitted_in_prime_capability_context
|
|
57
57
|
current_behavior: >-
|
|
58
|
-
`agentera prime --context <name> --format json` emits
|
|
58
|
+
`npx -y agentera@next prime --context <name> --format json` emits
|
|
59
59
|
`capability_context` metadata including `first_invocation_read`
|
|
60
|
-
(value: `prime_context`, runtime_enforcement: true) and the full
|
|
61
|
-
in the `
|
|
60
|
+
(value: `prime_context`, runtime_enforcement: true) and the full instructions
|
|
61
|
+
in the `instructions` field for supported capabilities. Historical
|
|
62
62
|
`hej --capability-context` is removed in 3.0.
|
|
63
63
|
first_invocation_read:
|
|
64
64
|
field_status: runtime_enforced
|
|
@@ -66,29 +66,27 @@ first_invocation_read:
|
|
|
66
66
|
Capability metadata declaring what instruction content an agent must
|
|
67
67
|
read on the first invocation of that capability in a session. Decision
|
|
68
68
|
65 collapses the legacy `full`/`compact_startup` distinction into a
|
|
69
|
-
single `prime_context` value because the CLI now owns the
|
|
69
|
+
single `prime_context` value because the CLI now owns the instructions and
|
|
70
70
|
the runtime can mechanically shell out to the prime command.
|
|
71
71
|
allowed_values:
|
|
72
72
|
prime_context:
|
|
73
73
|
meaning: >-
|
|
74
74
|
The first capability invocation must shell out to
|
|
75
|
-
`agentera prime --context <name> --format json` and read the
|
|
76
|
-
returned `
|
|
75
|
+
`npx -y agentera@next prime --context <name> --format json` and read the
|
|
76
|
+
returned `instructions` field (the full Markdown body) before executing
|
|
77
77
|
capability-specific work.
|
|
78
|
-
obligation: shell out to agentera prime --context <name> --format json
|
|
78
|
+
obligation: shell out to npx -y agentera@next prime --context <name> --format json
|
|
79
79
|
default_rule: prime_context
|
|
80
80
|
full_read_obligation: >-
|
|
81
81
|
On initial capability invocation, shell out to
|
|
82
|
-
`agentera prime --context <name> --format json` and read the
|
|
83
|
-
`capability_context.
|
|
82
|
+
`npx -y agentera@next prime --context <name> --format json` and read the
|
|
83
|
+
`capability_context.instructions` field in full.
|
|
84
84
|
implementation_state:
|
|
85
85
|
instructions_ts_modules: implemented
|
|
86
86
|
validators_require_instructions_ts: true
|
|
87
87
|
first_invocation_read_cli_metadata: true
|
|
88
88
|
first_invocation_read_schema_metadata: true
|
|
89
89
|
runtime_first_invocation_behavior: true
|
|
90
|
-
descriptors_rewritten_to_prime_command: true
|
|
91
|
-
package_metadata_rewritten_to_prime_command: true
|
|
92
90
|
compatibility_preservation:
|
|
93
91
|
preserve_legacy_references_only_when_classified:
|
|
94
92
|
- skills/agentera/capabilities/*/instructions.md paths (historical)
|
|
@@ -111,7 +109,6 @@ surface_inventory:
|
|
|
111
109
|
docs_vocabulary: delegates_to_this_authority
|
|
112
110
|
readme: concise_user_facing_current_and_future_authoring_seam
|
|
113
111
|
capability_schema_contract: current_canonical_validator_reference
|
|
114
|
-
runtime_descriptors: current_canonical_instructions_md_pointers
|
|
115
112
|
capability_instruction_files: current_canonical_instruction_files
|
|
116
113
|
evaluator_handoff:
|
|
117
114
|
status: implemented
|
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
schema_version: agentera.hybrid_route_contract.v3
|
|
2
|
+
status: normative
|
|
3
|
+
purpose: >-
|
|
4
|
+
Define the portable, two-phase request-to-capability route contract. The CLI
|
|
5
|
+
implements deterministic resolution and receipt validation; the host supplies
|
|
6
|
+
open-ended semantic judgment only after deterministic abstention.
|
|
7
|
+
ownership:
|
|
8
|
+
cli: >-
|
|
9
|
+
The CLI owns request validation, deterministic terminal selections, receipt
|
|
10
|
+
validation, and all startup authorization.
|
|
11
|
+
host: >-
|
|
12
|
+
The portable shared skill is the only host integration. A host may make a
|
|
13
|
+
semantic judgment only after semantic_required and must submit a receipt.
|
|
14
|
+
prohibited: [runtime_specific_adapter, host_bypasses_receipt_validation]
|
|
15
|
+
phrase_registry: skills/agentera/route-phrases.yaml
|
|
16
|
+
semantic_intent: references/cli/trigger-schema-enrichment.md
|
|
17
|
+
evaluation_corpus: fixtures/routing/hybrid-corpus.yaml
|
|
18
|
+
|
|
19
|
+
protocol:
|
|
20
|
+
request:
|
|
21
|
+
version: agentera.route_request.v1
|
|
22
|
+
required_fields: [request]
|
|
23
|
+
request: >-
|
|
24
|
+
The transient, unmodified user message. It is accepted for routing and is
|
|
25
|
+
never persisted by this protocol.
|
|
26
|
+
cli_seam:
|
|
27
|
+
command: npx -y agentera@next route request --input PATH --format json
|
|
28
|
+
input: >-
|
|
29
|
+
A YAML or JSON mapping supplied by --input PATH or --input -. The request
|
|
30
|
+
field is never accepted in argv; --input - reads it from stdin.
|
|
31
|
+
output: >-
|
|
32
|
+
The versioned route response is emitted as JSON on stdout. Diagnostics do
|
|
33
|
+
not include request or topic text, and routing writes no state or report.
|
|
34
|
+
exit_codes: { ok: 0, invalid_input: 2, authority_conflict: 2 }
|
|
35
|
+
response:
|
|
36
|
+
version: agentera.route_response.v1
|
|
37
|
+
outcomes: [deterministic_selection, semantic_required]
|
|
38
|
+
deterministic_selection:
|
|
39
|
+
required_fields: [capability, tier, recognized_span, topic_span, provenance]
|
|
40
|
+
tiers: [bare, direct, phrase]
|
|
41
|
+
semantic_required:
|
|
42
|
+
required_fields: [request_sha256, semantic_capsule, semantic_capsule_sha256, receipt_contract, provenance]
|
|
43
|
+
semantic_capsule: >-
|
|
44
|
+
The active trigger intent documentation and contract version needed for
|
|
45
|
+
a host judgment. It contains no state-derived next_action and no raw
|
|
46
|
+
request text beyond the host's transient input.
|
|
47
|
+
semantic_capsule_sha256: >-
|
|
48
|
+
SHA-256 of the contract-owned canonical JSON representation of exactly
|
|
49
|
+
semantic_capsule. The host returns this value unchanged in its receipt.
|
|
50
|
+
semantic_capsule_canonicalization:
|
|
51
|
+
source: semantic_capsule
|
|
52
|
+
serialization: >-
|
|
53
|
+
UTF-8 JSON with recursively lexicographically sorted object keys and
|
|
54
|
+
no insignificant whitespace; array order is the order presented in
|
|
55
|
+
semantic_capsule.
|
|
56
|
+
included_inputs: [contract_version, capabilities, capability, triggers, id, description, priority, disambiguates_against, hint]
|
|
57
|
+
excluded_inputs: [request, request_sha256, provenance, diagnostics, next_action, phrase_registry, raw_trigger_matchers]
|
|
58
|
+
binding: >-
|
|
59
|
+
The digest binds the bounded classification inputs presented to the
|
|
60
|
+
host, not route diagnostics, state, private raw request duplication,
|
|
61
|
+
or any authority the host did not see.
|
|
62
|
+
receipt_contract:
|
|
63
|
+
schema_version: agentera.route_receipt_contract.v1
|
|
64
|
+
purpose: >-
|
|
65
|
+
A self-describing semantic-receipt guide returned only with deterministic
|
|
66
|
+
abstention. It contains the exact nullable receipt schema, legal outcomes,
|
|
67
|
+
nullability, compound and span rules, and one current stdin round trip.
|
|
68
|
+
stdin_command: npx -y agentera@next route receipt --input - --format json
|
|
69
|
+
input_schema:
|
|
70
|
+
type: object
|
|
71
|
+
additionalProperties: false
|
|
72
|
+
required: [request, receipt]
|
|
73
|
+
properties:
|
|
74
|
+
request: { type: string }
|
|
75
|
+
receipt: { $ref: '#/nullable_schema' }
|
|
76
|
+
stdin_example:
|
|
77
|
+
request: make implementation plan
|
|
78
|
+
receipt:
|
|
79
|
+
outcome: select
|
|
80
|
+
capability: plan
|
|
81
|
+
compound: none
|
|
82
|
+
question: null
|
|
83
|
+
remainder_span: null
|
|
84
|
+
receipt:
|
|
85
|
+
version: agentera.route_receipt.v1
|
|
86
|
+
required_fields: [version, request_sha256, semantic_capsule_sha256, outcome]
|
|
87
|
+
cli_seam:
|
|
88
|
+
command: npx -y agentera@next route receipt --input PATH --format json
|
|
89
|
+
input: >-
|
|
90
|
+
A YAML or JSON mapping supplied by --input PATH or --input -. It has the
|
|
91
|
+
transient original request in request and the complete nullable host output
|
|
92
|
+
in receipt. Neither field is accepted in argv or persisted.
|
|
93
|
+
output: >-
|
|
94
|
+
JSON startup authorization only: selected capability, one clarification,
|
|
95
|
+
or explicit status fallback. A preserved remainder includes its exact span
|
|
96
|
+
and transient text for the receiving host; diagnostics never echo input.
|
|
97
|
+
exit_codes: { ok: 0, invalid_input: 2, invalid_receipt: 64 }
|
|
98
|
+
outcomes: [select, clarify, no_match]
|
|
99
|
+
select:
|
|
100
|
+
required_fields: [capability, compound]
|
|
101
|
+
forbidden_fields: [question]
|
|
102
|
+
clarify:
|
|
103
|
+
required_fields: [question]
|
|
104
|
+
forbidden_fields: [capability, compound, remainder_span]
|
|
105
|
+
no_match:
|
|
106
|
+
forbidden_fields: [capability, question, compound, remainder_span]
|
|
107
|
+
validation_authority:
|
|
108
|
+
name: agentera.route_receipt_schema.v1
|
|
109
|
+
dialect: json_schema_draft_2020_12
|
|
110
|
+
canonical_capability_source: &canonical_capability_source skills/agentera/capability_schema_contract.yaml#route_aliases.primary_aliases
|
|
111
|
+
request_binding: sha256_of_original_utf8_request_bytes
|
|
112
|
+
semantic_capsule_binding: sha256_of_canonical_semantic_required.semantic_capsule
|
|
113
|
+
request_bound_fields:
|
|
114
|
+
remainder_span:
|
|
115
|
+
encoding: utf8_bytes
|
|
116
|
+
relation: 0 <= start < end = original_request_utf8_byte_length
|
|
117
|
+
exact_suffix: >-
|
|
118
|
+
start and end are UTF-8 code-point boundaries. The suffix bytes decode
|
|
119
|
+
with fatal UTF-8 handling and are returned unchanged, without
|
|
120
|
+
truncation or replacement characters.
|
|
121
|
+
schema: &agentera_route_receipt_schema
|
|
122
|
+
type: object
|
|
123
|
+
additionalProperties: false
|
|
124
|
+
required: [version, request_sha256, semantic_capsule_sha256, outcome]
|
|
125
|
+
properties:
|
|
126
|
+
version: { const: agentera.route_receipt.v1 }
|
|
127
|
+
request_sha256: { type: string, pattern: '^[a-f0-9]{64}$' }
|
|
128
|
+
semantic_capsule_sha256: { type: string, pattern: '^[a-f0-9]{64}$' }
|
|
129
|
+
outcome: { enum: [select, clarify, no_match] }
|
|
130
|
+
capability: { type: string }
|
|
131
|
+
compound: { enum: [none, preserve] }
|
|
132
|
+
question: { type: string, minLength: 1, maxLength: 280 }
|
|
133
|
+
remainder_span:
|
|
134
|
+
type: object
|
|
135
|
+
additionalProperties: false
|
|
136
|
+
required: [start, end]
|
|
137
|
+
properties:
|
|
138
|
+
start: { type: integer, minimum: 0 }
|
|
139
|
+
end: { type: integer, minimum: 0 }
|
|
140
|
+
allOf:
|
|
141
|
+
- if: { properties: { outcome: { const: select } }, required: [outcome] }
|
|
142
|
+
then:
|
|
143
|
+
required: [capability, compound]
|
|
144
|
+
not: { required: [question] }
|
|
145
|
+
- if: { properties: { outcome: { const: clarify } }, required: [outcome] }
|
|
146
|
+
then:
|
|
147
|
+
required: [question]
|
|
148
|
+
allOf:
|
|
149
|
+
- not: { required: [capability] }
|
|
150
|
+
- not: { required: [compound] }
|
|
151
|
+
- not: { required: [remainder_span] }
|
|
152
|
+
- if: { properties: { outcome: { const: no_match } }, required: [outcome] }
|
|
153
|
+
then:
|
|
154
|
+
allOf:
|
|
155
|
+
- not: { required: [capability] }
|
|
156
|
+
- not: { required: [question] }
|
|
157
|
+
- not: { required: [compound] }
|
|
158
|
+
- not: { required: [remainder_span] }
|
|
159
|
+
- if:
|
|
160
|
+
properties: { outcome: { const: select }, compound: { const: preserve } }
|
|
161
|
+
required: [outcome, compound]
|
|
162
|
+
then: { required: [remainder_span] }
|
|
163
|
+
- if:
|
|
164
|
+
properties: { outcome: { const: select }, compound: { const: none } }
|
|
165
|
+
required: [outcome, compound]
|
|
166
|
+
then: { not: { required: [remainder_span] } }
|
|
167
|
+
host_output_shape:
|
|
168
|
+
name: agentera_route_receipt
|
|
169
|
+
purpose: >-
|
|
170
|
+
The portable nullable host receipt shape. It validates the complete
|
|
171
|
+
receipt object only; the CLI receipt schema remains authoritative for
|
|
172
|
+
outcome relationships, request binding, and capability authorization.
|
|
173
|
+
canonical_capability_values_source: *canonical_capability_source
|
|
174
|
+
schema: &agentera_route_receipt_host_schema
|
|
175
|
+
type: object
|
|
176
|
+
additionalProperties: false
|
|
177
|
+
required: [version, request_sha256, semantic_capsule_sha256, outcome, capability, compound, question, remainder_span]
|
|
178
|
+
properties:
|
|
179
|
+
version: { type: string, enum: [agentera.route_receipt.v1] }
|
|
180
|
+
request_sha256: { type: string, pattern: '^[a-f0-9]{64}$' }
|
|
181
|
+
semantic_capsule_sha256: { type: string, pattern: '^[a-f0-9]{64}$' }
|
|
182
|
+
outcome: { type: string, enum: [select, clarify, no_match] }
|
|
183
|
+
capability:
|
|
184
|
+
type: [string, "null"]
|
|
185
|
+
enum: [status, vision, discuss, research, plan, build, optimize, audit, document, profile, design, orchestrate, null]
|
|
186
|
+
compound:
|
|
187
|
+
type: [string, "null"]
|
|
188
|
+
enum: [none, preserve, null]
|
|
189
|
+
question: { type: [string, "null"], maxLength: 280 }
|
|
190
|
+
remainder_span:
|
|
191
|
+
type: [object, "null"]
|
|
192
|
+
additionalProperties: false
|
|
193
|
+
required: [start, end]
|
|
194
|
+
properties:
|
|
195
|
+
start: { type: integer }
|
|
196
|
+
end: { type: integer }
|
|
197
|
+
host_to_cli_normalization:
|
|
198
|
+
name: agentera.route_receipt_host_to_cli.v1
|
|
199
|
+
purpose: >-
|
|
200
|
+
Project the host-required nullable shape into the authoritative CLI
|
|
201
|
+
receipt shape without changing any non-null value.
|
|
202
|
+
input:
|
|
203
|
+
first_step: >-
|
|
204
|
+
Validate the unmodified host receipt against host_output_shape.schema.
|
|
205
|
+
Reject it on any host-shape failure before projecting any field.
|
|
206
|
+
accepted_keys: [version, request_sha256, semantic_capsule_sha256, outcome, capability, compound, question, remainder_span]
|
|
207
|
+
projection:
|
|
208
|
+
operation: >-
|
|
209
|
+
Copy every non-null field unchanged, including its exact string bytes
|
|
210
|
+
and numeric values; remove only a null field listed as inapplicable by
|
|
211
|
+
the matching outcome rule.
|
|
212
|
+
outcome_rules:
|
|
213
|
+
select:
|
|
214
|
+
required_non_null: [version, request_sha256, semantic_capsule_sha256, outcome, capability, compound]
|
|
215
|
+
removable_nulls:
|
|
216
|
+
question: always
|
|
217
|
+
remainder_span: when_compound_none
|
|
218
|
+
clarify:
|
|
219
|
+
required_non_null: [version, request_sha256, semantic_capsule_sha256, outcome, question]
|
|
220
|
+
removable_nulls:
|
|
221
|
+
capability: always
|
|
222
|
+
compound: always
|
|
223
|
+
remainder_span: always
|
|
224
|
+
no_match:
|
|
225
|
+
required_non_null: [version, request_sha256, semantic_capsule_sha256, outcome]
|
|
226
|
+
removable_nulls:
|
|
227
|
+
capability: always
|
|
228
|
+
compound: always
|
|
229
|
+
question: always
|
|
230
|
+
remainder_span: always
|
|
231
|
+
rejection:
|
|
232
|
+
unsupported_key: reject
|
|
233
|
+
unexpected_null: reject
|
|
234
|
+
projection_bypass: reject
|
|
235
|
+
downstream_validation: >-
|
|
236
|
+
Pass only the projected receipt to agentera.route_receipt_schema.v1, then
|
|
237
|
+
rerun deterministic routing against the supplied request and source
|
|
238
|
+
authority, require semantic_required with the same request digest and
|
|
239
|
+
semantic_capsule_sha256, then apply canonical-capability, request-digest,
|
|
240
|
+
semantic-capsule, span, and startup-authorization checks. Normalization
|
|
241
|
+
does not authorize startup and does not weaken any CLI cross-field rule.
|
|
242
|
+
request_binding: >-
|
|
243
|
+
The host sends the original request transiently beside the receipt. The
|
|
244
|
+
CLI recomputes SHA-256 over its UTF-8 bytes and requires an exact match to
|
|
245
|
+
request_sha256. No session, nonce, or receipt is stored.
|
|
246
|
+
validation_result:
|
|
247
|
+
terminal_outcomes: [selected, clarification, status_fallback, invalid_receipt]
|
|
248
|
+
startup_authorization:
|
|
249
|
+
selected: selected capability only
|
|
250
|
+
clarification: none
|
|
251
|
+
status_fallback: status only
|
|
252
|
+
invalid_receipt: none
|
|
253
|
+
invalid_receipt_exit: 64
|
|
254
|
+
result_schema:
|
|
255
|
+
version: agentera.route_receipt_result.v1
|
|
256
|
+
selected: >-
|
|
257
|
+
Emits the selected canonical capability, bounded semantic-receipt
|
|
258
|
+
provenance, and npx -y agentera@next prime --context <capability> --format json as
|
|
259
|
+
the existing startup path. It authorizes that capability only.
|
|
260
|
+
clarification: >-
|
|
261
|
+
Emits exactly one validated question and semantic-receipt provenance; it
|
|
262
|
+
authorizes no startup.
|
|
263
|
+
status_fallback: >-
|
|
264
|
+
Emits status with status_reason no_match and the existing status startup
|
|
265
|
+
path. It is not a readiness classification.
|
|
266
|
+
|
|
267
|
+
precedence:
|
|
268
|
+
- order: 1
|
|
269
|
+
name: bare
|
|
270
|
+
condition: /agentera with no additional text
|
|
271
|
+
response: deterministic_selection
|
|
272
|
+
capability: status
|
|
273
|
+
tier: bare
|
|
274
|
+
- order: 2
|
|
275
|
+
name: direct
|
|
276
|
+
condition: >-
|
|
277
|
+
An explicit canonical capability name, or a primary alias, before any
|
|
278
|
+
topic under the existing direct-route grammar.
|
|
279
|
+
response: deterministic_selection
|
|
280
|
+
tier: direct
|
|
281
|
+
- order: 3
|
|
282
|
+
name: curated_phrase
|
|
283
|
+
condition: >-
|
|
284
|
+
A globally unique active phrase from the phrase registry exactly matches
|
|
285
|
+
the normalized leading token sequence.
|
|
286
|
+
response: deterministic_selection
|
|
287
|
+
tier: phrase
|
|
288
|
+
- order: 4
|
|
289
|
+
name: deterministic_abstention
|
|
290
|
+
condition: Any request not selected by orders 1 through 3.
|
|
291
|
+
response: semantic_required
|
|
292
|
+
rule: >-
|
|
293
|
+
The deterministic tier does not infer meaning, score candidates, match
|
|
294
|
+
substrings, or use regexes, thresholds, bands, state, or next_action.
|
|
295
|
+
- order: 5
|
|
296
|
+
name: semantic_receipt
|
|
297
|
+
condition: A valid receipt for a semantic_required response.
|
|
298
|
+
response: select, clarify, or no_match as validated below
|
|
299
|
+
|
|
300
|
+
receipt_semantics:
|
|
301
|
+
select:
|
|
302
|
+
result: selected
|
|
303
|
+
startup: The selected capability starts after validation.
|
|
304
|
+
clarify:
|
|
305
|
+
result: clarification
|
|
306
|
+
startup: No capability starts; the host asks exactly the supplied question.
|
|
307
|
+
no_match:
|
|
308
|
+
result: status_fallback
|
|
309
|
+
startup: Status starts for orientation only, after validation.
|
|
310
|
+
invalid_receipt:
|
|
311
|
+
result: invalid_receipt
|
|
312
|
+
startup: No capability starts; return a bounded correction naming the invalid field.
|
|
313
|
+
|
|
314
|
+
compound_intent:
|
|
315
|
+
principle: >-
|
|
316
|
+
A route selects at most one capability. Remainder is preserved and is never
|
|
317
|
+
silently chained, dispatched, or executed.
|
|
318
|
+
deterministic: >-
|
|
319
|
+
A direct or phrase route passes its exact topic_span to the selected
|
|
320
|
+
capability without classifying it as a follow-on request.
|
|
321
|
+
semantic:
|
|
322
|
+
dispositions: [none, preserve]
|
|
323
|
+
clarification: >-
|
|
324
|
+
clarify is a receipt outcome only, never a compound disposition. It is used
|
|
325
|
+
when one primary capability cannot safely be named.
|
|
326
|
+
preserve: >-
|
|
327
|
+
A select receipt with compound=preserve MUST include a non-empty
|
|
328
|
+
remainder_span inside the original request. The CLI carries that exact
|
|
329
|
+
original slice as deferred intent; it does not start another capability.
|
|
330
|
+
clarify: >-
|
|
331
|
+
Independent or consequential requests that cannot safely name one primary
|
|
332
|
+
capability require a clarify receipt, not a select receipt.
|
|
333
|
+
|
|
334
|
+
phrase_matching:
|
|
335
|
+
comparison_view: >-
|
|
336
|
+
Decode the request as valid UTF-8, then split it into source tokens at
|
|
337
|
+
Unicode whitespace. Apply Unicode NFKC and locale-independent Unicode case
|
|
338
|
+
folding to each source-token comparison segment; join phrase segments with
|
|
339
|
+
one ASCII space. The final source token may be partitioned at its first
|
|
340
|
+
permitted separator; only its prefix participates in phrase comparison.
|
|
341
|
+
leading_only: >-
|
|
342
|
+
The registry phrase must equal the first normalized comparison-token
|
|
343
|
+
sequence. For every source token except the final phrase token, the whole
|
|
344
|
+
normalized token must match. The final phrase token either matches whole or
|
|
345
|
+
ends immediately before its first permitted separator. A permitted separator
|
|
346
|
+
is a source code point whose NFKC form is exactly `:`, `-`, or `—`; it is
|
|
347
|
+
not consumed and need not be followed by whitespace. No other attached
|
|
348
|
+
punctuation terminates a token. Quotation, negation, a phrase later in a
|
|
349
|
+
sentence, and a partial token abstain.
|
|
350
|
+
recognized_span: >-
|
|
351
|
+
Return half-open UTF-8 byte offsets from the first matched source token
|
|
352
|
+
through the final matched-token prefix. The exact original bytes between
|
|
353
|
+
source tokens, including whitespace, belong to this span; leading whitespace
|
|
354
|
+
and a separator do not. Decoding that byte slice reproduces the recognized
|
|
355
|
+
text exactly.
|
|
356
|
+
topic_span: >-
|
|
357
|
+
The topic is the exact original UTF-8 byte slice from recognized_span.end to
|
|
358
|
+
request_byte_length. It begins at the permitted separator when one ended the
|
|
359
|
+
final phrase token, otherwise at the end of that token. It preserves every
|
|
360
|
+
separator, whitespace character, and remainder byte; it is not normalized,
|
|
361
|
+
trimmed, or interpreted.
|
|
362
|
+
example:
|
|
363
|
+
request: " HELP\tME decide: migrate the store"
|
|
364
|
+
normalized_leading_phrase: help me decide
|
|
365
|
+
recognized_span: { utf8_start: 2, utf8_end: 16, text: "HELP\tME decide" }
|
|
366
|
+
topic_span: { utf8_start: 16, utf8_end: 35, text: ": migrate the store" }
|
|
367
|
+
|
|
368
|
+
phrase_ownership:
|
|
369
|
+
active_phrase_source: skills/agentera/route-phrases.yaml
|
|
370
|
+
collision_rule: >-
|
|
371
|
+
Every normalized phrase is globally unique across every registry entry,
|
|
372
|
+
including deprecated entries. A collision fails validation; precedence must
|
|
373
|
+
never choose a phrase owner.
|
|
374
|
+
direct_route_rule: >-
|
|
375
|
+
A phrase must not duplicate a canonical capability name or primary alias and
|
|
376
|
+
must not begin with one under the direct-route grammar. Direct routes always
|
|
377
|
+
retain order-2 precedence.
|
|
378
|
+
trigger_rule: >-
|
|
379
|
+
Trigger descriptions are semantic documentation only. They neither create
|
|
380
|
+
phrase ownership nor alter phrase precedence.
|
|
381
|
+
|
|
382
|
+
privacy:
|
|
383
|
+
default_persistence: forbidden
|
|
384
|
+
transient_data: [request, topic, receipt, request_sha256, semantic_capsule_sha256]
|
|
385
|
+
retained_evaluation_evidence: >-
|
|
386
|
+
Retain only corpus version, case ID, partition, expected and observed
|
|
387
|
+
outcome, capability ID, tier, timing, model profile, and aggregate metrics.
|
|
388
|
+
Do not retain raw private request text, topic text, receipt question, or
|
|
389
|
+
semantic rationale by default.
|
|
390
|
+
permitted_corpus_text: >-
|
|
391
|
+
Frozen corpus text is synthetic or explicitly consented, and each corpus
|
|
392
|
+
declares its text provenance. Private production prompts are never imported.
|
|
393
|
+
|
|
394
|
+
evaluation:
|
|
395
|
+
conformance_owner: packages/cli/test/registries/hybridRouteContract.test.ts
|
|
396
|
+
visible_corpus_entrypoint: npx -y agentera@next route evaluate --format json
|
|
397
|
+
visible_corpus_exit_codes: { pass: 0, failed_evaluation: 1, authority_conflict: 2 }
|
|
398
|
+
visible_corpus_output: >-
|
|
399
|
+
agentera.hybrid_route_evaluation.v1 reports only case IDs, partitions,
|
|
400
|
+
expected/observed outcomes, routing tier, capability ID, timings, authority
|
|
401
|
+
hashes, and aggregate metrics. It never writes a report or emits request,
|
|
402
|
+
topic, receipt-question, or rationale text.
|
|
403
|
+
corpus_partitions: { development: frozen, adversarial: frozen }
|
|
404
|
+
corpus_scope: >-
|
|
405
|
+
The frozen synthetic development and adversarial corpus is the sole
|
|
406
|
+
implementation conformance corpus. It has no hidden, sealed, or vendor-host
|
|
407
|
+
companion corpus.
|
|
408
|
+
semantic_host: >-
|
|
409
|
+
A host may make the semantic judgment and submit the portable nullable host
|
|
410
|
+
receipt shape. Host selection, model quality, and latency are host-dependent
|
|
411
|
+
and unmeasured by this offline evaluator; no host invocation is required.
|
|
412
|
+
local_latency_caveat: >-
|
|
413
|
+
Deterministic and receipt-validation p95 values are run-specific local
|
|
414
|
+
conformance measurements, not semantic-host or end-to-end latency claims.
|
|
415
|
+
target_gates:
|
|
416
|
+
deterministic_phase1_p95: 25_ms
|
|
417
|
+
receipt_validation_p95: 25_ms
|
|
418
|
+
harmful_misroutes: 0
|
|
419
|
+
deterministic_fixture_accuracy: 100_percent
|
|
420
|
+
harmful_misroute_taxonomy:
|
|
421
|
+
- wrong_capability_starts_a_state_changing_or_destructive_flow
|
|
422
|
+
- a_compound_remainder_is_executed_or_chained_without_user_consent
|
|
423
|
+
- a_no_match_or_clarify_request_starts_non_status_work
|
|
424
|
+
- private_request_text_is_persisted_or_exported
|
|
425
|
+
execution_status: >-
|
|
426
|
+
Offline implementation acceptance requires frozen deterministic and
|
|
427
|
+
receipt-validation conformance only. The visible corpus proves protocol
|
|
428
|
+
conformance, not semantic generalization. Semantic host quality and latency
|
|
429
|
+
are explicitly unmeasured and do not block implementation acceptance.
|
|
430
|
+
|
|
431
|
+
deprecations:
|
|
432
|
+
decision_76: >-
|
|
433
|
+
Superseded by Decision mpulyomlyl only for the order-3 curated literal fast
|
|
434
|
+
path. Decision 76 continues to assign open-ended language and ambiguity
|
|
435
|
+
judgment to the LLM host; legacy trigger patterns, regexes, scores,
|
|
436
|
+
thresholds, and bands stay retired.
|
|
437
|
+
legacy_matchers: prohibited_from_active_routing
|
|
438
|
+
route_contract_changes: Require a new schema_version and a new frozen corpus version.
|