agentera 3.0.0-dev.6 → 3.0.0-dev.69
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 +118 -22
- package/bundle/CHANGELOG.md +1361 -0
- package/bundle/DESIGN.md +229 -0
- package/bundle/LICENSE +201 -0
- package/bundle/README.md +143 -0
- package/bundle/UPGRADE.md +252 -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 +488 -0
- package/bundle/references/adapters/package-registry.yaml +435 -188
- package/bundle/references/adapters/package-surface-characterization.md +66 -34
- 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 +266 -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 +3061 -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 -2
- package/bundle/references/cli/vocabulary-index.yaml +20 -17
- package/bundle/references/cli/vocabulary.md +325 -362
- package/bundle/references/meta/retained-reference-authority.yaml +151 -0
- package/bundle/registry.json +13 -13
- package/bundle/skills/agentera/SKILL.md +226 -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 +103 -0
- package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +8 -6
- package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +27 -0
- package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +184 -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 +461 -36
- package/bundle/skills/agentera/schemas/artifacts/progress.yaml +133 -20
- 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 +101 -12
- package/dist/analytics/extractCorpus/copilotSessions.js +53 -9
- package/dist/analytics/extractCorpus/core.js +59 -24
- package/dist/analytics/extractCorpus/corpus.js +58 -23
- package/dist/analytics/extractCorpus/coverageAudit.js +260 -0
- package/dist/analytics/extractCorpus/cursorSessions.js +12 -7
- package/dist/analytics/extractCorpus/evidenceTiers.js +603 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js +105 -0
- package/dist/analytics/extractCorpus/filesystemSources.js +1 -5
- package/dist/analytics/extractCorpus/index.js +6 -1
- package/dist/analytics/extractCorpus/jsonlSessions.js +24 -5
- package/dist/analytics/extractCorpus/sqliteCaps.js +43 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js +98 -6
- package/dist/analytics/extractCorpus/tierReader.js +108 -0
- package/dist/analytics/extractCorpus.js +0 -1
- 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 +59 -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 +25 -17
- package/dist/cli/capabilityContext/bespoke.js +31 -12
- package/dist/cli/capabilityContext/build.js +251 -0
- package/dist/cli/capabilityContext/closeout.js +33 -30
- package/dist/cli/capabilityContext/contract.js +39 -46
- package/dist/cli/capabilityContext/evidence.js +90 -73
- package/dist/cli/capabilityContext/index.js +1 -2
- package/dist/cli/capabilityContext/orchestration.js +45 -21
- package/dist/cli/capabilityContext/planState.js +93 -100
- package/dist/cli/capabilityContext/progress.js +60 -14
- package/dist/cli/capabilityContext/projectVerification.js +409 -0
- package/dist/cli/capabilityContext/shared.js +9 -20
- package/dist/cli/capabilityContext/slim.js +56 -10
- package/dist/cli/capabilityContext/startup.js +57 -115
- package/dist/cli/capabilityContext/startupAggregation.js +68 -0
- package/dist/cli/capabilityContext/types.js +37 -24
- package/dist/cli/capabilityContext.js +1 -2
- package/dist/cli/commands/appHome.js +22 -0
- package/dist/cli/commands/capability.js +4 -4
- package/dist/cli/commands/compact.js +163 -13
- package/dist/cli/commands/doctor.js +122 -114
- package/dist/cli/commands/durability.js +81 -0
- package/dist/cli/commands/glossaryAdvice.js +138 -0
- package/dist/cli/commands/lint.js +22 -8
- package/dist/cli/commands/personalGlossary.js +176 -0
- package/dist/cli/commands/prime/briefOrientation.js +746 -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 +219 -0
- package/dist/cli/commands/prime/orientationOutput.js +421 -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 +77 -52
- package/dist/cli/commands/report.js +88 -26
- package/dist/cli/commands/route.js +142 -0
- package/dist/cli/commands/schema.js +266 -142
- package/dist/cli/commands/state/decisions.js +51 -61
- package/dist/cli/commands/state/docs.js +63 -86
- package/dist/cli/commands/state/experimentRecords.js +151 -0
- package/dist/cli/commands/state/experiments.js +11 -64
- package/dist/cli/commands/state/get.js +129 -0
- package/dist/cli/commands/state/health.js +11 -111
- package/dist/cli/commands/state/index.js +6 -41
- package/dist/cli/commands/state/list.js +194 -0
- package/dist/cli/commands/state/objective.js +21 -64
- package/dist/cli/commands/state/plan.js +11 -169
- 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 +11 -45
- package/dist/cli/commands/state/shared.js +0 -1
- package/dist/cli/commands/state/todo.js +29 -108
- package/dist/cli/commands/state/write.js +433 -0
- package/dist/cli/commands/upgrade.js +146 -5
- package/dist/cli/commands/upgradeVerify.js +118 -0
- package/dist/cli/commands/validate.js +246 -211
- 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 +94 -50
- package/dist/cli/dispatch/commands.js +27 -0
- package/dist/cli/dispatch/index.js +82 -52
- package/dist/cli/dispatch/lifecycle.js +268 -108
- package/dist/cli/dispatch/prime.js +68 -29
- package/dist/cli/dispatch/projections.js +17 -0
- package/dist/cli/dispatch/shared.js +1 -2
- package/dist/cli/dispatch/state.js +68 -77
- package/dist/cli/dispatch.js +0 -1
- package/dist/cli/errors.js +16 -17
- package/dist/cli/help.js +395 -41
- package/dist/cli/migrationRequired.js +122 -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 +3 -56
- package/dist/hooks/compaction/apply.js +252 -50
- package/dist/hooks/compaction/dryRun.js +7 -4
- package/dist/hooks/compaction/index.js +5 -6
- package/dist/hooks/compaction/parse.js +201 -5
- package/dist/hooks/compaction/retention.js +30 -25
- package/dist/hooks/compaction/status.js +149 -32
- package/dist/hooks/compaction/types.js +0 -1
- package/dist/hooks/validateArtifact/agentFacing.js +0 -1
- package/dist/hooks/validateArtifact/index.js +7 -64
- package/dist/hooks/validateArtifact/markdown.js +57 -7
- package/dist/hooks/validateArtifact/schema.js +110 -19
- package/dist/hooks/validateArtifact/traversal.js +13 -11
- package/dist/hooks/validateArtifact/violations.js +7 -5
- package/dist/migrate/v2HandoffManifest.js +127 -8
- package/dist/registries/activationContract.js +2 -0
- package/dist/registries/activationTuples.js +108 -0
- package/dist/registries/artifactProtocolIds.js +2 -1
- 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 +273 -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 +156 -6
- 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 -13
- 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 +840 -0
- package/dist/state/entityMigrationTodo.js +133 -0
- package/dist/state/entityPublicationContext.js +859 -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 +1027 -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/progressWritePolicy.js +33 -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 +92 -27
- package/dist/state/startupAnalysis/contract.js +48 -10
- package/dist/state/startupAnalysis/helpers.js +27 -73
- package/dist/state/startupAnalysis/index.js +0 -1
- package/dist/state/startupAnalysis/metrics.js +25 -19
- package/dist/state/startupAnalysis/records.js +13 -10
- package/dist/state/startupAnalysis/report.js +26 -38
- package/dist/state/startupAnalysis/threshold.js +19 -7
- package/dist/state/startupAnalysis.js +0 -1
- package/dist/state/startupProjection.js +499 -0
- package/dist/state/stateMode.js +222 -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 +1124 -0
- package/dist/state/todoDocsEntityValidation.js +158 -0
- package/dist/state/todoMarkdownProjection.js +51 -0
- package/dist/state/todoReconciliationActivation.js +182 -0
- package/dist/state/todoReconciliationInspection.js +171 -0
- package/dist/state/todoReconciliationRepair.js +318 -0
- package/dist/state/todoReconciliationTransaction.js +595 -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 +377 -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 +391 -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 +146 -0
- package/dist/state/write/serialize.js +1 -0
- package/dist/state/write/transaction.js +57 -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 +165 -199
- 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 +375 -79
- package/dist/upgrade/migrationPublication.js +122 -0
- package/dist/upgrade/nextMajorDoctor.js +29 -10
- package/dist/upgrade/npxPlatformStatus.js +22 -0
- package/dist/upgrade/projectIntegration.js +145 -189
- package/dist/upgrade/projectIntegrationDecision.js +50 -0
- package/dist/upgrade/retiredResourceDiagnostics.js +117 -0
- package/dist/upgrade/runtimeMigration.js +272 -373
- 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 +2 -3
- package/dist/upgrade/versionResolution.js +2 -3
- package/dist/validate/activationArtifactEvidence.js +852 -0
- package/dist/validate/activationArtifactEvidenceTypes.js +12 -0
- package/dist/validate/activationConjunction.js +816 -0
- package/dist/validate/activationEvidenceManifest.js +531 -0
- package/dist/validate/activationPackageSemantics.js +29 -0
- package/dist/validate/appHomeContract.js +2 -8
- 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 +39 -45
- package/dist/validate/v1LegacyCruft.js +131 -0
- package/dist/validate/vocabularyAuthority.js +18 -13
- package/package.json +60 -29
- 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 -369
- package/bundle/references/cli/bundle-skill-vocabulary.yaml +0 -250
- package/bundle/references/cli/capability-tool-classification.yaml +0 -53
- package/bundle/references/cli/coexistence-probe.yaml +0 -9
- package/bundle/references/cli/routing-execution-vocabulary.yaml +0 -281
- package/bundle/references/cli/single-name-protocol.yaml +0 -42
- package/bundle/references/cli/upgrade-repair-wording.md +0 -31
- package/bundle/references/cli/v3-handoff-manifest.schema.yaml +0 -98
- package/bundle/references/meta/documentation-inventory.md +0 -49
- 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/dist/analytics/extractCorpus/cli.js.map +0 -1
- package/dist/analytics/extractCorpus/copilotSessions.js.map +0 -1
- package/dist/analytics/extractCorpus/core.js.map +0 -1
- package/dist/analytics/extractCorpus/corpus.js.map +0 -1
- package/dist/analytics/extractCorpus/cursorSessions.js.map +0 -1
- package/dist/analytics/extractCorpus/filesystemSources.js.map +0 -1
- package/dist/analytics/extractCorpus/index.js.map +0 -1
- package/dist/analytics/extractCorpus/jsonlSessions.js.map +0 -1
- package/dist/analytics/extractCorpus/sqliteSessions.js.map +0 -1
- 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/benchmark.js.map +0 -1
- package/dist/cli/capabilityContext/bespoke.js.map +0 -1
- package/dist/cli/capabilityContext/closeout.js.map +0 -1
- package/dist/cli/capabilityContext/contract.js.map +0 -1
- package/dist/cli/capabilityContext/evidence.js.map +0 -1
- package/dist/cli/capabilityContext/index.js.map +0 -1
- package/dist/cli/capabilityContext/orchestration.js.map +0 -1
- package/dist/cli/capabilityContext/planState.js.map +0 -1
- package/dist/cli/capabilityContext/progress.js.map +0 -1
- package/dist/cli/capabilityContext/realisera.js +0 -174
- package/dist/cli/capabilityContext/realisera.js.map +0 -1
- package/dist/cli/capabilityContext/shared.js.map +0 -1
- package/dist/cli/capabilityContext/slim.js.map +0 -1
- package/dist/cli/capabilityContext/startup.js.map +0 -1
- package/dist/cli/capabilityContext/types.js.map +0 -1
- package/dist/cli/capabilityContext.js.map +0 -1
- package/dist/cli/commands/backfill.js +0 -84
- package/dist/cli/commands/backfill.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/decisions.js.map +0 -1
- package/dist/cli/commands/state/docs.js.map +0 -1
- package/dist/cli/commands/state/experiments.js.map +0 -1
- package/dist/cli/commands/state/health.js.map +0 -1
- package/dist/cli/commands/state/index.js.map +0 -1
- package/dist/cli/commands/state/objective.js.map +0 -1
- package/dist/cli/commands/state/plan.js.map +0 -1
- package/dist/cli/commands/state/progress.js.map +0 -1
- package/dist/cli/commands/state/shared.js.map +0 -1
- package/dist/cli/commands/state/todo.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/check.js.map +0 -1
- package/dist/cli/dispatch/index.js.map +0 -1
- package/dist/cli/dispatch/lifecycle.js.map +0 -1
- package/dist/cli/dispatch/prime.js.map +0 -1
- package/dist/cli/dispatch/shared.js.map +0 -1
- package/dist/cli/dispatch/state.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/git.js +0 -43
- package/dist/core/git.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/apply.js.map +0 -1
- package/dist/hooks/compaction/dryRun.js.map +0 -1
- package/dist/hooks/compaction/index.js.map +0 -1
- package/dist/hooks/compaction/parse.js.map +0 -1
- package/dist/hooks/compaction/retention.js.map +0 -1
- package/dist/hooks/compaction/status.js.map +0 -1
- package/dist/hooks/compaction/types.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 -203
- package/dist/hooks/sessionStop.js.map +0 -1
- package/dist/hooks/validateArtifact/agentFacing.js.map +0 -1
- package/dist/hooks/validateArtifact/index.js.map +0 -1
- package/dist/hooks/validateArtifact/markdown.js.map +0 -1
- package/dist/hooks/validateArtifact/runtime.js +0 -83
- package/dist/hooks/validateArtifact/runtime.js.map +0 -1
- package/dist/hooks/validateArtifact/schema.js.map +0 -1
- package/dist/hooks/validateArtifact/traversal.js.map +0 -1
- package/dist/hooks/validateArtifact/violations.js.map +0 -1
- package/dist/hooks/validateArtifact.js +0 -924
- package/dist/hooks/validateArtifact.js.map +0 -1
- package/dist/migrate/v2HandoffManifest.js.map +0 -1
- package/dist/registries/artifactProtocolIds.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/release/releaseMetadata.js.map +0 -1
- package/dist/setup/codex/agents.js +0 -96
- package/dist/setup/codex/agents.js.map +0 -1
- package/dist/setup/codex/cli.js +0 -161
- package/dist/setup/codex/cli.js.map +0 -1
- package/dist/setup/codex/configToml.js +0 -644
- package/dist/setup/codex/configToml.js.map +0 -1
- package/dist/setup/codex/constants.js +0 -29
- package/dist/setup/codex/constants.js.map +0 -1
- package/dist/setup/codex/installRoot.js +0 -64
- package/dist/setup/codex/installRoot.js.map +0 -1
- package/dist/setup/codex/state.js +0 -270
- package/dist/setup/codex/state.js.map +0 -1
- package/dist/setup/codex.js +0 -12
- 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/core.js +0 -300
- package/dist/setup/doctor/core.js.map +0 -1
- package/dist/setup/doctor/diagnostics.js +0 -247
- package/dist/setup/doctor/diagnostics.js.map +0 -1
- package/dist/setup/doctor/opencode.js +0 -281
- package/dist/setup/doctor/opencode.js.map +0 -1
- package/dist/setup/doctor/report.js +0 -474
- package/dist/setup/doctor/report.js.map +0 -1
- package/dist/setup/doctor.js +0 -10
- package/dist/setup/doctor.js.map +0 -1
- package/dist/setup/opencode.js.map +0 -1
- package/dist/setup/smokeChecks.js.map +0 -1
- package/dist/state/installRoot.js.map +0 -1
- package/dist/state/progressCommit.js +0 -289
- package/dist/state/progressCommit.js.map +0 -1
- package/dist/state/startupAnalysis/benchmark.js.map +0 -1
- package/dist/state/startupAnalysis/contract.js.map +0 -1
- package/dist/state/startupAnalysis/helpers.js.map +0 -1
- package/dist/state/startupAnalysis/index.js.map +0 -1
- package/dist/state/startupAnalysis/metrics.js.map +0 -1
- package/dist/state/startupAnalysis/records.js.map +0 -1
- package/dist/state/startupAnalysis/report.js.map +0 -1
- package/dist/state/startupAnalysis/threshold.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/coexistenceProbe.js +0 -83
- package/dist/upgrade/coexistenceProbe.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/v3CapabilitySurface.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/dist/validate/vocabularyAuthority.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,488 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "agentera.packagePublication.v2",
|
|
3
|
+
"owner": "repository/package scripts",
|
|
4
|
+
"invariants": {
|
|
5
|
+
"preparation": "Preparation is pure and registry-independent. Serialized feat/v3 integration preparation requires a clean committed source tree, allocates exactly dev.N+1 locally, sets agentera.gitRef to that source HEAD, and changes only the development manifest for a final metadata commit. The manual readiness preparation path first validates a current normalized source receipt, then accepts an explicit target version and source commit. Stable preparation retains its separate source-provenance contract.",
|
|
6
|
+
"sourceQualification": "Source qualification never repairs source. It issues a content-addressed receipt only after every declared source gate succeeds against a clean committed tree. A matching receipt is a deterministic local cache, not an authorization boundary.",
|
|
7
|
+
"candidateQualification": "Candidate qualification validates a current source receipt, constructs one retained immutable tarball with the contract-required retained mode, proves dry-pack observation equivalence, and runs a local exact-artifact smoke in an empty isolated npm state before any registry effect.",
|
|
8
|
+
"publication": "Registry publication consumes the retained candidate bytes through one measured stage, independent exact-version L2, and promote envelope. Stage and promotion include their required registry convergence and observational checks. The envelope never reconstructs an artifact, reruns source qualification, or rolls a tag back.",
|
|
9
|
+
"approval": "Registry mutation requires an approval bound to the candidate receipt digest, target version, integrity, package, registry, and tag. A serialized push to feat/v3 may issue the development approval automatically only after the committed dev.N increment, source qualification, candidate qualification, and CI attestation pass. Stable publication retains explicit protected-environment review on main. A push never substitutes for candidate binding.",
|
|
10
|
+
"replay": "A matching exact version, integrity, and required tag state is a successful no-upload replay. Conflicting integrity, an escaped artifact, a stale tag, or any unrecognized registry state fails before mutation.",
|
|
11
|
+
"credentials": "Registry inspection runs before credentials are required. Only the npm mutation child receives a mode-0600 temporary user config. Tool probes and every npm, pnpm, and npx child, including receipt validation during stage and promotion, use isolated user/global config, home, cache, and sanitized npm/pnpm environments.",
|
|
12
|
+
"output": "Every transaction phase emits a bounded start and end result with package, version, phase, outcome, elapsedMs, executed, reused, and nextAction. The qualified-publication coordinator emits one content-bound timing receipt in JSON or equivalent human output with measured component and total durations, strict budget status, first failure, reconciliation, and replay state. Diagnostics redact credentials and private absolute paths."
|
|
13
|
+
},
|
|
14
|
+
"packages": {
|
|
15
|
+
"development": {
|
|
16
|
+
"label": "development TypeScript package",
|
|
17
|
+
"packagePath": "packages/cli",
|
|
18
|
+
"manifestPath": "packages/cli/package.json",
|
|
19
|
+
"expectedTag": "next",
|
|
20
|
+
"preparation": "incrementDevPrerelease",
|
|
21
|
+
"construction": "isolatedTypeScriptPackage",
|
|
22
|
+
"smoke": ["npx", "-y", "agentera@{version}", "--version"],
|
|
23
|
+
"localSmoke": ["agentera", "--version"]
|
|
24
|
+
},
|
|
25
|
+
"stable": {
|
|
26
|
+
"label": "transitional stable shim",
|
|
27
|
+
"packagePath": "packages/cli/shim",
|
|
28
|
+
"manifestPath": "packages/cli/shim/package.json",
|
|
29
|
+
"expectedTag": "latest",
|
|
30
|
+
"preparation": "incrementPatch",
|
|
31
|
+
"construction": "stableShim",
|
|
32
|
+
"smoke": ["npx", "-y", "agentera@{version}", "--version"],
|
|
33
|
+
"localSmoke": ["agentera", "--version"],
|
|
34
|
+
"sourceProvenance": {
|
|
35
|
+
"rule": "agentera.gitRef must name a commit with exactly the current shim packaged inputs. Only package.json version and agentera.gitRef may differ because preparation owns those fields.",
|
|
36
|
+
"packagedInputs": [
|
|
37
|
+
"packages/cli/shim/bin",
|
|
38
|
+
"packages/cli/shim/lib",
|
|
39
|
+
"packages/cli/shim/README.md",
|
|
40
|
+
"packages/cli/shim/LICENSE"
|
|
41
|
+
],
|
|
42
|
+
"permittedManifestDifferences": ["version", "agentera.gitRef"]
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"ci": {
|
|
47
|
+
"repository": "jgabor/agentera",
|
|
48
|
+
"qualificationWorkflow": {
|
|
49
|
+
"name": "Qualify release candidate",
|
|
50
|
+
"path": ".github/workflows/qualify-candidate.yml",
|
|
51
|
+
"ref": "refs/heads/feat/v3"
|
|
52
|
+
},
|
|
53
|
+
"developmentPush": {
|
|
54
|
+
"trigger": "push to refs/heads/feat/v3",
|
|
55
|
+
"versionAuthority": "packages/cli/package.json committed by the serialized local feat/v3 integrator",
|
|
56
|
+
"preparationCommand": "pnpm cli:prepare:dev-push -- --json",
|
|
57
|
+
"validationCommand": "pnpm cli:validate:dev-push -- --before-commit BEFORE --metadata-commit HEAD --json",
|
|
58
|
+
"rules": [
|
|
59
|
+
"BEFORE must be an ancestor of the source commit",
|
|
60
|
+
"HEAD must be one non-merge metadata-only commit after the source commit",
|
|
61
|
+
"source must retain the BEFORE development version",
|
|
62
|
+
"HEAD must increment dev.N exactly once and set agentera.gitRef to the source commit",
|
|
63
|
+
"routine CI defers its duplicate release conjunction on direct feat/v3 pushes",
|
|
64
|
+
"CI never allocates a version or uses github.run_number",
|
|
65
|
+
"reruns reuse the same version, candidate, and source run identity"
|
|
66
|
+
],
|
|
67
|
+
"approval": "After exact candidate qualification and CI attestation, the workflow issues a machine candidate-bound development approval and publishes to next without a review environment.",
|
|
68
|
+
"concurrency": "The local integrator waits for the prior development workflow to finish before another push. One non-cancelling workflow group protects the active run; it is not used as an unbounded queue."
|
|
69
|
+
},
|
|
70
|
+
"publicationRunBinding": {
|
|
71
|
+
"beforeArtifactDownload": [
|
|
72
|
+
"run.id",
|
|
73
|
+
"run.repository.full_name",
|
|
74
|
+
"run.head_repository.full_name",
|
|
75
|
+
"run.name",
|
|
76
|
+
"run.path",
|
|
77
|
+
"run.head_branch",
|
|
78
|
+
"run.head_sha",
|
|
79
|
+
"run.event",
|
|
80
|
+
"run.conclusion"
|
|
81
|
+
],
|
|
82
|
+
"refRule": "qualificationWorkflow.ref is a full refs/heads branch ref; run.head_branch must equal its exact branch name",
|
|
83
|
+
"beforeEnvironmentApproval": "The content-validated candidate receipt metadataCommit must equal the API-backed run.head_sha"
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"qualification": {
|
|
87
|
+
"source": {
|
|
88
|
+
"component": "release-source",
|
|
89
|
+
"issuanceAuthority": "A new source receipt can be issued only by the contracted GitHub Actions qualification workflow at the committed checkout SHA. Existing valid receipts remain reusable through the read-only source check.",
|
|
90
|
+
"inputs": [
|
|
91
|
+
"tracked_tree_except_package_version_gitRef",
|
|
92
|
+
"verification_policy",
|
|
93
|
+
"lockfile",
|
|
94
|
+
"node",
|
|
95
|
+
"npm",
|
|
96
|
+
"pnpm",
|
|
97
|
+
"gate_set"
|
|
98
|
+
],
|
|
99
|
+
"gates": [
|
|
100
|
+
{
|
|
101
|
+
"name": "source",
|
|
102
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "test:source"],
|
|
103
|
+
"owner": "packages/cli/scripts/verify-lane.mjs#source",
|
|
104
|
+
"correction": "pnpm -C packages/cli run test:source"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"name": "stress",
|
|
108
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "test:stress"],
|
|
109
|
+
"owner": "packages/cli/scripts/verify-lane.mjs#stress",
|
|
110
|
+
"correction": "pnpm -C packages/cli run test:stress"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"name": "performance",
|
|
114
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "test:performance"],
|
|
115
|
+
"owner": "packages/cli/scripts/verify-lane.mjs#performance",
|
|
116
|
+
"correction": "pnpm -C packages/cli run test:performance"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"name": "capacity",
|
|
120
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "test:capacity"],
|
|
121
|
+
"owner": "packages/cli/scripts/verify-lane.mjs#capacity",
|
|
122
|
+
"correction": "pnpm -C packages/cli run test:capacity"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "package",
|
|
126
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "verify:package"],
|
|
127
|
+
"owner": "packages/cli/scripts/verify-lane.mjs#package",
|
|
128
|
+
"correction": "pnpm -C packages/cli run verify:package"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"name": "generated-overlap",
|
|
132
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "verify:generated-overlap"],
|
|
133
|
+
"owner": "packages/cli/scripts/verify-generated-overlap.mjs#runGeneratedOverlap",
|
|
134
|
+
"correction": "pnpm -C packages/cli run verify:generated-overlap"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "typecheck",
|
|
138
|
+
"command": ["pnpm", "-C", "packages/cli", "run", "typecheck"],
|
|
139
|
+
"owner": "packages/cli/package.json#scripts.typecheck",
|
|
140
|
+
"correction": "pnpm -C packages/cli run typecheck"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"name": "build",
|
|
144
|
+
"command": ["pnpm", "-C", "packages/cli", "build"],
|
|
145
|
+
"owner": "packages/cli/scripts/build-package.mjs#main",
|
|
146
|
+
"correction": "pnpm -C packages/cli build"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"name": "compact",
|
|
150
|
+
"command": ["node", "packages/cli/dist/bin/agentera.js", "check", "compact"],
|
|
151
|
+
"owner": "packages/cli/src/cli/commands/compact.ts#cmdGate",
|
|
152
|
+
"correction": "node packages/cli/dist/bin/agentera.js check compact"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"name": "capability-contract",
|
|
156
|
+
"command": [
|
|
157
|
+
"node",
|
|
158
|
+
"packages/cli/dist/bin/agentera.js",
|
|
159
|
+
"check",
|
|
160
|
+
"validate",
|
|
161
|
+
"capability-contract",
|
|
162
|
+
"--format",
|
|
163
|
+
"json"
|
|
164
|
+
],
|
|
165
|
+
"owner": "packages/cli/src/cli/commands/validate.ts#cmdValidateCapabilityContract",
|
|
166
|
+
"correction": "node packages/cli/dist/bin/agentera.js check validate capability-contract --format json"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"name": "activation-conjunction",
|
|
170
|
+
"command": [
|
|
171
|
+
"node",
|
|
172
|
+
"packages/cli/dist/bin/agentera.js",
|
|
173
|
+
"check",
|
|
174
|
+
"validate",
|
|
175
|
+
"activation-conjunction",
|
|
176
|
+
"--format",
|
|
177
|
+
"json"
|
|
178
|
+
],
|
|
179
|
+
"owner": "packages/cli/src/validate/activationConjunction.ts#activationConjunctionMain",
|
|
180
|
+
"correction": "node packages/cli/dist/bin/agentera.js check validate activation-conjunction --format json"
|
|
181
|
+
}
|
|
182
|
+
],
|
|
183
|
+
"performanceEvidenceSchema": "agentera.entityAuthorityPerformanceEvidence.v1",
|
|
184
|
+
"overlapEvidenceSchema": "agentera.generatedOverlapEvidence.v1",
|
|
185
|
+
"gateEvidence": "A source receipt contains the exact eleven governed gates in contract order. Every gate has its governed origin and phase, outcome passed, a finite non-negative duration, the exact executed/reused shape, and gate-relevant observations. Digest validation precedes semantic validation; either kind of one-field tampering fails closed.",
|
|
186
|
+
"activationConjunction": {
|
|
187
|
+
"gateIdentity": "agentera.activationConjunction.v1",
|
|
188
|
+
"classes": ["cli", "capability", "runtime", "reference", "state", "package", "bootstrap"],
|
|
189
|
+
"dimensions": [
|
|
190
|
+
"discovery",
|
|
191
|
+
"behavior",
|
|
192
|
+
"diagnostics",
|
|
193
|
+
"package_projection",
|
|
194
|
+
"instructions",
|
|
195
|
+
"adversarial"
|
|
196
|
+
],
|
|
197
|
+
"checkIds": [
|
|
198
|
+
"cli.discovery",
|
|
199
|
+
"cli.behavior",
|
|
200
|
+
"cli.diagnostics",
|
|
201
|
+
"cli.package_projection",
|
|
202
|
+
"cli.instructions",
|
|
203
|
+
"cli.adversarial",
|
|
204
|
+
"capability.discovery",
|
|
205
|
+
"capability.behavior",
|
|
206
|
+
"capability.diagnostics",
|
|
207
|
+
"capability.package_projection",
|
|
208
|
+
"capability.instructions",
|
|
209
|
+
"capability.adversarial",
|
|
210
|
+
"runtime.discovery",
|
|
211
|
+
"runtime.behavior",
|
|
212
|
+
"runtime.diagnostics",
|
|
213
|
+
"runtime.package_projection",
|
|
214
|
+
"runtime.instructions",
|
|
215
|
+
"runtime.adversarial",
|
|
216
|
+
"reference.discovery",
|
|
217
|
+
"reference.behavior",
|
|
218
|
+
"reference.diagnostics",
|
|
219
|
+
"reference.package_projection",
|
|
220
|
+
"reference.instructions",
|
|
221
|
+
"reference.adversarial",
|
|
222
|
+
"state.discovery",
|
|
223
|
+
"state.behavior",
|
|
224
|
+
"state.diagnostics",
|
|
225
|
+
"state.package_projection",
|
|
226
|
+
"state.instructions",
|
|
227
|
+
"state.adversarial",
|
|
228
|
+
"package.discovery",
|
|
229
|
+
"package.behavior",
|
|
230
|
+
"package.diagnostics",
|
|
231
|
+
"package.package_projection",
|
|
232
|
+
"package.instructions",
|
|
233
|
+
"package.adversarial",
|
|
234
|
+
"bootstrap.discovery",
|
|
235
|
+
"bootstrap.behavior",
|
|
236
|
+
"bootstrap.diagnostics",
|
|
237
|
+
"bootstrap.package_projection",
|
|
238
|
+
"bootstrap.instructions",
|
|
239
|
+
"bootstrap.adversarial"
|
|
240
|
+
],
|
|
241
|
+
"bounds": {
|
|
242
|
+
"maxRows": 320,
|
|
243
|
+
"maxViolations": 40,
|
|
244
|
+
"maxDiagnosticCharacters": 500,
|
|
245
|
+
"maxOutputBytes": 196608,
|
|
246
|
+
"maxGenerationIdCharacters": 36,
|
|
247
|
+
"maxPathCharacters": 240,
|
|
248
|
+
"maxSymbolCharacters": 120,
|
|
249
|
+
"maxSelectorCharacters": 240,
|
|
250
|
+
"maxCorrectionCharacters": 320,
|
|
251
|
+
"maxCheckIdCharacters": 80,
|
|
252
|
+
"maxSurfaceIdCharacters": 240
|
|
253
|
+
},
|
|
254
|
+
"owners": {
|
|
255
|
+
"cli": {
|
|
256
|
+
"path": "packages/cli/src/cli/dispatch/commands.ts",
|
|
257
|
+
"symbol": "DISPATCHER_TOP_LEVEL_COMMANDS",
|
|
258
|
+
"correction": "pnpm -C packages/cli test:source -- test/cli/activationConjunction.test.ts"
|
|
259
|
+
},
|
|
260
|
+
"capability": {
|
|
261
|
+
"path": "packages/cli/src/capabilities/index.ts",
|
|
262
|
+
"symbol": "CAPABILITY_INSTRUCTIONS",
|
|
263
|
+
"correction": "pnpm -C packages/cli test:source -- test/cli/activationConjunction.test.ts"
|
|
264
|
+
},
|
|
265
|
+
"runtime": {
|
|
266
|
+
"path": "packages/cli/src/runtime/lifecycleAuthority.ts",
|
|
267
|
+
"symbol": "loadLifecycleAuthority",
|
|
268
|
+
"correction": "pnpm -C packages/cli test:source -- test/runtime/runtimeLifecycle.test.ts"
|
|
269
|
+
},
|
|
270
|
+
"reference": {
|
|
271
|
+
"path": "packages/cli/src/validate/retainedReferenceAuthority.ts",
|
|
272
|
+
"symbol": "validateRetainedReferenceAuthority",
|
|
273
|
+
"correction": "node packages/cli/dist/bin/agentera.js check validate retained-references --format json"
|
|
274
|
+
},
|
|
275
|
+
"state": {
|
|
276
|
+
"path": "packages/cli/src/state/write/runtimeOperations.ts",
|
|
277
|
+
"symbol": "runtimeOperationSpecs",
|
|
278
|
+
"correction": "node packages/cli/dist/bin/agentera.js check validate state --format json"
|
|
279
|
+
},
|
|
280
|
+
"package": {
|
|
281
|
+
"path": "packages/cli/src/registries/packageRegistry.ts",
|
|
282
|
+
"symbol": "loadRegistry",
|
|
283
|
+
"correction": "pnpm -C packages/cli run verify:package"
|
|
284
|
+
},
|
|
285
|
+
"bootstrap": {
|
|
286
|
+
"path": "packages/cli/src/validate/bootstrapAuthority.ts",
|
|
287
|
+
"symbol": "bootstrapMatrixAuthority",
|
|
288
|
+
"correction": "pnpm -C packages/cli test:source -- test/cli/runtimeBootstrapMatrix.test.ts"
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
"census": {
|
|
292
|
+
"algorithm": "sha256(sorted_utf8_ids_joined_by_lf)",
|
|
293
|
+
"classes": {
|
|
294
|
+
"cli": {
|
|
295
|
+
"count": 27,
|
|
296
|
+
"sha256": "986a637f5c11c57ab7a897a01bd291d0811846e5339c3831c715932cf9659ad4"
|
|
297
|
+
},
|
|
298
|
+
"capability": {
|
|
299
|
+
"count": 12,
|
|
300
|
+
"sha256": "007e1157a892fec54182b1803aeaa442cf8e2e332e6a055c3bd020e2b0731867"
|
|
301
|
+
},
|
|
302
|
+
"runtime": {
|
|
303
|
+
"count": 81,
|
|
304
|
+
"sha256": "03fe600a3a27f05daf0d1b59c16b00bedc354a13c70ea60be0b457175fdf743c"
|
|
305
|
+
},
|
|
306
|
+
"reference": {
|
|
307
|
+
"count": 22,
|
|
308
|
+
"sha256": "2b48c82bb7ee10388d9ebb4fa7ea3743ea82a7e9aaedfcd5a858eeedb9d891ae"
|
|
309
|
+
},
|
|
310
|
+
"state": {
|
|
311
|
+
"count": 38,
|
|
312
|
+
"sha256": "7ab0dd6ef1b1b1ce66bd9ea94d1de3d542528233e928a44102e289bf12416681"
|
|
313
|
+
},
|
|
314
|
+
"package": {
|
|
315
|
+
"count": 66,
|
|
316
|
+
"sha256": "3548af7e84151c90690a6eb3d1cb6c7847f39b290161ecab599d8cb1bf0d2cb0"
|
|
317
|
+
},
|
|
318
|
+
"bootstrap": {
|
|
319
|
+
"count": 34,
|
|
320
|
+
"sha256": "71c2038744e2518a6adb722acbb5f9352bddfb5d1c92eeb0e347297ef2ca2f1e"
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
"total": {
|
|
324
|
+
"count": 280,
|
|
325
|
+
"sha256": "051ed9a57857a39e11ed8fb583bff9d2a67a306c5ab897a0ee829212468bc23a"
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
},
|
|
329
|
+
"reuseCheck": {
|
|
330
|
+
"command": "node packages/cli/scripts/release-qualification.mjs source-check --candidate-dir DIR [--json]",
|
|
331
|
+
"authority": "The external path is input only. Reuse requires digest, full receipt semantics, exact governed gates, current toolchain, and matching current staged and working tracked-tree identities under the same package version and agentera.gitRef normalization used at source qualification.",
|
|
332
|
+
"effects": "Runs no qualification gate and writes no repository, candidate, receipt, or registry state. Success emits executed none and reused true without receipt content or private paths.",
|
|
333
|
+
"fallback": "A missing, invalid, ambiguous, or stale receipt fails before manual readiness metadata effects. Serialized integration preparation and the local staged-verification lane do not consume release receipts.",
|
|
334
|
+
"scope": "Manual readiness preparation uses the check as a source-readiness prerequisite. Direct diagnostics may inspect reuse without executing a gate. Build, compact, parity, candidate qualification, release metadata, approval, and publication remain mandatory at their owning stages."
|
|
335
|
+
},
|
|
336
|
+
"dag": {
|
|
337
|
+
"batchA": ["generated-overlap", "stress", "typecheck"],
|
|
338
|
+
"performanceBarrier": ["performance"],
|
|
339
|
+
"capacityBarrier": ["capacity"],
|
|
340
|
+
"generatedOverlapOrigins": ["source", "package", "build", "generated-overlap"],
|
|
341
|
+
"barrierB": ["compact", "capability-contract", "activation-conjunction"],
|
|
342
|
+
"generatedOutputWriter": "generated-overlap",
|
|
343
|
+
"overlapCleanupMarginMs": 10000,
|
|
344
|
+
"overlapParentReconciliationMarginMs": 4000,
|
|
345
|
+
"minimumExecutionWindowMs": {
|
|
346
|
+
"compact": 3000,
|
|
347
|
+
"capability-contract": 3000,
|
|
348
|
+
"activation-conjunction": 6000
|
|
349
|
+
},
|
|
350
|
+
"failure": "The coordinator passes generated-overlap, the solo performance barrier, and the serial capacity barrier the actual source deadline. Overlap stops owned work 10000ms before that deadline, settles and cleans its generated state, and returns at least 4000ms before the deadline for parent reconciliation. The first observed owner failure cancels only cancellable process groups. generated-overlap is cooperatively stopped and never force-killed; performance, capacity, barrier B, and receipt issuance remain blocked after any batch failure, capacity, barrier B, and receipt issuance remain blocked after any performance failure, and barrier B and receipt issuance remain blocked after any capacity failure.",
|
|
351
|
+
"isolation": "Every child receives a distinct HOME, cache, user config, global config, and report output. Batch A provides output isolation. Performance runs alone with one worker on the policy-declared authoritative runner after batch A settles. Capacity then runs serially before the reader barrier."
|
|
352
|
+
},
|
|
353
|
+
"parallelism": "Batch A runs generated-overlap, stress, and typecheck concurrently. generated-overlap is the sole checkout generated-output writer and sole execution origin for source, package, build, and overlap evidence. After batch A settles and passes, performance runs alone in fresh isolated state with one worker. Capacity runs alone after performance. After capacity passes, compact, capability-contract, and activation-conjunction run concurrently as readers of the settled generation."
|
|
354
|
+
},
|
|
355
|
+
"readiness": {
|
|
356
|
+
"schemaVersion": "agentera.releaseReadiness.v1",
|
|
357
|
+
"component": "release-readiness",
|
|
358
|
+
"adapter": "development",
|
|
359
|
+
"command": "node packages/cli/scripts/release-readiness.mjs development --candidate-dir DIR --target-version VERSION --source-commit COMMIT [--metadata-commit COMMIT] [--json]",
|
|
360
|
+
"phases": ["source-readiness", "metadata-review", "candidate-readiness"],
|
|
361
|
+
"receipts": {
|
|
362
|
+
"source": "source-receipt.json",
|
|
363
|
+
"candidate": "candidate-receipt.json"
|
|
364
|
+
},
|
|
365
|
+
"reuse": "A present source receipt is validated with the source reuse check instead of invoking source qualification. A present candidate receipt and retained artifact are validated instead of invoking candidate qualification. Invalid, stale, incomplete, or mismatched evidence rejects the run before an issuance owner starts.",
|
|
366
|
+
"metadataReview": "A successful source qualification or source-receipt reuse pauses before candidate construction until the caller supplies the explicit reviewed metadata commit. The coordinator never prepares metadata, changes a version, commits, approves, rebuilds a valid candidate, stages bytes, or mutates registry state.",
|
|
367
|
+
"outcomes": ["paused", "ready", "rejected"],
|
|
368
|
+
"exitCodes": {
|
|
369
|
+
"paused": 0,
|
|
370
|
+
"ready": 0,
|
|
371
|
+
"rejected": 1
|
|
372
|
+
}
|
|
373
|
+
},
|
|
374
|
+
"candidate": {
|
|
375
|
+
"component": "release-candidate",
|
|
376
|
+
"inputs": [
|
|
377
|
+
"source_receipt",
|
|
378
|
+
"metadata_commit",
|
|
379
|
+
"target_version",
|
|
380
|
+
"source_commit",
|
|
381
|
+
"adapter",
|
|
382
|
+
"package",
|
|
383
|
+
"registry",
|
|
384
|
+
"expected_tag",
|
|
385
|
+
"artifact_bytes",
|
|
386
|
+
"artifact_mode"
|
|
387
|
+
],
|
|
388
|
+
"retainedArtifactMode": "0444",
|
|
389
|
+
"timing": "Candidate qualification records monotonic, non-overlapping release-metadata, construction/equivalence, and exact-artifact-smoke intervals at their true boundaries. Their sum cannot exceed measured candidate elapsed time; explicit unattributed overhead completes an exact reconciliation.",
|
|
390
|
+
"gates": [
|
|
391
|
+
"release-metadata",
|
|
392
|
+
"dry-pack-observation-equivalence",
|
|
393
|
+
"local-exact-artifact-smoke"
|
|
394
|
+
],
|
|
395
|
+
"artifact": {
|
|
396
|
+
"receipt": "candidate-receipt.json",
|
|
397
|
+
"sourceReceipt": "source-receipt.json",
|
|
398
|
+
"mode": "0444",
|
|
399
|
+
"mustRemainWithinCandidateDirectory": true
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
},
|
|
403
|
+
"trust": {
|
|
404
|
+
"local": "A same-principal source receipt is a deterministic cache only. It cannot authorize registry mutation.",
|
|
405
|
+
"ci": "CI registry mutation requires the transferred exact artifact and receipts, a CI attestation bound to the candidate receipt and source run, and a candidate-bound approval. The feat/v3 push workflow may issue development approval automatically after every prior bound check passes; stable main publication requires protected-environment review. OIDC provenance is deferred."
|
|
406
|
+
},
|
|
407
|
+
"registryStateTable": [
|
|
408
|
+
{
|
|
409
|
+
"state": "absent",
|
|
410
|
+
"exactVersion": "absent",
|
|
411
|
+
"candidateTag": "absent",
|
|
412
|
+
"expectedTag": "older-or-absent",
|
|
413
|
+
"stage": "upload exact artifact once",
|
|
414
|
+
"promote": "blocked"
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
"state": "staged",
|
|
418
|
+
"exactVersion": "matching integrity",
|
|
419
|
+
"candidateTag": "target version",
|
|
420
|
+
"expectedTag": "older",
|
|
421
|
+
"stage": "replay without upload and run observational smoke",
|
|
422
|
+
"promote": "move expected tag forward after exact-version qualification"
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"state": "promoted",
|
|
426
|
+
"exactVersion": "matching integrity",
|
|
427
|
+
"candidateTag": "target version or retained history",
|
|
428
|
+
"expectedTag": "target version",
|
|
429
|
+
"stage": "replay without upload",
|
|
430
|
+
"promote": "replay without tag mutation"
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
"state": "conflict",
|
|
434
|
+
"exactVersion": "missing, changed, conflicting, or tag ahead",
|
|
435
|
+
"candidateTag": "any",
|
|
436
|
+
"expectedTag": "any",
|
|
437
|
+
"stage": "fail before mutation",
|
|
438
|
+
"promote": "fail before mutation"
|
|
439
|
+
}
|
|
440
|
+
],
|
|
441
|
+
"benchmark": {
|
|
442
|
+
"environment": "Ubuntu runner or clean local Node 22, npm 10, and pnpm 10.30.3; record exact tool versions in receipts.",
|
|
443
|
+
"fixture": "clean committed checkout and an external empty candidate directory; no tracked or checkout-local generated candidate files.",
|
|
444
|
+
"cacheNetwork": "Preflight uses no registry call. Every qualification DAG child and each smoke use a distinct empty HOME, npm cache, user config, global config, and report output; public npm dependency network access is allowed and recorded as cold-cache. Publication reads the registry before credentials.",
|
|
445
|
+
"repetitions": 3,
|
|
446
|
+
"statistic": "Qualification reports median wall milliseconds over exactly three cold-cache repetitions. Concurrent owner-duration totals are reported separately; only owners in the same parallel phase overlap, while the solo performance and serial capacity barriers contribute ordered wall time. Phase timing reconciles through measured DAG wall time rather than by summing nested owner durations. Qualified publication reports one actual approved transaction because registry mutation is not a benchmark repetition; replays run the same measured envelope and report reused registry phases.",
|
|
447
|
+
"coordinator": "packages/cli/scripts/release-benchmark.mjs has separate qualification and publication commands. qualification runs only preflight and source-plus-candidate qualification and never receives npm credentials. publication runs only the approved stage, independent exact-version L2, and promote commands, measures them with one monotonic deadline, and never runs source qualification.",
|
|
448
|
+
"qualifiedPublication": {
|
|
449
|
+
"command": "node packages/cli/scripts/release-benchmark.mjs publication --adapter ADAPTER --candidate-dir DIR --receipt-file FILE",
|
|
450
|
+
"sequence": [
|
|
451
|
+
"stage retained bytes on the candidate tag, wait for exact integrity convergence, and observe an isolated exact-version registry smoke",
|
|
452
|
+
"run an independent exact-version L2 consumer check while the public tag is unchanged",
|
|
453
|
+
"promote the expected tag forward, wait for tag and integrity convergence, and observe the final exact-version registry smoke"
|
|
454
|
+
],
|
|
455
|
+
"receiptBindings": [
|
|
456
|
+
"candidate_receipt_sha256",
|
|
457
|
+
"metadata_commit",
|
|
458
|
+
"package",
|
|
459
|
+
"version",
|
|
460
|
+
"artifact_sha256",
|
|
461
|
+
"artifact_integrity",
|
|
462
|
+
"source_run_id"
|
|
463
|
+
],
|
|
464
|
+
"timing": "The coordinator measures commands with a monotonic clock. Caller-supplied elapsed data is not accepted. Component floors plus unattributed elapsed time must equal the measured total, and total elapsed time must be strictly less than qualifiedPublicationMs.",
|
|
465
|
+
"failure": "The first child failure label or timeout owner is retained, later phases do not start, and no rollback is attempted. A retry uses the same exact candidate; stage and promote replay matching registry state without upload or backward tag movement."
|
|
466
|
+
},
|
|
467
|
+
"timeouts": {
|
|
468
|
+
"preflightMs": 30000,
|
|
469
|
+
"sourceQualificationMs": 2400000,
|
|
470
|
+
"qualifiedPublicationMs": 120000
|
|
471
|
+
},
|
|
472
|
+
"failureRule": "The first observed failing owner remains the reported label. Cancellable peers are stopped, generated-overlap is allowed to settle without forced termination, barrier B and receipt issuance are blocked, and completed/cancelled failures are reported. No timeout or failure authorizes repair, candidate work, or registry mutation.",
|
|
473
|
+
"workflow": {
|
|
474
|
+
"path": ".github/workflows/qualification-benchmark.yml",
|
|
475
|
+
"trigger": "workflow_dispatch only until default-branch scheduling is explicitly authorized",
|
|
476
|
+
"checkoutRef": "refs/heads/feat/v3",
|
|
477
|
+
"command": "pnpm cli:benchmark:qualification -- --adapter development --candidate-root DIR --json",
|
|
478
|
+
"retainedReport": "qualification-benchmark-${{ github.run_id }}",
|
|
479
|
+
"credentials": "No npm token, approval, publication, stage, promote, or registry mutation path is present."
|
|
480
|
+
}
|
|
481
|
+
},
|
|
482
|
+
"bounds": {
|
|
483
|
+
"registryAttempts": 6,
|
|
484
|
+
"registryDelayMs": 5000,
|
|
485
|
+
"commandTimeoutMs": 120000,
|
|
486
|
+
"diagnosticCharacters": 1000
|
|
487
|
+
}
|
|
488
|
+
}
|