@intentius/chant 0.100.0 → 0.102.0
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/dist/agents/checks.d.ts.map +1 -1
- package/dist/attrref.d.ts.map +1 -1
- package/dist/audit/discover.d.ts.map +1 -1
- package/dist/audit/nginx.d.ts.map +1 -1
- package/dist/audit/prior-art.d.ts +48 -0
- package/dist/audit/prior-art.d.ts.map +1 -1
- package/dist/behaviour-kinds.d.ts.map +1 -1
- package/dist/build.d.ts +6 -0
- package/dist/build.d.ts.map +1 -1
- package/dist/builder.d.ts.map +1 -1
- package/dist/cli/build-options.d.ts +2 -0
- package/dist/cli/build-options.d.ts.map +1 -1
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/carve-emit.d.ts.map +1 -1
- package/dist/cli/commands/check-lexicon.d.ts +16 -0
- package/dist/cli/commands/check-lexicon.d.ts.map +1 -1
- package/dist/cli/commands/import.d.ts +8 -0
- package/dist/cli/commands/import.d.ts.map +1 -1
- package/dist/cli/commands/init-lexicon.d.ts.map +1 -1
- package/dist/cli/commands/init.d.ts +19 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/onboard.d.ts +9 -0
- package/dist/cli/commands/onboard.d.ts.map +1 -1
- package/dist/cli/commands/pinned-upgrade.d.ts +19 -5
- package/dist/cli/commands/pinned-upgrade.d.ts.map +1 -1
- package/dist/cli/handlers/dev.d.ts.map +1 -1
- package/dist/cli/handlers/fan-out.d.ts.map +1 -1
- package/dist/cli/handlers/lifecycle.d.ts.map +1 -1
- package/dist/cli/handlers/misc.d.ts.map +1 -1
- package/dist/cli/handlers/operator.d.ts +9 -0
- package/dist/cli/handlers/operator.d.ts.map +1 -1
- package/dist/cli/handlers/run.d.ts.map +1 -1
- package/dist/cli/lsp/server.d.ts.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/mcp/server.d.ts.map +1 -1
- package/dist/cli/mcp/tools/build.d.ts.map +1 -1
- package/dist/cli/mcp/tools/composites.d.ts.map +1 -1
- package/dist/cli/mcp/tools/explain.d.ts.map +1 -1
- package/dist/cli/mcp/tools/import.d.ts.map +1 -1
- package/dist/cli/mcp/tools/lint.d.ts.map +1 -1
- package/dist/cli/mcp/tools/scaffold.d.ts.map +1 -1
- package/dist/cli/mcp/tools/search.d.ts.map +1 -1
- package/dist/cli/mcp/workspace-tools.d.ts +9 -1
- package/dist/cli/mcp/workspace-tools.d.ts.map +1 -1
- package/dist/cli/registry.d.ts +33 -2
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/codegen/fetch.d.ts.map +1 -1
- package/dist/codegen/naming.d.ts.map +1 -1
- package/dist/codegen/pinned-upgrade.d.ts +67 -3
- package/dist/codegen/pinned-upgrade.d.ts.map +1 -1
- package/dist/codegen/registry.d.ts.map +1 -1
- package/dist/components/capability-plugin-loader.d.ts.map +1 -1
- package/dist/components/capability.d.ts.map +1 -1
- package/dist/components/driver.d.ts.map +1 -1
- package/dist/components/fan-out.d.ts.map +1 -1
- package/dist/components/starter-plugin.d.ts.map +1 -1
- package/dist/components/verbs/process-runner.d.ts.map +1 -1
- package/dist/components/verbs/r2-sync.d.ts.map +1 -1
- package/dist/components/verbs/run-agent.d.ts.map +1 -1
- package/dist/components/verbs/sbom-generator.d.ts.map +1 -1
- package/dist/components/verbs/sign.d.ts.map +1 -1
- package/dist/components/verbs/verify.d.ts.map +1 -1
- package/dist/components/verbs/vuln-gate.d.ts.map +1 -1
- package/dist/components/verbs/vuln-scan.d.ts.map +1 -1
- package/dist/components/verbs/wrangler.d.ts.map +1 -1
- package/dist/composite.d.ts.map +1 -1
- package/dist/config.d.ts +30 -7
- package/dist/config.d.ts.map +1 -1
- package/dist/declarable.d.ts +16 -0
- package/dist/declarable.d.ts.map +1 -1
- package/dist/discovery/cache.d.ts.map +1 -1
- package/dist/discovery/fold-import.d.ts +15 -5
- package/dist/discovery/fold-import.d.ts.map +1 -1
- package/dist/discovery/param-deps.d.ts +16 -0
- package/dist/discovery/param-deps.d.ts.map +1 -1
- package/dist/discovery/sandbox/policy-wire.d.ts.map +1 -1
- package/dist/discovery/specifier-resolve.d.ts +37 -0
- package/dist/discovery/specifier-resolve.d.ts.map +1 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/fold/fold.d.ts +3 -1
- package/dist/fold/fold.d.ts.map +1 -1
- package/dist/graph-detail.d.ts.map +1 -1
- package/dist/graph-ir.d.ts.map +1 -1
- package/dist/graph-layout.d.ts.map +1 -1
- package/dist/import/base-parser.d.ts.map +1 -1
- package/dist/import/embedded.d.ts +7 -0
- package/dist/import/embedded.d.ts.map +1 -1
- package/dist/import/parser-options.d.ts +14 -0
- package/dist/import/parser-options.d.ts.map +1 -0
- package/dist/import/parser.d.ts +17 -0
- package/dist/import/parser.d.ts.map +1 -1
- package/dist/kubectl-context.d.ts.map +1 -1
- package/dist/lexicon-output.d.ts.map +1 -1
- package/dist/lexicon-schema.d.ts +3 -3
- package/dist/lexicon.d.ts +78 -3
- package/dist/lexicon.d.ts.map +1 -1
- package/dist/lifecycle/assert-live.d.ts.map +1 -1
- package/dist/lifecycle/gate-ledger.d.ts +15 -0
- package/dist/lifecycle/gate-ledger.d.ts.map +1 -1
- package/dist/lifecycle/git.d.ts.map +1 -1
- package/dist/lifecycle/member-ledger.d.ts.map +1 -1
- package/dist/lifecycle/observe.d.ts.map +1 -1
- package/dist/lifecycle/plan-digest.d.ts +26 -5
- package/dist/lifecycle/plan-digest.d.ts.map +1 -1
- package/dist/lifecycle/plan-ledger.d.ts.map +1 -1
- package/dist/lifecycle/release-ledger.d.ts.map +1 -1
- package/dist/lifecycle/scenario.d.ts.map +1 -1
- package/dist/lifecycle/status.d.ts.map +1 -1
- package/dist/lifecycle/work-lease.d.ts +61 -2
- package/dist/lifecycle/work-lease.d.ts.map +1 -1
- package/dist/lint/config.d.ts +4 -4
- package/dist/lint/engine.d.ts +6 -0
- package/dist/lint/engine.d.ts.map +1 -1
- package/dist/lsp/lexicon-providers.d.ts.map +1 -1
- package/dist/op/activities/activity-contracts.d.ts +12 -11
- package/dist/op/activities/activity-contracts.d.ts.map +1 -1
- package/dist/op/activities/apply.d.ts +79 -9
- package/dist/op/activities/apply.d.ts.map +1 -1
- package/dist/op/activities/decide.d.ts.map +1 -1
- package/dist/op/activities/index.d.ts +1 -1
- package/dist/op/activities/index.d.ts.map +1 -1
- package/dist/op/activities/lexicon-upgrade.d.ts +44 -12
- package/dist/op/activities/lexicon-upgrade.d.ts.map +1 -1
- package/dist/op/activities/propose-upgrade.d.ts +2 -0
- package/dist/op/activities/propose-upgrade.d.ts.map +1 -1
- package/dist/op/activity-contract.d.ts +1 -1
- package/dist/op/activity-failure.d.ts.map +1 -1
- package/dist/op/activity-profiles.d.ts.map +1 -1
- package/dist/op/builders.d.ts.map +1 -1
- package/dist/op/composites/apply-op.d.ts +12 -5
- package/dist/op/composites/apply-op.d.ts.map +1 -1
- package/dist/op/composites/lexicon-upgrade-op.d.ts +22 -6
- package/dist/op/composites/lexicon-upgrade-op.d.ts.map +1 -1
- package/dist/op/decide-backend.d.ts.map +1 -1
- package/dist/op/decide-read-inputs.d.ts.map +1 -1
- package/dist/op/emulator-lifecycle.d.ts +21 -2
- package/dist/op/emulator-lifecycle.d.ts.map +1 -1
- package/dist/op/gate-approval.d.ts +5 -1
- package/dist/op/gate-approval.d.ts.map +1 -1
- package/dist/op/gate-wait.d.ts.map +1 -1
- package/dist/op/gate.d.ts +19 -3
- package/dist/op/gate.d.ts.map +1 -1
- package/dist/op/index.d.ts +3 -1
- package/dist/op/index.d.ts.map +1 -1
- package/dist/op/local-executor.d.ts +6 -0
- package/dist/op/local-executor.d.ts.map +1 -1
- package/dist/op/operator.d.ts.map +1 -1
- package/dist/op/run-context.d.ts +39 -0
- package/dist/op/run-context.d.ts.map +1 -0
- package/dist/op/run-live.d.ts.map +1 -1
- package/dist/op/runtimes/local.d.ts.map +1 -1
- package/dist/op/source-archive.d.ts.map +1 -1
- package/dist/op/steward-beside.d.ts.map +1 -1
- package/dist/op/steward-points.d.ts.map +1 -1
- package/dist/op/steward.d.ts.map +1 -1
- package/dist/op/types.d.ts +8 -3
- package/dist/op/types.d.ts.map +1 -1
- package/dist/op/work-lease-run.d.ts +24 -4
- package/dist/op/work-lease-run.d.ts.map +1 -1
- package/dist/project-root.d.ts.map +1 -1
- package/dist/provenance.d.ts +21 -0
- package/dist/provenance.d.ts.map +1 -1
- package/dist/pseudo-parameter.d.ts.map +1 -1
- package/dist/reconcile.d.ts.map +1 -1
- package/dist/secret-materialization.d.ts.map +1 -1
- package/dist/serializer.d.ts +8 -0
- package/dist/serializer.d.ts.map +1 -1
- package/dist/telemetry-attribution.d.ts +77 -0
- package/dist/telemetry-attribution.d.ts.map +1 -0
- package/dist/terraform/emit-source.d.ts.map +1 -1
- package/dist/terraform/parse.d.ts.map +1 -1
- package/dist/testing.d.ts.map +1 -1
- package/dist/workspace/__fixtures__/contract-repo.d.ts.map +1 -1
- package/dist/workspace/__fixtures__/decide-workspace.d.ts +1 -1
- package/dist/workspace/__fixtures__/decide-workspace.d.ts.map +1 -1
- package/dist/workspace/agent-cli.d.ts +88 -0
- package/dist/workspace/agent-cli.d.ts.map +1 -0
- package/dist/workspace/box-factory.d.ts +73 -0
- package/dist/workspace/box-factory.d.ts.map +1 -0
- package/dist/workspace/changes-cli.d.ts.map +1 -1
- package/dist/workspace/changes.d.ts +8 -1
- package/dist/workspace/changes.d.ts.map +1 -1
- package/dist/workspace/chant-migrations/chud-lexicon-exit.d.ts.map +1 -1
- package/dist/workspace/checks/boxes.d.ts.map +1 -1
- package/dist/workspace/checks/links.d.ts +1 -0
- package/dist/workspace/checks/links.d.ts.map +1 -1
- package/dist/workspace/checks/live.d.ts +40 -0
- package/dist/workspace/checks/live.d.ts.map +1 -0
- package/dist/workspace/checks.d.ts +26 -2
- package/dist/workspace/checks.d.ts.map +1 -1
- package/dist/workspace/compose-graph.d.ts +73 -0
- package/dist/workspace/compose-graph.d.ts.map +1 -1
- package/dist/workspace/conformance/index.d.ts +67 -6
- package/dist/workspace/conformance/index.d.ts.map +1 -1
- package/dist/workspace/conformance/vitest.d.ts +12 -3
- package/dist/workspace/conformance/vitest.d.ts.map +1 -1
- package/dist/workspace/conformance/writer.d.ts +368 -0
- package/dist/workspace/conformance/writer.d.ts.map +1 -0
- package/dist/workspace/decide.d.ts +1 -1
- package/dist/workspace/decide.d.ts.map +1 -1
- package/dist/workspace/declaration.d.ts +119 -0
- package/dist/workspace/declaration.d.ts.map +1 -1
- package/dist/workspace/declaration.schema.json +368 -4
- package/dist/workspace/export-cli.d.ts +12 -0
- package/dist/workspace/export-cli.d.ts.map +1 -0
- package/dist/workspace/export.d.ts +145 -0
- package/dist/workspace/export.d.ts.map +1 -0
- package/dist/workspace/generated-files.d.ts.map +1 -1
- package/dist/workspace/graph-cache.d.ts.map +1 -1
- package/dist/workspace/graph-cli.d.ts +2 -0
- package/dist/workspace/graph-cli.d.ts.map +1 -1
- package/dist/workspace/identity.d.ts +111 -0
- package/dist/workspace/identity.d.ts.map +1 -0
- package/dist/workspace/import.d.ts +73 -0
- package/dist/workspace/import.d.ts.map +1 -0
- package/dist/workspace/intent-cli.d.ts +7 -4
- package/dist/workspace/intent-cli.d.ts.map +1 -1
- package/dist/workspace/intent-record.d.ts +8 -1
- package/dist/workspace/intent-record.d.ts.map +1 -1
- package/dist/workspace/intent.d.ts +149 -5
- package/dist/workspace/intent.d.ts.map +1 -1
- package/dist/workspace/kinds.d.ts +24 -6
- package/dist/workspace/kinds.d.ts.map +1 -1
- package/dist/workspace/lineage-adopt-cli.d.ts +15 -0
- package/dist/workspace/lineage-adopt-cli.d.ts.map +1 -0
- package/dist/workspace/lineage-adopt.d.ts +106 -0
- package/dist/workspace/lineage-adopt.d.ts.map +1 -0
- package/dist/workspace/lineage-check.d.ts +9 -2
- package/dist/workspace/lineage-check.d.ts.map +1 -1
- package/dist/workspace/lineage-cli.d.ts +6 -1
- package/dist/workspace/lineage-cli.d.ts.map +1 -1
- package/dist/workspace/lineage-hash-index.d.ts +110 -0
- package/dist/workspace/lineage-hash-index.d.ts.map +1 -0
- package/dist/workspace/lineage-init.d.ts +10 -0
- package/dist/workspace/lineage-init.d.ts.map +1 -1
- package/dist/workspace/lineage-lock.d.ts +149 -2
- package/dist/workspace/lineage-lock.d.ts.map +1 -1
- package/dist/workspace/lineage-migrations.d.ts +15 -3
- package/dist/workspace/lineage-migrations.d.ts.map +1 -1
- package/dist/workspace/lineage-provenance.d.ts +18 -0
- package/dist/workspace/lineage-provenance.d.ts.map +1 -0
- package/dist/workspace/lineage-upgrade-cli.d.ts +2 -0
- package/dist/workspace/lineage-upgrade-cli.d.ts.map +1 -1
- package/dist/workspace/lineage-upgrade.d.ts +30 -1
- package/dist/workspace/lineage-upgrade.d.ts.map +1 -1
- package/dist/workspace/lineage-versions.d.ts +116 -0
- package/dist/workspace/lineage-versions.d.ts.map +1 -0
- package/dist/workspace/links.d.ts +31 -5
- package/dist/workspace/links.d.ts.map +1 -1
- package/dist/workspace/ls-generated.d.ts +37 -0
- package/dist/workspace/ls-generated.d.ts.map +1 -0
- package/dist/workspace/ls.d.ts +4 -0
- package/dist/workspace/ls.d.ts.map +1 -1
- package/dist/workspace/member-commands.d.ts.map +1 -1
- package/dist/workspace/nested-graph.d.ts +56 -0
- package/dist/workspace/nested-graph.d.ts.map +1 -0
- package/dist/workspace/nesting.d.ts +21 -0
- package/dist/workspace/nesting.d.ts.map +1 -0
- package/dist/workspace/pin-cli.d.ts +10 -0
- package/dist/workspace/pin-cli.d.ts.map +1 -0
- package/dist/workspace/pin-integrity.d.ts +51 -0
- package/dist/workspace/pin-integrity.d.ts.map +1 -0
- package/dist/workspace/points.d.ts.map +1 -1
- package/dist/workspace/principal-classes.d.ts +114 -0
- package/dist/workspace/principal-classes.d.ts.map +1 -0
- package/dist/workspace/reason-codes.d.ts +47 -3
- package/dist/workspace/reason-codes.d.ts.map +1 -1
- package/dist/workspace/record-assets.d.ts.map +1 -1
- package/dist/workspace/record-sessions.d.ts +7 -11
- package/dist/workspace/record-sessions.d.ts.map +1 -1
- package/dist/workspace/records-checkout.d.ts +54 -0
- package/dist/workspace/records-checkout.d.ts.map +1 -0
- package/dist/workspace/records-cli.d.ts +57 -2
- package/dist/workspace/records-cli.d.ts.map +1 -1
- package/dist/workspace/records-close.d.ts +5 -2
- package/dist/workspace/records-close.d.ts.map +1 -1
- package/dist/workspace/records-since.d.ts.map +1 -1
- package/dist/workspace/records-write.d.ts +23 -4
- package/dist/workspace/records-write.d.ts.map +1 -1
- package/dist/workspace/records.d.ts +58 -5
- package/dist/workspace/records.d.ts.map +1 -1
- package/dist/workspace/returns.d.ts +129 -0
- package/dist/workspace/returns.d.ts.map +1 -0
- package/dist/workspace/runs-cli.d.ts +164 -0
- package/dist/workspace/runs-cli.d.ts.map +1 -0
- package/dist/workspace/runs.d.ts +423 -0
- package/dist/workspace/runs.d.ts.map +1 -0
- package/dist/workspace/source-block.d.ts +1 -1
- package/dist/workspace/source-block.d.ts.map +1 -1
- package/dist/workspace/status-gates.d.ts +15 -3
- package/dist/workspace/status-gates.d.ts.map +1 -1
- package/dist/workspace/status.d.ts +10 -0
- package/dist/workspace/status.d.ts.map +1 -1
- package/dist/workspace/symbols.d.ts +52 -0
- package/dist/workspace/symbols.d.ts.map +1 -0
- package/dist/workspace/template-manifest.d.ts +11 -3
- package/dist/workspace/template-manifest.d.ts.map +1 -1
- package/dist/workspace/trailer-joins.d.ts +46 -0
- package/dist/workspace/trailer-joins.d.ts.map +1 -0
- package/dist/workspace/trailers.d.ts +89 -0
- package/dist/workspace/trailers.d.ts.map +1 -0
- package/dist/workspace/trust/attestor.d.ts +8 -0
- package/dist/workspace/trust/attestor.d.ts.map +1 -1
- package/dist/workspace/trust/dsse.d.ts +58 -0
- package/dist/workspace/trust/dsse.d.ts.map +1 -0
- package/dist/workspace/trust/evidence-cli.d.ts +66 -0
- package/dist/workspace/trust/evidence-cli.d.ts.map +1 -0
- package/dist/workspace/trust/evidence.d.ts +93 -0
- package/dist/workspace/trust/evidence.d.ts.map +1 -0
- package/dist/workspace/trust/policy.d.ts +54 -1
- package/dist/workspace/trust/policy.d.ts.map +1 -1
- package/dist/workspace/trust/provenance.d.ts +21 -1
- package/dist/workspace/trust/provenance.d.ts.map +1 -1
- package/dist/workspace/trust/rotation.d.ts +132 -0
- package/dist/workspace/trust/rotation.d.ts.map +1 -0
- package/dist/workspace/trust/seal.d.ts +33 -0
- package/dist/workspace/trust/seal.d.ts.map +1 -1
- package/dist/workspace/trust/signers-cli.d.ts +49 -0
- package/dist/workspace/trust/signers-cli.d.ts.map +1 -0
- package/dist/workspace/trust/ssh-commit.d.ts +12 -0
- package/dist/workspace/trust/ssh-commit.d.ts.map +1 -1
- package/dist/workspace/trust/test-repo.d.ts +13 -0
- package/dist/workspace/trust/test-repo.d.ts.map +1 -1
- package/dist/workspace/trust/verify.d.ts +15 -0
- package/dist/workspace/trust/verify.d.ts.map +1 -1
- package/dist/workspace/work-cli.d.ts +39 -3
- package/dist/workspace/work-cli.d.ts.map +1 -1
- package/dist/workspace/work-evidence.d.ts +1 -1
- package/dist/workspace/work-evidence.d.ts.map +1 -1
- package/dist/workspace/work.d.ts +26 -1
- package/dist/workspace/work.d.ts.map +1 -1
- package/dist/workspace/workspace-principals.schema.json +60 -0
- package/dist/workspace/write-scope.d.ts +259 -0
- package/dist/workspace/write-scope.d.ts.map +1 -0
- package/dist/yaml.d.ts +21 -39
- package/dist/yaml.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/audit/prior-art.ts +15 -0
- package/src/build.ts +8 -0
- package/src/cli/build-options.ts +4 -1
- package/src/cli/commands/__fixtures__/init-lexicon-output/package.json +1 -1
- package/src/cli/commands/build.ts +2 -0
- package/src/cli/commands/carve-emit-state.test.ts +4 -0
- package/src/cli/commands/carve-emit.ts +5 -19
- package/src/cli/commands/check-lexicon.test.ts +62 -1
- package/src/cli/commands/check-lexicon.ts +36 -6
- package/src/cli/commands/import-live.test.ts +87 -1
- package/src/cli/commands/import-parser-options.test.ts +133 -0
- package/src/cli/commands/import.ts +69 -25
- package/src/cli/commands/init-lexicon/templates/project.ts +1 -1
- package/src/cli/commands/init.test.ts +8 -1
- package/src/cli/commands/init.ts +23 -8
- package/src/cli/commands/lint.test.ts +37 -0
- package/src/cli/commands/onboard.test.ts +53 -3
- package/src/cli/commands/onboard.ts +52 -4
- package/src/cli/commands/pinned-upgrade.ts +73 -33
- package/src/cli/handlers/__snapshots__/build-member.test.ts.snap +2 -2
- package/src/cli/handlers/components.ts +2 -2
- package/src/cli/handlers/dev.ts +8 -6
- package/src/cli/handlers/fan-out.test.ts +6 -6
- package/src/cli/handlers/fan-out.ts +2 -1
- package/src/cli/handlers/graph.test.ts +42 -0
- package/src/cli/handlers/graph.ts +22 -0
- package/src/cli/handlers/lifecycle.test.ts +67 -0
- package/src/cli/handlers/lifecycle.ts +6 -5
- package/src/cli/handlers/misc.ts +2 -0
- package/src/cli/handlers/operator.ts +88 -4
- package/src/cli/handlers/run.test.ts +111 -0
- package/src/cli/handlers/run.ts +85 -24
- package/src/cli/handlers/scenario.ts +2 -2
- package/src/cli/main.test.ts +33 -0
- package/src/cli/main.ts +168 -17
- package/src/cli/mcp/workspace-tools.test.ts +5 -2
- package/src/cli/mcp/workspace-tools.ts +62 -4
- package/src/cli/registry.ts +33 -2
- package/src/cli/serve-mcp-workspace.test.ts +1 -1
- package/src/codegen/pinned-upgrade-multi.test.ts +157 -0
- package/src/codegen/pinned-upgrade-tags.test.ts +112 -0
- package/src/codegen/pinned-upgrade.test.ts +104 -0
- package/src/codegen/pinned-upgrade.ts +250 -56
- package/src/codegen/release-wiring.test.ts +5 -1
- package/src/codegen/testdata/postgres-tags.json +242 -0
- package/src/components/fan-out-output.test.ts +1 -1
- package/src/components/fan-out.test.ts +1 -1
- package/src/components/promote.test.ts +1 -1
- package/src/config.test.ts +21 -0
- package/src/config.ts +27 -0
- package/src/content-digest.test.ts +2 -2
- package/src/declarable.test.ts +21 -0
- package/src/declarable.ts +19 -0
- package/src/discovery/fold-composite.test.ts +41 -5
- package/src/discovery/fold-import.test.ts +129 -0
- package/src/discovery/fold-import.ts +643 -131
- package/src/discovery/fold-package-composite.test.ts +264 -0
- package/src/discovery/fold-specifiers.test.ts +191 -0
- package/src/discovery/param-deps.test.ts +66 -1
- package/src/discovery/param-deps.ts +45 -0
- package/src/discovery/specifier-resolve.ts +344 -0
- package/src/fold/fold.test.ts +39 -1
- package/src/fold/fold.ts +83 -9
- package/src/fold-provenance.test.ts +140 -0
- package/src/graph-ir.test.ts +83 -0
- package/src/graph-ir.ts +29 -0
- package/src/import/embedded.test.ts +20 -0
- package/src/import/embedded.ts +13 -0
- package/src/import/parser-options.ts +46 -0
- package/src/import/parser.ts +20 -0
- package/src/lexicon.ts +79 -3
- package/src/lifecycle/gate-ledger.test.ts +14 -0
- package/src/lifecycle/gate-ledger.ts +18 -1
- package/src/lifecycle/observe.test.ts +18 -0
- package/src/lifecycle/observe.ts +6 -4
- package/src/lifecycle/plan-digest.test.ts +54 -3
- package/src/lifecycle/plan-digest.ts +38 -8
- package/src/lifecycle/snapshot.ts +2 -2
- package/src/lifecycle/work-lease.test.ts +1 -1
- package/src/lifecycle/work-lease.ts +93 -2
- package/src/lint/engine.test.ts +55 -0
- package/src/lint/engine.ts +30 -4
- package/src/lint/output-docs.test.ts +59 -56
- package/src/op/activities/activity-contracts.ts +1 -0
- package/src/op/activities/apply.test.ts +189 -5
- package/src/op/activities/apply.ts +230 -8
- package/src/op/activities/index.ts +3 -0
- package/src/op/activities/lexicon-upgrade.test.ts +160 -6
- package/src/op/activities/lexicon-upgrade.ts +154 -51
- package/src/op/activities/propose-upgrade.ts +8 -5
- package/src/op/composites/apply-op.ts +12 -5
- package/src/op/composites/composites.test.ts +30 -3
- package/src/op/composites/lexicon-upgrade-op.test.ts +7 -2
- package/src/op/composites/lexicon-upgrade-op.ts +29 -8
- package/src/op/emulator-lifecycle.test.ts +23 -0
- package/src/op/emulator-lifecycle.ts +52 -14
- package/src/op/gate-approval.test.ts +91 -0
- package/src/op/gate-approval.ts +5 -1
- package/src/op/gate.ts +34 -8
- package/src/op/index.ts +3 -1
- package/src/op/local-executor.test.ts +15 -0
- package/src/op/local-executor.ts +40 -12
- package/src/op/local-output.ts +1 -1
- package/src/op/operator.ts +4 -0
- package/src/op/run-context.test.ts +141 -0
- package/src/op/run-context.ts +51 -0
- package/src/op/runtimes/local.test.ts +14 -0
- package/src/op/runtimes/local.ts +2 -0
- package/src/op/steward-beside.ts +2 -0
- package/src/op/types.ts +8 -3
- package/src/op/work-lease-run.test.ts +47 -0
- package/src/op/work-lease-run.ts +73 -11
- package/src/provenance.ts +35 -0
- package/src/serializer.ts +9 -0
- package/src/telemetry-attribution.test.ts +91 -0
- package/src/telemetry-attribution.ts +145 -0
- package/src/workspace/__fixtures__/studio-template-84c8b21.json +1 -1
- package/src/workspace/agent-cli.ts +138 -0
- package/src/workspace/agent.schema.json +378 -0
- package/src/workspace/behold-kinds.test.ts +1 -1
- package/src/workspace/box-factory.test.ts +320 -0
- package/src/workspace/box-factory.ts +103 -0
- package/src/workspace/changes-cli.ts +5 -0
- package/src/workspace/changes.schema.json +171 -1
- package/src/workspace/changes.ts +61 -4
- package/src/workspace/check-live.test.ts +192 -0
- package/src/workspace/check.schema.json +64 -0
- package/src/workspace/checks/boxes.test.ts +2 -0
- package/src/workspace/checks/links.ts +23 -2
- package/src/workspace/checks/live.ts +113 -0
- package/src/workspace/checks.test.ts +2 -2
- package/src/workspace/checks.ts +49 -8
- package/src/workspace/compose-graph.test.ts +47 -0
- package/src/workspace/compose-graph.ts +127 -3
- package/src/workspace/conformance/__fixture__/decisions/decision.kind.mjs +7 -1
- package/src/workspace/conformance/__fixture__/decisions/decision.schema.json +5 -0
- package/src/workspace/conformance/__writer_fixture__/answers/answer.kind.mjs +27 -0
- package/src/workspace/conformance/__writer_fixture__/answers/answer.schema.json +95 -0
- package/src/workspace/conformance/__writer_fixture__/decisions/points.json +132 -0
- package/src/workspace/conformance/__writer_fixture__/sessions/session.kind.mjs +48 -0
- package/src/workspace/conformance/__writer_fixture__/sessions/session.schema.json +108 -0
- package/src/workspace/conformance/__writer_fixture__/work/W-001-the-writer-suite-works-this-item.md +25 -0
- package/src/workspace/conformance/__writer_fixture__/work/work.kind.mjs +60 -0
- package/src/workspace/conformance/__writer_fixture__/work/work.schema.json +578 -0
- package/src/workspace/conformance/conformance.e2e.test.ts +35 -3
- package/src/workspace/conformance/index.mjs +30 -3
- package/src/workspace/conformance/index.ts +103 -15
- package/src/workspace/conformance/vitest.ts +44 -2
- package/src/workspace/conformance/writer-conformance.e2e.test.ts +131 -0
- package/src/workspace/conformance/writer.test.ts +156 -0
- package/src/workspace/conformance/writer.ts +880 -0
- package/src/workspace/decide.ts +7 -1
- package/src/workspace/declaration.schema.json +368 -4
- package/src/workspace/declaration.ts +270 -1
- package/src/workspace/declared-kinds.test.ts +33 -0
- package/src/workspace/evidence.schema.json +279 -0
- package/src/workspace/export-cli.ts +180 -0
- package/src/workspace/export-import.test.ts +282 -0
- package/src/workspace/export.ts +486 -0
- package/src/workspace/graph-cli.ts +51 -2
- package/src/workspace/graph-contract.test.ts +89 -4
- package/src/workspace/graph.schema.json +453 -1
- package/src/workspace/identity.test.ts +196 -0
- package/src/workspace/identity.ts +186 -0
- package/src/workspace/import.ts +325 -0
- package/src/workspace/intent-cli.ts +64 -10
- package/src/workspace/intent-record.schema.json +208 -0
- package/src/workspace/intent-record.ts +35 -1
- package/src/workspace/intent-why.test.ts +274 -0
- package/src/workspace/intent.schema.json +718 -7
- package/src/workspace/intent.test.ts +11 -2
- package/src/workspace/intent.ts +495 -32
- package/src/workspace/kinds.test.ts +5 -5
- package/src/workspace/kinds.ts +62 -33
- package/src/workspace/lineage-adopt-cli.ts +103 -0
- package/src/workspace/lineage-adopt.test.ts +552 -0
- package/src/workspace/lineage-adopt.ts +452 -0
- package/src/workspace/lineage-check.ts +26 -5
- package/src/workspace/lineage-cli.ts +12 -2
- package/src/workspace/lineage-hash-index.ts +305 -0
- package/src/workspace/lineage-init.test.ts +9 -0
- package/src/workspace/lineage-init.ts +29 -9
- package/src/workspace/lineage-lock.ts +54 -0
- package/src/workspace/lineage-migrations.test.ts +27 -0
- package/src/workspace/lineage-migrations.ts +44 -14
- package/src/workspace/lineage-provenance.ts +40 -0
- package/src/workspace/lineage-upgrade-cli.ts +9 -5
- package/src/workspace/lineage-upgrade.test.ts +92 -1
- package/src/workspace/lineage-upgrade.ts +111 -16
- package/src/workspace/lineage-versions.ts +348 -0
- package/src/workspace/links.test.ts +121 -2
- package/src/workspace/links.ts +97 -6
- package/src/workspace/ls-contract.test.ts +84 -1
- package/src/workspace/ls-generated.ts +111 -0
- package/src/workspace/ls.schema.json +19 -0
- package/src/workspace/ls.ts +8 -1
- package/src/workspace/member-commands.ts +3 -1
- package/src/workspace/nested-graph.test.ts +176 -0
- package/src/workspace/nested-graph.ts +169 -0
- package/src/workspace/nesting.ts +37 -0
- package/src/workspace/pin-cli.test.ts +71 -0
- package/src/workspace/pin-cli.ts +57 -0
- package/src/workspace/pin-integrity.test.ts +121 -0
- package/src/workspace/pin-integrity.ts +104 -0
- package/src/workspace/points-write.schema.json +2 -0
- package/src/workspace/principal-classes.test.ts +175 -0
- package/src/workspace/principal-classes.ts +307 -0
- package/src/workspace/read-contract.test.ts +24 -0
- package/src/workspace/reason-codes.test.ts +20 -2
- package/src/workspace/reason-codes.ts +53 -3
- package/src/workspace/record-sessions.ts +12 -14
- package/src/workspace/records-amend.schema.json +6 -0
- package/src/workspace/records-checkout.ts +106 -0
- package/src/workspace/records-cli.ts +195 -22
- package/src/workspace/records-close.schema.json +7 -2
- package/src/workspace/records-close.ts +10 -2
- package/src/workspace/records-formats.test.ts +13 -5
- package/src/workspace/records-new.schema.json +6 -0
- package/src/workspace/records-review.schema.json +6 -0
- package/src/workspace/records-sessions.test.ts +23 -6
- package/src/workspace/records-uncommitted.test.ts +171 -0
- package/src/workspace/records-write.test.ts +65 -8
- package/src/workspace/records-write.ts +92 -6
- package/src/workspace/records.schema.json +127 -4
- package/src/workspace/records.ts +123 -5
- package/src/workspace/returns.ts +328 -0
- package/src/workspace/runs-cli.ts +381 -0
- package/src/workspace/runs-write.schema.json +583 -0
- package/src/workspace/runs.schema.json +810 -0
- package/src/workspace/runs.test.ts +242 -0
- package/src/workspace/runs.ts +709 -0
- package/src/workspace/signers.schema.json +206 -0
- package/src/workspace/status-contract.test.ts +5 -0
- package/src/workspace/status-gates.ts +24 -9
- package/src/workspace/status.schema.json +127 -2
- package/src/workspace/status.ts +21 -1
- package/src/workspace/symbols.ts +180 -0
- package/src/workspace/template-manifest.ts +22 -4
- package/src/workspace/trailer-joins.test.ts +171 -0
- package/src/workspace/trailer-joins.ts +82 -0
- package/src/workspace/trailers.ts +148 -0
- package/src/workspace/trust/attestor.ts +15 -0
- package/src/workspace/trust/dsse.ts +134 -0
- package/src/workspace/trust/evidence-cli.ts +195 -0
- package/src/workspace/trust/evidence.test.ts +241 -0
- package/src/workspace/trust/evidence.ts +207 -0
- package/src/workspace/trust/policy.ts +110 -3
- package/src/workspace/trust/provenance.ts +41 -4
- package/src/workspace/trust/record-seal.test.ts +1 -1
- package/src/workspace/trust/rotation.test.ts +258 -0
- package/src/workspace/trust/rotation.ts +336 -0
- package/src/workspace/trust/seal.ts +63 -1
- package/src/workspace/trust/signers-cli.ts +178 -0
- package/src/workspace/trust/ssh-commit.ts +53 -4
- package/src/workspace/trust/test-repo.ts +18 -0
- package/src/workspace/trust/trust.test.ts +8 -2
- package/src/workspace/trust/verify-cli.ts +1 -0
- package/src/workspace/trust/verify.ts +22 -0
- package/src/workspace/work-cli.e2e.test.ts +28 -1
- package/src/workspace/work-cli.ts +133 -8
- package/src/workspace/work-evidence.schema.json +6 -0
- package/src/workspace/work-history.schema.json +73 -1
- package/src/workspace/work-history.test.ts +48 -5
- package/src/workspace/work-kind-fields.test.ts +154 -0
- package/src/workspace/work-lease.schema.json +14 -1
- package/src/workspace/work.ts +82 -0
- package/src/workspace/workspace-principals.schema.json +60 -0
- package/src/workspace/write-scope.test.ts +466 -0
- package/src/workspace/write-scope.ts +573 -0
- package/src/yaml.test.ts +111 -1
- package/src/yaml.ts +141 -549
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* `examples`).
|
|
4
4
|
*
|
|
5
5
|
* A kind is data: a name, a precedence and a probe that says what its
|
|
6
|
-
* directory holds. Probes run no code (K3).
|
|
7
|
-
* member kinds `chant`, `workspace` and `other`, and the group kind
|
|
6
|
+
* directory holds. Probes run no code (K3). Five kinds are built in: the
|
|
7
|
+
* member kinds `chant`, `workspace`, `design` and `other`, and the group kind
|
|
8
8
|
* `examples`. Every other kind comes from a pinned package, which publishes
|
|
9
9
|
* its kinds as a JSON file at a `./workspace-kinds` subpath, the way a
|
|
10
10
|
* lexicon publishes a slim `./detect` entry (#426). chant finds that file
|
|
@@ -109,6 +109,8 @@ export interface KindRegistry {
|
|
|
109
109
|
}
|
|
110
110
|
/** The group kind (ws-051). An entry of this kind is a group, not a member. */
|
|
111
111
|
export declare const EXAMPLES_KIND = "examples";
|
|
112
|
+
/** The data member kind that holds design artifacts (#2549, ws-062). */
|
|
113
|
+
export declare const DESIGN_KIND = "design";
|
|
112
114
|
export declare const BUILTIN_KINDS: readonly MemberKind[];
|
|
113
115
|
export declare const BUILTIN_KIND_NAMES: readonly string[];
|
|
114
116
|
/** A registry holding the built-in kinds and then `extra`, which must not repeat a name. */
|
|
@@ -156,11 +158,12 @@ export interface PackageKinds extends KindData {
|
|
|
156
158
|
file: string | undefined;
|
|
157
159
|
}
|
|
158
160
|
/**
|
|
159
|
-
* Where a package's `exports` send `./workspace-kinds
|
|
160
|
-
*
|
|
161
|
-
*
|
|
161
|
+
* Where a package's `exports` send `./workspace-kinds` (or another data
|
|
162
|
+
* subpath, such as `./workspace-principals`), or undefined when the package
|
|
163
|
+
* doesn't export it. Only the literal key counts: a `./*` pattern maps the
|
|
164
|
+
* subpath to code, which chant never runs for plugin data.
|
|
162
165
|
*/
|
|
163
|
-
export declare function kindsExportTarget(pkg: Record<string, unknown
|
|
166
|
+
export declare function kindsExportTarget(pkg: Record<string, unknown>, subpath?: string): string | undefined | {
|
|
164
167
|
problem: string;
|
|
165
168
|
};
|
|
166
169
|
/** Read the kinds a package directory publishes. Reads files only; imports nothing. */
|
|
@@ -192,6 +195,8 @@ export interface PinLike {
|
|
|
192
195
|
package: string | null;
|
|
193
196
|
version: string | null;
|
|
194
197
|
path: string | null;
|
|
198
|
+
/** A path pin's content hash (#2547). Checked before anything is read from the directory. */
|
|
199
|
+
integrity?: string | null;
|
|
195
200
|
}
|
|
196
201
|
export interface KindLoadProblem {
|
|
197
202
|
/** The pin's index in the declaration's `pins`. */
|
|
@@ -202,6 +207,19 @@ export interface LoadedKinds {
|
|
|
202
207
|
registry: KindRegistry;
|
|
203
208
|
problems: KindLoadProblem[];
|
|
204
209
|
}
|
|
210
|
+
/**
|
|
211
|
+
* The directory a pin's plugin data is read from: an installed package at
|
|
212
|
+
* the pinned version, looked up from `workspaceRoot`, or a path pin's
|
|
213
|
+
* directory, checked against its integrity digest when it has one. Null for
|
|
214
|
+
* a pin that names neither. Shared by the kinds and the principal classes
|
|
215
|
+
* (#3080), so both read a pin the same way.
|
|
216
|
+
*/
|
|
217
|
+
export declare function pinnedPackageDir(pin: PinLike, workspaceRoot: string): {
|
|
218
|
+
dir: string;
|
|
219
|
+
source: string;
|
|
220
|
+
} | {
|
|
221
|
+
problem: string;
|
|
222
|
+
} | null;
|
|
205
223
|
/**
|
|
206
224
|
* Build the registry for a workspace: the built-in kinds plus the kinds
|
|
207
225
|
* every pin publishes. `workspaceRoot` is the absolute workspace root; a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kinds.d.ts","sourceRoot":"","sources":["../../src/workspace/kinds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"kinds.d.ts","sourceRoot":"","sources":["../../src/workspace/kinds.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `chant workspace adopt-lineage [<scope>] --from <repo>[@<ref>][#<member>]
|
|
3
|
+
* [--tags <glob>] [--index <file>] [--param k=v] [--dry-run] [--json]` and
|
|
4
|
+
* `chant workspace hash-index --from <repo>[#<member>] [--tags <glob>]
|
|
5
|
+
* [--output <file>]` (#2551).
|
|
6
|
+
*
|
|
7
|
+
* The first gives a scope a git lineage (see ./lineage-adopt.ts). The second
|
|
8
|
+
* computes the hash index a template's tags give, for the template's CI to
|
|
9
|
+
* publish as a cache that adopters pass with `--index`. Neither needs a
|
|
10
|
+
* `chant.workspace.json`.
|
|
11
|
+
*/
|
|
12
|
+
import type { CommandContext } from "../cli/registry.js";
|
|
13
|
+
export declare function runWorkspaceAdoptLineage(ctx: CommandContext): Promise<number>;
|
|
14
|
+
export declare function runWorkspaceHashIndex(ctx: CommandContext): Promise<number>;
|
|
15
|
+
//# sourceMappingURL=lineage-adopt-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lineage-adopt-cli.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-adopt-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAWtD,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA6CnF;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA6BhF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `chant workspace adopt-lineage`: give a scope a git lineage it can be
|
|
3
|
+
* upgraded from (#2551, D5, D9, requirement P7).
|
|
4
|
+
*
|
|
5
|
+
* Two cases, told apart by what the lock already holds for the scope.
|
|
6
|
+
*
|
|
7
|
+
* A scope with no lineage, such as a project made before the lock existed or
|
|
8
|
+
* copied by hand from a template or a fork of one, has no record of where its
|
|
9
|
+
* files came from. Adoption recovers it from the template's own versions:
|
|
10
|
+
*
|
|
11
|
+
* 1. Compute the template's hash index from its tags (./lineage-hash-index.ts),
|
|
12
|
+
* or reuse a cached copy for the tags whose commit it still names.
|
|
13
|
+
* 2. Score each version against the scope: how many of the template's files
|
|
14
|
+
* the scope holds byte for byte. The best version wins; ties go to the
|
|
15
|
+
* version whose files the scope accounts for best, then to the oldest.
|
|
16
|
+
* 3. Re-check a winner that came from the cache against the template itself,
|
|
17
|
+
* so a stale or forged cache never reaches the lock.
|
|
18
|
+
* 4. Record a lineage pinned to that version. Each file the template has
|
|
19
|
+
* there is recorded with the template's hash, after the template's
|
|
20
|
+
* parameters are substituted (#2627), as its merge base, so a file the
|
|
21
|
+
* scope edited shows as edited and merges on upgrade like any other.
|
|
22
|
+
* 5. Record the adoption under P7: the exact commit range it vouches for,
|
|
23
|
+
* everything up to HEAD, goes into the lineage and into
|
|
24
|
+
* `.chant/trust.json`'s `adopted` list. That file is policy, read at the
|
|
25
|
+
* base revision, and editing it is a protected write, so the range counts
|
|
26
|
+
* only once an admin has merged it. The scope then reads as `adopted`
|
|
27
|
+
* (./lineage-provenance.ts).
|
|
28
|
+
*
|
|
29
|
+
* A scope with a directory lineage (#2647) already has a lineage, but no
|
|
30
|
+
* history to rebuild a merge base from once the directory changes. The
|
|
31
|
+
* studio's boxes are made this way, with `chant init --from ~/box/template`,
|
|
32
|
+
* and a kit release replaces that directory. Adoption moves such a scope onto
|
|
33
|
+
* the git repository the directory was copied from: every candidate version
|
|
34
|
+
* is rendered with the parameters the lock recorded, and only a version that
|
|
35
|
+
* reproduces every hash the lock recorded qualifies. The merge base is then
|
|
36
|
+
* the same files, so the lineage keeps its files, parameters and migrations,
|
|
37
|
+
* and only its source, ref and address change. Nothing about the scope's
|
|
38
|
+
* history is claimed, so no commit range is admitted.
|
|
39
|
+
*/
|
|
40
|
+
import { type HashIndex } from "./lineage-hash-index.js";
|
|
41
|
+
import { type Adoption, type Lineage } from "./lineage-lock.js";
|
|
42
|
+
export interface AdoptOptions {
|
|
43
|
+
/** The directory that holds (or will hold) `.chant/workspace.lock.json`. */
|
|
44
|
+
root: string;
|
|
45
|
+
/** The scope to adopt, relative to `root`. Defaults to `"."`. */
|
|
46
|
+
scope?: string;
|
|
47
|
+
/** `<repo>[@<ref>][#<member>]`: the template. With a ref, adopt at exactly that version. */
|
|
48
|
+
from: string;
|
|
49
|
+
/** Only tags matching this glob are candidates, such as `kit-v*`. */
|
|
50
|
+
tags?: string;
|
|
51
|
+
/** A cached hash index, such as a copy the template's CI published. */
|
|
52
|
+
cache?: HashIndex;
|
|
53
|
+
/** `--param name=value` values for a template with a `chant.template.json`; only for a scope with no lineage. */
|
|
54
|
+
params?: Record<string, string>;
|
|
55
|
+
dryRun?: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface VersionScore {
|
|
58
|
+
tag: string;
|
|
59
|
+
commit: string;
|
|
60
|
+
/** Files the template has at the version. */
|
|
61
|
+
files: number;
|
|
62
|
+
identical: number;
|
|
63
|
+
edited: number;
|
|
64
|
+
missing: number;
|
|
65
|
+
}
|
|
66
|
+
export interface AdoptionResult {
|
|
67
|
+
scope: string;
|
|
68
|
+
/** `files` for a scope with no lineage, `lineage` for a directory lineage moved onto git. */
|
|
69
|
+
by: Adoption["by"];
|
|
70
|
+
template: string;
|
|
71
|
+
chosen: VersionScore;
|
|
72
|
+
/** The next best versions that do not tie with the chosen one, best first, at most three. */
|
|
73
|
+
alternatives: VersionScore[];
|
|
74
|
+
/** Other versions that score exactly as the chosen one does. `@<ref>` in `--from` picks one of them. */
|
|
75
|
+
ties: string[];
|
|
76
|
+
/** How many versions were compared. */
|
|
77
|
+
compared: number;
|
|
78
|
+
/** The files, by how the scope holds them (for `lineage`, by how the lock recorded them). */
|
|
79
|
+
identical: string[];
|
|
80
|
+
edited: string[];
|
|
81
|
+
missing: string[];
|
|
82
|
+
index: Adoption["index"];
|
|
83
|
+
/** The lineage the lock records. */
|
|
84
|
+
lineage: Lineage;
|
|
85
|
+
/** The `.chant/trust.json` entry the adoption adds, for `files`. Null when it is already there or for `lineage`. */
|
|
86
|
+
trust: {
|
|
87
|
+
path: string;
|
|
88
|
+
entry: {
|
|
89
|
+
to: string;
|
|
90
|
+
note: string;
|
|
91
|
+
};
|
|
92
|
+
} | null;
|
|
93
|
+
/** Whether the lock (and the trust entry) were written: false for a dry run. */
|
|
94
|
+
written: boolean;
|
|
95
|
+
/** Whether a `.gitignore` covers the lock, so it would not be committed without `git add -f`. */
|
|
96
|
+
lockIgnored: boolean;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Adopt a lineage for the scope, and record it unless `dryRun`. Throws a
|
|
100
|
+
* {@link LockError} when the scope has a lineage that is not a directory
|
|
101
|
+
* lineage, when no version fits, or when the template cannot be read.
|
|
102
|
+
*/
|
|
103
|
+
export declare function adoptLineage(options: AdoptOptions): AdoptionResult;
|
|
104
|
+
/** One line per fact, for the terminal. */
|
|
105
|
+
export declare function describeAdoption(p: AdoptionResult): string[];
|
|
106
|
+
//# sourceMappingURL=lineage-adopt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lineage-adopt.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-adopt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAKH,OAAO,EAAiD,KAAK,SAAS,EAAuB,MAAM,sBAAsB,CAAC;AAE1H,OAAO,EAWL,KAAK,QAAQ,EACb,KAAK,OAAO,EACb,MAAM,gBAAgB,CAAC;AAQxB,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4FAA4F;IAC5F,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,iHAAiH;IACjH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,6FAA6F;IAC7F,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,6FAA6F;IAC7F,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,wGAAwG;IACxG,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,oHAAoH;IACpH,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACpE,gFAAgF;IAChF,OAAO,EAAE,OAAO,CAAC;IACjB,iGAAiG;IACjG,WAAW,EAAE,OAAO,CAAC;CACtB;AA2GD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,cAAc,CAgDlE;AAmJD,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,EAAE,CA0B5D"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `chant workspace check [--at <rev>] [--json] [--format stylish|json|sarif] [--generated] [--kind <kind file>]`:
|
|
2
|
+
* `chant workspace check [--at <rev>] [--json] [--format stylish|json|sarif] [--generated] [--kind <kind file>] [--live --env <env>]`:
|
|
3
3
|
* the lineage checks (#2550, D9), and the declaration checks (#2535, D16)
|
|
4
4
|
* when a declaration sits between the current directory and the git root.
|
|
5
5
|
*
|
|
@@ -12,7 +12,10 @@
|
|
|
12
12
|
* pipelines (#2542) and generated files (#2541) as well as the declaration
|
|
13
13
|
* itself (#2641). `--generated` runs each declared generator too. `--kind`
|
|
14
14
|
* reads a record kind's records and reports the files they pin by hash that
|
|
15
|
-
* have changed since (#2549).
|
|
15
|
+
* have changed since (#2549). `--live --env <env>` resolves each declared
|
|
16
|
+
* member link against the live graph of `<env>` (`./checks/live.ts`, #2549):
|
|
17
|
+
* it is the one option that reaches a network, through each member's own
|
|
18
|
+
* `chant graph --live`, and is catalogued as egress.
|
|
16
19
|
*
|
|
17
20
|
* `chant workspace upgrade` runs the same checks in its staging worktree
|
|
18
21
|
* before it reaches its gate.
|
|
@@ -85,6 +88,10 @@ export type CheckDocument = (CheckReport & {
|
|
|
85
88
|
export declare function runChecks(cwd: string, at?: string, options?: {
|
|
86
89
|
runGenerators?: boolean;
|
|
87
90
|
kind?: string;
|
|
91
|
+
live?: {
|
|
92
|
+
env: string;
|
|
93
|
+
onStderr?: (text: string) => void;
|
|
94
|
+
};
|
|
88
95
|
}): Promise<CheckDocument>;
|
|
89
96
|
export declare function runWorkspaceCheck(ctx: CommandContext): Promise<number>;
|
|
90
97
|
//# sourceMappingURL=lineage-check.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lineage-check.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-check.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"lineage-check.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-check.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAMvD,yCAAyC;AACzC,eAAO,MAAM,WAAW,+CAAgF,CAAC;AACzG,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,CAsBhF;AAED,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAElD;AAmCD,6DAA6D;AAC7D,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,yFAAyF;AACzF,eAAO,MAAM,sBAAsB,4EAA4E,CAAC;AAEhH,6HAA6H;AAC7H,eAAO,MAAM,iBAAiB,uDAAwF,CAAC;AACvH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE,mFAAmF;AACnF,MAAM,MAAM,aAAa,GACrB,CAAC,WAAW,GAAG;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,qGAAqG;IACrG,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC,CAAC,GACF;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAA;CAAE,CAAC;AAE3H;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAA;CAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CA2DrM;AAcD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAyF5E"}
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
* project (#2525 rule 4).
|
|
10
10
|
*/
|
|
11
11
|
import type { CommandContext } from "../cli/registry.js";
|
|
12
|
-
import { type LineageSource, type ManualStep } from "./lineage-lock.js";
|
|
12
|
+
import { type Adoption, type LineageSource, type ManualStep } from "./lineage-lock.js";
|
|
13
|
+
import { type LineageProvenance } from "./lineage-provenance.js";
|
|
13
14
|
export interface LineageScopeView {
|
|
14
15
|
scope: string;
|
|
15
16
|
kind: "template" | "vendor";
|
|
@@ -23,6 +24,10 @@ export interface LineageScopeView {
|
|
|
23
24
|
edited: string[];
|
|
24
25
|
missing: string[];
|
|
25
26
|
manualSteps: ManualStep[];
|
|
27
|
+
/** How adopt-lineage recorded the lineage (#2551), when it did. */
|
|
28
|
+
adoption?: Adoption;
|
|
29
|
+
/** For a lineage adopted by its files: whether the policy at base admits the adopted range (D5, P7). */
|
|
30
|
+
provenance?: LineageProvenance;
|
|
26
31
|
}
|
|
27
32
|
/** One line naming a scope's source kind and where it points (#2647). */
|
|
28
33
|
export declare function describeSource(source: LineageSource): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lineage-cli.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAA6E,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"lineage-cli.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAA6E,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/J,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIjF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,mHAAmH;IACnH,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,wGAAwG;IACxG,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAa5D;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,gBAAgB,EAAE,CAAA;CAAE,GAAG,IAAI,CAuB7F;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAsC9E"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The hash index that `chant workspace adopt-lineage` matches a scope against
|
|
3
|
+
* (#2551, D9, ws-006).
|
|
4
|
+
*
|
|
5
|
+
* For each tagged version of a template, the index lists every file the
|
|
6
|
+
* template has at that version with the SHA-256 of its content. It is computed
|
|
7
|
+
* on demand from the template's tags: no registry holds it, and a template
|
|
8
|
+
* needs no extra publishing to be adoptable. A template's CI may publish a copy
|
|
9
|
+
* (`chant workspace hash-index`) and an adopter may pass it with `--index`.
|
|
10
|
+
* That copy is a cache only. chant reuses an entry only while the tag still
|
|
11
|
+
* names the commit the entry records, and it recomputes the entry it adopts
|
|
12
|
+
* from the template itself before anything reaches the lock.
|
|
13
|
+
*
|
|
14
|
+
* ws-006 also names parameter masking: rendering each version with and without
|
|
15
|
+
* its parameters, so a file that differs only by a parameter value still
|
|
16
|
+
* matches. The index hashes the files as the tag holds them, with the
|
|
17
|
+
* template's `chant.template.json` left out, since a project never receives
|
|
18
|
+
* it (#2627). A file a parameter changed reads as edited when matched against
|
|
19
|
+
* a scope's files; adopt-lineage records it with its substituted hash once
|
|
20
|
+
* the version is chosen. Moving a directory lineage onto git renders every
|
|
21
|
+
* candidate with the recorded parameters instead (./lineage-adopt.ts).
|
|
22
|
+
*
|
|
23
|
+
* The network steps are `git ls-remote --tags` and one `git fetch` of the tags
|
|
24
|
+
* to compute, both catalogued in `test/egress-catalogue.ts`. A local
|
|
25
|
+
* repository reaches nothing.
|
|
26
|
+
*/
|
|
27
|
+
import { z } from "zod";
|
|
28
|
+
/** The index format this chant reads and writes. */
|
|
29
|
+
export declare const HASH_INDEX_VERSION = 1;
|
|
30
|
+
declare const EntrySchema: z.ZodObject<{
|
|
31
|
+
tag: z.ZodString;
|
|
32
|
+
commit: z.ZodString;
|
|
33
|
+
tree: z.ZodString;
|
|
34
|
+
files: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
35
|
+
}, z.core.$strict>;
|
|
36
|
+
export type HashIndexEntry = z.infer<typeof EntrySchema>;
|
|
37
|
+
declare const IndexSchema: z.ZodObject<{
|
|
38
|
+
indexVersion: z.ZodLiteral<1>;
|
|
39
|
+
template: z.ZodString;
|
|
40
|
+
tags: z.ZodArray<z.ZodObject<{
|
|
41
|
+
tag: z.ZodString;
|
|
42
|
+
commit: z.ZodString;
|
|
43
|
+
tree: z.ZodString;
|
|
44
|
+
files: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
45
|
+
}, z.core.$strict>>;
|
|
46
|
+
}, z.core.$strict>;
|
|
47
|
+
export type HashIndex = z.infer<typeof IndexSchema>;
|
|
48
|
+
/** Read and validate an index file, such as a copy a template's CI published. */
|
|
49
|
+
export declare function readHashIndex(path: string): HashIndex;
|
|
50
|
+
export declare function renderHashIndex(index: HashIndex): string;
|
|
51
|
+
/** Whether a template path is left out of the index: files a project never receives from the template. */
|
|
52
|
+
export declare function indexExcludes(path: string): boolean;
|
|
53
|
+
export interface RemoteTag {
|
|
54
|
+
tag: string;
|
|
55
|
+
/** The commit the tag names, peeled through an annotated tag. */
|
|
56
|
+
commit: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* A scratch repository to read a template's tags in. Every method works on it;
|
|
60
|
+
* `dispose()` deletes it.
|
|
61
|
+
*/
|
|
62
|
+
export declare class TemplateTags {
|
|
63
|
+
readonly url: string;
|
|
64
|
+
readonly member: string | undefined;
|
|
65
|
+
readonly label: string;
|
|
66
|
+
readonly scratch: string;
|
|
67
|
+
private readonly blobHashes;
|
|
68
|
+
private readonly fetched;
|
|
69
|
+
constructor(url: string, member: string | undefined, label: string);
|
|
70
|
+
dispose(): void;
|
|
71
|
+
/**
|
|
72
|
+
* The template's version tags, oldest first: every tag whose name reads as
|
|
73
|
+
* a version, narrowed by `pattern` when given (`chant-v*`).
|
|
74
|
+
*/
|
|
75
|
+
listTags(pattern?: string): RemoteTag[];
|
|
76
|
+
/** Fetch the given tags, one commit deep each, in as few `git fetch` calls as the argument limit allows. */
|
|
77
|
+
fetchTags(tags: string[]): void;
|
|
78
|
+
/**
|
|
79
|
+
* Fetch one ref that is not a version tag, such as a branch or a commit, one
|
|
80
|
+
* commit deep, and return the commit it names.
|
|
81
|
+
*/
|
|
82
|
+
fetchRef(ref: string): RemoteTag;
|
|
83
|
+
/**
|
|
84
|
+
* The index entry of one fetched tag: its tree and the SHA-256 of every file
|
|
85
|
+
* under the template's directory. Null when the directory does not exist at
|
|
86
|
+
* that tag: a template kept in one directory of a larger repository is
|
|
87
|
+
* absent from the tags cut before it was added.
|
|
88
|
+
*/
|
|
89
|
+
entry(tag: RemoteTag): HashIndexEntry | null;
|
|
90
|
+
/** SHA-256 each blob not seen yet, read in one `git cat-file --batch`. Blobs shared between tags are hashed once. */
|
|
91
|
+
private hashBlobs;
|
|
92
|
+
}
|
|
93
|
+
export interface ComputedIndex {
|
|
94
|
+
index: HashIndex;
|
|
95
|
+
/** Tags whose entry came from the cache, unverified until one is adopted. */
|
|
96
|
+
cached: Set<string>;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* The index of a template, from its tags. With `cache`, an entry is reused when
|
|
100
|
+
* its tag still names the recorded commit; the others are fetched and
|
|
101
|
+
* computed. `only` restricts the index to one ref the user named: a version
|
|
102
|
+
* tag, or any other ref git can fetch, such as a branch or a commit.
|
|
103
|
+
*/
|
|
104
|
+
export declare function computeHashIndex(tags: TemplateTags, template: string, options?: {
|
|
105
|
+
pattern?: string;
|
|
106
|
+
cache?: HashIndex;
|
|
107
|
+
only?: string;
|
|
108
|
+
}): ComputedIndex;
|
|
109
|
+
export {};
|
|
110
|
+
//# sourceMappingURL=lineage-hash-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lineage-hash-index.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-hash-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAOH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,oDAAoD;AACpD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAKpC,QAAA,MAAM,WAAW;;;;;kBASN,CAAC;AACZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;;;;;;kBAQN,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAarD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAExD;AAED,0GAA0G;AAC1G,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAQD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,qBAAa,YAAY;IAMrB,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAPxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C,YACW,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,EAIvB;IAED,OAAO,IAAI,IAAI,CAEd;IAED;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CA4BtC;IAED,4GAA4G;IAC5G,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAa9B;IAED;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAS/B;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,cAAc,GAAG,IAAI,CAuB3C;IAED,qHAAqH;IACrH,OAAO,CAAC,SAAS;CAelB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,SAAS,CAAC;IACjB,6EAA6E;IAC7E,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GACnE,aAAa,CA+Cf"}
|
|
@@ -33,6 +33,14 @@ export interface TemplateSpec {
|
|
|
33
33
|
* `git@host:path`, a local path, or `owner/name` for a GitHub repository.
|
|
34
34
|
*/
|
|
35
35
|
export declare function parseTemplateSpec(spec: string, cwd?: string): TemplateSpec;
|
|
36
|
+
/**
|
|
37
|
+
* Parse `<repo>[@<ref>][#<member>]`, where the ref may be left out: the form
|
|
38
|
+
* `chant workspace adopt-lineage --from`, `hash-index --from` and
|
|
39
|
+
* `upgrade --source` take (#2551). `flag` names the option in messages.
|
|
40
|
+
*/
|
|
41
|
+
export declare function parseTemplateSource(spec: string, cwd?: string, flag?: string): Omit<TemplateSpec, "ref"> & {
|
|
42
|
+
ref?: string;
|
|
43
|
+
};
|
|
36
44
|
export interface FetchedTemplate {
|
|
37
45
|
commit: string;
|
|
38
46
|
tree: string;
|
|
@@ -122,6 +130,8 @@ export interface InitFromResult {
|
|
|
122
130
|
}
|
|
123
131
|
/** `chant init --from <repo>@<ref>[#<member>] [path]`, or `--from <dir>[#<member>]`. */
|
|
124
132
|
export declare function initFromCommand(options: InitFromOptions): Promise<InitFromResult>;
|
|
133
|
+
/** A local repository is recorded relative to the project, so the lock does not name this machine's paths. */
|
|
134
|
+
export declare function portableUrl(url: string, targetDir: string): string;
|
|
125
135
|
export interface TemplateLockInput {
|
|
126
136
|
targetDir: string;
|
|
127
137
|
lexicon: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lineage-init.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAwBH,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6GAA6G;IAC7G,EAAE,EAAE,MAAM,CAAC;CACZ;AAgBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"lineage-init.d.ts","sourceRoot":"","sources":["../../src/workspace/lineage-init.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,6 +83,65 @@ declare const ManualStepSchema: z.ZodObject<{
|
|
|
83
83
|
upstream: z.ZodNullable<z.ZodString>;
|
|
84
84
|
}, z.core.$strict>;
|
|
85
85
|
export type ManualStep = z.infer<typeof ManualStepSchema>;
|
|
86
|
+
/**
|
|
87
|
+
* How a scope got its lineage from `chant workspace adopt-lineage` (#2551, D5,
|
|
88
|
+
* D9, requirement P7), rather than from `chant init`.
|
|
89
|
+
*
|
|
90
|
+
* - `by: "files"`: the scope had no lineage. Its files were matched against
|
|
91
|
+
* the template's versions, and the history before the lock is vouched for
|
|
92
|
+
* by an exact commit range, `commits.to` and every commit before it. The
|
|
93
|
+
* range is the one `.chant/trust.json` lists under `adopted`; once that
|
|
94
|
+
* entry is at the base revision, an admin has admitted it, and the scope
|
|
95
|
+
* reads as provenance `adopted` (D5). Until then it reads as `unattested`.
|
|
96
|
+
* - `by: "lineage"`: the scope had a directory lineage (#2647), and it was
|
|
97
|
+
* moved onto a git source whose files at the chosen ref reproduce every hash
|
|
98
|
+
* the lock recorded. The merge base is unchanged, so no history needs
|
|
99
|
+
* vouching for, and `previous` keeps the source it replaced.
|
|
100
|
+
*/
|
|
101
|
+
declare const AdoptionSchema: z.ZodObject<{
|
|
102
|
+
by: z.ZodEnum<{
|
|
103
|
+
files: "files";
|
|
104
|
+
lineage: "lineage";
|
|
105
|
+
}>;
|
|
106
|
+
commits: z.ZodObject<{
|
|
107
|
+
to: z.ZodString;
|
|
108
|
+
}, z.core.$strict>;
|
|
109
|
+
match: z.ZodObject<{
|
|
110
|
+
files: z.ZodNumber;
|
|
111
|
+
identical: z.ZodNumber;
|
|
112
|
+
edited: z.ZodNumber;
|
|
113
|
+
missing: z.ZodNumber;
|
|
114
|
+
}, z.core.$strict>;
|
|
115
|
+
index: z.ZodEnum<{
|
|
116
|
+
cache: "cache";
|
|
117
|
+
computed: "computed";
|
|
118
|
+
}>;
|
|
119
|
+
previous: z.ZodOptional<z.ZodObject<{
|
|
120
|
+
template: z.ZodString;
|
|
121
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
122
|
+
type: z.ZodLiteral<"git">;
|
|
123
|
+
repo: z.ZodString;
|
|
124
|
+
url: z.ZodString;
|
|
125
|
+
path: z.ZodOptional<z.ZodString>;
|
|
126
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
127
|
+
type: z.ZodLiteral<"dir">;
|
|
128
|
+
path: z.ZodString;
|
|
129
|
+
member: z.ZodOptional<z.ZodString>;
|
|
130
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
131
|
+
type: z.ZodLiteral<"lexicon">;
|
|
132
|
+
lexicon: z.ZodString;
|
|
133
|
+
template: z.ZodString;
|
|
134
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
135
|
+
type: z.ZodLiteral<"local">;
|
|
136
|
+
path: z.ZodString;
|
|
137
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
138
|
+
type: z.ZodLiteral<"archive">;
|
|
139
|
+
url: z.ZodString;
|
|
140
|
+
subpath: z.ZodOptional<z.ZodString>;
|
|
141
|
+
}, z.core.$strict>], "type">;
|
|
142
|
+
}, z.core.$strict>>;
|
|
143
|
+
}, z.core.$strict>;
|
|
144
|
+
export type Adoption = z.infer<typeof AdoptionSchema>;
|
|
86
145
|
declare const LineageSchema: z.ZodObject<{
|
|
87
146
|
kind: z.ZodEnum<{
|
|
88
147
|
template: "template";
|
|
@@ -121,6 +180,7 @@ declare const LineageSchema: z.ZodObject<{
|
|
|
121
180
|
chant: z.ZodOptional<z.ZodString>;
|
|
122
181
|
}, z.core.$strict>>;
|
|
123
182
|
parameters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
183
|
+
hostBound: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
124
184
|
repinned: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
125
185
|
record: z.ZodString;
|
|
126
186
|
paths: z.ZodArray<z.ZodString>;
|
|
@@ -128,8 +188,8 @@ declare const LineageSchema: z.ZodObject<{
|
|
|
128
188
|
migrations: z.ZodArray<z.ZodString>;
|
|
129
189
|
files: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
130
190
|
class: z.ZodEnum<{
|
|
131
|
-
owned: "owned";
|
|
132
191
|
generated: "generated";
|
|
192
|
+
owned: "owned";
|
|
133
193
|
seed: "seed";
|
|
134
194
|
}>;
|
|
135
195
|
sha256: z.ZodString;
|
|
@@ -145,6 +205,49 @@ declare const LineageSchema: z.ZodObject<{
|
|
|
145
205
|
}>;
|
|
146
206
|
upstream: z.ZodNullable<z.ZodString>;
|
|
147
207
|
}, z.core.$strict>>;
|
|
208
|
+
adoption: z.ZodOptional<z.ZodObject<{
|
|
209
|
+
by: z.ZodEnum<{
|
|
210
|
+
files: "files";
|
|
211
|
+
lineage: "lineage";
|
|
212
|
+
}>;
|
|
213
|
+
commits: z.ZodObject<{
|
|
214
|
+
to: z.ZodString;
|
|
215
|
+
}, z.core.$strict>;
|
|
216
|
+
match: z.ZodObject<{
|
|
217
|
+
files: z.ZodNumber;
|
|
218
|
+
identical: z.ZodNumber;
|
|
219
|
+
edited: z.ZodNumber;
|
|
220
|
+
missing: z.ZodNumber;
|
|
221
|
+
}, z.core.$strict>;
|
|
222
|
+
index: z.ZodEnum<{
|
|
223
|
+
cache: "cache";
|
|
224
|
+
computed: "computed";
|
|
225
|
+
}>;
|
|
226
|
+
previous: z.ZodOptional<z.ZodObject<{
|
|
227
|
+
template: z.ZodString;
|
|
228
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
229
|
+
type: z.ZodLiteral<"git">;
|
|
230
|
+
repo: z.ZodString;
|
|
231
|
+
url: z.ZodString;
|
|
232
|
+
path: z.ZodOptional<z.ZodString>;
|
|
233
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
234
|
+
type: z.ZodLiteral<"dir">;
|
|
235
|
+
path: z.ZodString;
|
|
236
|
+
member: z.ZodOptional<z.ZodString>;
|
|
237
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
238
|
+
type: z.ZodLiteral<"lexicon">;
|
|
239
|
+
lexicon: z.ZodString;
|
|
240
|
+
template: z.ZodString;
|
|
241
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
242
|
+
type: z.ZodLiteral<"local">;
|
|
243
|
+
path: z.ZodString;
|
|
244
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
245
|
+
type: z.ZodLiteral<"archive">;
|
|
246
|
+
url: z.ZodString;
|
|
247
|
+
subpath: z.ZodOptional<z.ZodString>;
|
|
248
|
+
}, z.core.$strict>], "type">;
|
|
249
|
+
}, z.core.$strict>>;
|
|
250
|
+
}, z.core.$strict>>;
|
|
148
251
|
}, z.core.$strict>;
|
|
149
252
|
export type Lineage = z.infer<typeof LineageSchema>;
|
|
150
253
|
declare const LockSchema: z.ZodObject<{
|
|
@@ -187,6 +290,7 @@ declare const LockSchema: z.ZodObject<{
|
|
|
187
290
|
chant: z.ZodOptional<z.ZodString>;
|
|
188
291
|
}, z.core.$strict>>;
|
|
189
292
|
parameters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
293
|
+
hostBound: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
190
294
|
repinned: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
191
295
|
record: z.ZodString;
|
|
192
296
|
paths: z.ZodArray<z.ZodString>;
|
|
@@ -194,8 +298,8 @@ declare const LockSchema: z.ZodObject<{
|
|
|
194
298
|
migrations: z.ZodArray<z.ZodString>;
|
|
195
299
|
files: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
196
300
|
class: z.ZodEnum<{
|
|
197
|
-
owned: "owned";
|
|
198
301
|
generated: "generated";
|
|
302
|
+
owned: "owned";
|
|
199
303
|
seed: "seed";
|
|
200
304
|
}>;
|
|
201
305
|
sha256: z.ZodString;
|
|
@@ -211,6 +315,49 @@ declare const LockSchema: z.ZodObject<{
|
|
|
211
315
|
}>;
|
|
212
316
|
upstream: z.ZodNullable<z.ZodString>;
|
|
213
317
|
}, z.core.$strict>>;
|
|
318
|
+
adoption: z.ZodOptional<z.ZodObject<{
|
|
319
|
+
by: z.ZodEnum<{
|
|
320
|
+
files: "files";
|
|
321
|
+
lineage: "lineage";
|
|
322
|
+
}>;
|
|
323
|
+
commits: z.ZodObject<{
|
|
324
|
+
to: z.ZodString;
|
|
325
|
+
}, z.core.$strict>;
|
|
326
|
+
match: z.ZodObject<{
|
|
327
|
+
files: z.ZodNumber;
|
|
328
|
+
identical: z.ZodNumber;
|
|
329
|
+
edited: z.ZodNumber;
|
|
330
|
+
missing: z.ZodNumber;
|
|
331
|
+
}, z.core.$strict>;
|
|
332
|
+
index: z.ZodEnum<{
|
|
333
|
+
cache: "cache";
|
|
334
|
+
computed: "computed";
|
|
335
|
+
}>;
|
|
336
|
+
previous: z.ZodOptional<z.ZodObject<{
|
|
337
|
+
template: z.ZodString;
|
|
338
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
339
|
+
type: z.ZodLiteral<"git">;
|
|
340
|
+
repo: z.ZodString;
|
|
341
|
+
url: z.ZodString;
|
|
342
|
+
path: z.ZodOptional<z.ZodString>;
|
|
343
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
344
|
+
type: z.ZodLiteral<"dir">;
|
|
345
|
+
path: z.ZodString;
|
|
346
|
+
member: z.ZodOptional<z.ZodString>;
|
|
347
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
348
|
+
type: z.ZodLiteral<"lexicon">;
|
|
349
|
+
lexicon: z.ZodString;
|
|
350
|
+
template: z.ZodString;
|
|
351
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
352
|
+
type: z.ZodLiteral<"local">;
|
|
353
|
+
path: z.ZodString;
|
|
354
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
355
|
+
type: z.ZodLiteral<"archive">;
|
|
356
|
+
url: z.ZodString;
|
|
357
|
+
subpath: z.ZodOptional<z.ZodString>;
|
|
358
|
+
}, z.core.$strict>], "type">;
|
|
359
|
+
}, z.core.$strict>>;
|
|
360
|
+
}, z.core.$strict>>;
|
|
214
361
|
}, z.core.$strict>>;
|
|
215
362
|
}, z.core.$strict>;
|
|
216
363
|
export type LineageLock = z.infer<typeof LockSchema>;
|