@interf/compiler 0.22.2 → 0.50.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/README.md +119 -282
- package/dist/bin-mcp.d.ts +2 -0
- package/dist/bin-mcp.js +63 -0
- package/dist/bin-runtime.d.ts +2 -0
- package/dist/bin-runtime.js +111 -0
- package/dist/cli/commands/agents.js +4 -35
- package/dist/cli/commands/auth.d.ts +20 -0
- package/dist/cli/commands/auth.js +161 -0
- package/dist/cli/commands/benchmark.d.ts +9 -0
- package/dist/cli/commands/benchmark.js +58 -0
- package/dist/cli/commands/build-plan.js +107 -139
- package/dist/cli/commands/build.d.ts +3 -4
- package/dist/cli/commands/build.js +16 -45
- package/dist/cli/commands/doctor.js +3 -3
- package/dist/cli/commands/graphs.d.ts +2 -0
- package/dist/cli/commands/graphs.js +344 -0
- package/dist/cli/commands/login.js +4 -6
- package/dist/cli/commands/logout.js +1 -1
- package/dist/cli/commands/mcp.d.ts +4 -2
- package/dist/cli/commands/mcp.js +846 -232
- package/dist/cli/commands/project.d.ts +2 -0
- package/dist/cli/commands/project.js +176 -0
- package/dist/cli/commands/reset.d.ts +3 -4
- package/dist/cli/commands/reset.js +10 -31
- package/dist/cli/commands/runs.js +136 -57
- package/dist/cli/commands/runtime.d.ts +24 -0
- package/dist/cli/commands/runtime.js +373 -0
- package/dist/cli/commands/status.d.ts +1 -0
- package/dist/cli/commands/status.js +35 -45
- package/dist/cli/commands/traces.d.ts +2 -0
- package/dist/cli/commands/traces.js +97 -0
- package/dist/cli/commands/wizard.js +171 -178
- package/dist/cli/index.d.ts +7 -4
- package/dist/cli/index.js +13 -7
- package/dist/cli/lib/http-client.d.ts +39 -0
- package/dist/cli/lib/http-client.js +73 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/packages/build-plans/authoring/brief.d.ts +538 -0
- package/dist/packages/build-plans/authoring/brief.js +89 -0
- package/dist/packages/build-plans/authoring/build-plan-authoring.d.ts +52 -11
- package/dist/packages/build-plans/authoring/build-plan-authoring.js +493 -46
- package/dist/packages/build-plans/authoring/build-plan-edit-session.d.ts +10 -1
- package/dist/packages/build-plans/authoring/build-plan-edit-session.js +27 -4
- package/dist/packages/build-plans/authoring/build-plan-improvement.d.ts +9 -6
- package/dist/packages/build-plans/authoring/build-plan-improvement.js +97 -46
- package/dist/packages/build-plans/authoring/lib/build-plan-edit-utils.d.ts +1 -0
- package/dist/packages/build-plans/authoring/lib/build-plan-edit-utils.js +7 -7
- package/dist/packages/build-plans/build-plan-resolution.d.ts +1 -1
- package/dist/packages/build-plans/build-plan-resolution.js +3 -3
- package/dist/packages/build-plans/index.d.ts +1 -1
- package/dist/packages/build-plans/index.js +1 -1
- package/dist/packages/build-plans/package/build-plan-definitions.d.ts +14 -13
- package/dist/packages/build-plans/package/build-plan-definitions.js +45 -42
- package/dist/packages/build-plans/package/build-plan-helpers.d.ts +3 -2
- package/dist/packages/build-plans/package/build-plan-helpers.js +27 -13
- package/dist/packages/build-plans/package/build-plan-review-paths.d.ts +5 -5
- package/dist/packages/build-plans/package/build-plan-review-paths.js +15 -15
- package/dist/packages/build-plans/package/build-plan-stage-runner.d.ts +5 -4
- package/dist/packages/build-plans/package/build-plan-stage-runner.js +23 -11
- package/dist/packages/build-plans/package/builtin-build-plan.d.ts +7 -8
- package/dist/packages/build-plans/package/builtin-build-plan.js +10 -11
- package/dist/packages/build-plans/package/context-interface.d.ts +14 -9
- package/dist/packages/build-plans/package/context-interface.js +14 -33
- package/dist/packages/build-plans/package/interf-build-plan-package.d.ts +6 -17
- package/dist/packages/build-plans/package/interf-build-plan-package.js +68 -64
- package/dist/packages/build-plans/package/local-build-plans.d.ts +21 -14
- package/dist/packages/build-plans/package/local-build-plans.js +105 -55
- package/dist/packages/build-plans/package/user-build-plans.js +1 -1
- package/dist/packages/contracts/index.d.ts +5 -2
- package/dist/packages/contracts/index.js +3 -1
- package/dist/packages/contracts/lib/context-graph-layer.d.ts +161 -0
- package/dist/packages/contracts/lib/context-graph-layer.js +216 -0
- package/dist/packages/contracts/lib/project-paths.d.ts +144 -0
- package/dist/packages/contracts/lib/project-paths.js +220 -0
- package/dist/packages/contracts/lib/project-schema.d.ts +423 -0
- package/dist/packages/contracts/lib/project-schema.js +138 -0
- package/dist/packages/contracts/lib/schema.d.ts +1273 -81
- package/dist/packages/contracts/lib/schema.js +675 -79
- package/dist/packages/contracts/utils/filesystem.d.ts +1 -0
- package/dist/packages/contracts/utils/filesystem.js +29 -1
- package/dist/packages/contracts/utils/parse.js +67 -0
- package/dist/packages/projects/index.d.ts +6 -0
- package/dist/packages/{project → projects}/index.js +0 -3
- package/dist/packages/{project → projects}/interf-detect.d.ts +12 -12
- package/dist/packages/{project → projects}/interf-detect.js +56 -50
- package/dist/packages/projects/interf.d.ts +2 -0
- package/dist/packages/projects/interf.js +1 -0
- package/dist/packages/projects/lib/schema.d.ts +77 -0
- package/dist/packages/projects/lib/schema.js +91 -0
- package/dist/packages/projects/source-config.d.ts +53 -0
- package/dist/packages/projects/source-config.js +339 -0
- package/dist/packages/projects/source-folders.d.ts +11 -0
- package/dist/packages/{project → projects}/source-folders.js +26 -26
- package/dist/packages/{engine → runtime}/action-planner.d.ts +1 -1
- package/dist/packages/{engine → runtime}/action-planner.js +20 -22
- package/dist/packages/runtime/action-values.d.ts +1 -0
- package/dist/packages/runtime/action-values.js +1 -0
- package/dist/packages/runtime/actions/errors.d.ts +2 -0
- package/dist/packages/runtime/actions/errors.js +12 -0
- package/dist/packages/runtime/actions/fields.d.ts +86 -0
- package/dist/packages/runtime/actions/form-builders.d.ts +14 -0
- package/dist/packages/runtime/actions/form-builders.js +667 -0
- package/dist/packages/runtime/actions/form-validators.d.ts +8 -0
- package/dist/packages/runtime/actions/form-validators.js +134 -0
- package/dist/packages/runtime/actions/helpers.d.ts +11 -0
- package/dist/packages/runtime/actions/helpers.js +80 -0
- package/dist/packages/runtime/actions/index.d.ts +8 -0
- package/dist/packages/runtime/actions/index.js +11 -0
- package/dist/packages/runtime/actions/registry.d.ts +64 -0
- package/dist/packages/runtime/actions/registry.js +62 -0
- package/dist/packages/runtime/actions/requests.d.ts +45 -0
- package/dist/packages/runtime/actions/requests.js +164 -0
- package/dist/packages/runtime/actions/schemas.d.ts +161 -0
- package/dist/packages/runtime/actions/schemas.js +37 -0
- package/dist/packages/runtime/agent-handoff.d.ts +11 -0
- package/dist/packages/runtime/agent-handoff.js +102 -0
- package/dist/packages/{engine → runtime}/agents/index.d.ts +1 -2
- package/dist/packages/{engine → runtime}/agents/index.js +1 -2
- package/dist/packages/runtime/agents/lib/args.d.ts +14 -0
- package/dist/packages/runtime/agents/lib/args.js +24 -0
- package/dist/packages/{engine → runtime}/agents/lib/constants.d.ts +4 -1
- package/dist/packages/runtime/agents/lib/constants.js +13 -0
- package/dist/packages/runtime/agents/lib/context-graph-bootstrap.d.ts +3 -0
- package/dist/packages/{engine/agents/lib/verifiable-context-bootstrap.js → runtime/agents/lib/context-graph-bootstrap.js} +5 -6
- package/dist/packages/{engine → runtime}/agents/lib/detection.d.ts +5 -0
- package/dist/packages/{engine → runtime}/agents/lib/detection.js +16 -7
- package/dist/packages/{engine → runtime}/agents/lib/execution-profile.d.ts +14 -0
- package/dist/packages/{engine → runtime}/agents/lib/execution-profile.js +31 -14
- package/dist/packages/{engine → runtime}/agents/lib/execution.js +22 -6
- package/dist/packages/{engine → runtime}/agents/lib/executors.d.ts +1 -0
- package/dist/packages/{engine → runtime}/agents/lib/executors.js +11 -2
- package/dist/packages/runtime/agents/lib/logs.d.ts +12 -0
- package/dist/packages/runtime/agents/lib/logs.js +41 -0
- package/dist/packages/{engine → runtime}/agents/lib/preflight.js +19 -14
- package/dist/packages/runtime/agents/lib/render.d.ts +26 -0
- package/dist/packages/{engine → runtime}/agents/lib/render.js +48 -22
- package/dist/packages/runtime/agents/lib/shell-fs.d.ts +18 -0
- package/dist/packages/runtime/agents/lib/shell-fs.js +190 -0
- package/dist/packages/runtime/agents/lib/shell-paths.d.ts +16 -0
- package/dist/packages/runtime/agents/lib/shell-paths.js +63 -0
- package/dist/packages/runtime/agents/lib/shell-projection.d.ts +25 -0
- package/dist/packages/runtime/agents/lib/shell-projection.js +314 -0
- package/dist/packages/runtime/agents/lib/shell-templates.d.ts +30 -0
- package/dist/packages/runtime/agents/lib/shell-templates.js +494 -0
- package/dist/packages/runtime/agents/lib/shell-workspace.d.ts +17 -0
- package/dist/packages/runtime/agents/lib/shell-workspace.js +70 -0
- package/dist/packages/runtime/agents/lib/shells.d.ts +92 -0
- package/dist/packages/runtime/agents/lib/shells.js +509 -0
- package/dist/packages/runtime/agents/lib/source-context-scan.d.ts +10 -0
- package/dist/packages/runtime/agents/lib/source-context-scan.js +388 -0
- package/dist/packages/{engine → runtime}/agents/lib/status.js +1 -14
- package/dist/packages/runtime/agents/lib/string-utils.d.ts +16 -0
- package/dist/packages/runtime/agents/lib/string-utils.js +36 -0
- package/dist/packages/{engine → runtime}/agents/lib/types.d.ts +1 -0
- package/dist/packages/{engine → runtime}/agents/lib/user-config.d.ts +8 -2
- package/dist/packages/{engine → runtime}/agents/lib/user-config.js +8 -2
- package/dist/packages/runtime/agents/providers/claude-code.d.ts +13 -0
- package/dist/packages/runtime/agents/providers/claude-code.js +45 -0
- package/dist/packages/runtime/agents/providers/codex.d.ts +17 -0
- package/dist/packages/runtime/agents/providers/codex.js +66 -0
- package/dist/packages/runtime/agents/providers/cursor.d.ts +9 -0
- package/dist/packages/runtime/agents/providers/cursor.js +24 -0
- package/dist/packages/runtime/agents/providers/index.d.ts +9 -0
- package/dist/packages/runtime/agents/providers/index.js +31 -0
- package/dist/packages/runtime/agents/providers/types.d.ts +50 -0
- package/dist/packages/{engine → runtime}/agents/registry.d.ts +13 -2
- package/dist/packages/{engine → runtime}/agents/registry.js +48 -10
- package/dist/packages/{engine → runtime}/agents/role-executors.d.ts +1 -1
- package/dist/packages/{engine → runtime}/agents/role-executors.js +9 -7
- package/dist/packages/{engine → runtime}/agents/role-router.js +7 -5
- package/dist/packages/runtime/auth/account-context.d.ts +52 -0
- package/dist/packages/runtime/auth/account-context.js +68 -0
- package/dist/packages/runtime/auth/auth-flow.d.ts +73 -0
- package/dist/packages/runtime/auth/auth-flow.js +189 -0
- package/dist/packages/runtime/auth/jwt-validator.d.ts +58 -0
- package/dist/packages/runtime/auth/jwt-validator.js +86 -0
- package/dist/packages/runtime/auth/keychain.d.ts +35 -0
- package/dist/packages/runtime/auth/keychain.js +85 -0
- package/dist/packages/runtime/auth/session-store.d.ts +38 -0
- package/dist/packages/runtime/auth/session-store.js +96 -0
- package/dist/packages/runtime/auth/workos-client.d.ts +58 -0
- package/dist/packages/runtime/auth/workos-client.js +87 -0
- package/dist/packages/runtime/benchmark-question-draft.d.ts +23 -0
- package/dist/packages/runtime/benchmark-question-draft.js +153 -0
- package/dist/packages/runtime/build/artifact-counts.d.ts +1 -0
- package/dist/packages/{engine → runtime}/build/artifact-counts.js +5 -9
- package/dist/packages/{engine → runtime}/build/artifact-status.d.ts +6 -6
- package/dist/packages/{engine → runtime}/build/artifact-status.js +26 -24
- package/dist/packages/runtime/build/atomic-fs.d.ts +3 -0
- package/dist/packages/runtime/build/atomic-fs.js +95 -0
- package/dist/packages/runtime/build/billing-events.d.ts +78 -0
- package/dist/packages/{engine → runtime}/build/billing-events.js +17 -19
- package/dist/packages/runtime/build/build-evidence.d.ts +16 -0
- package/dist/packages/runtime/build/build-evidence.js +179 -0
- package/dist/packages/{engine → runtime}/build/build-pipeline.d.ts +12 -8
- package/dist/packages/runtime/build/build-pipeline.js +388 -0
- package/dist/packages/{engine → runtime}/build/build-plan-primitives.d.ts +1 -1
- package/dist/packages/{engine → runtime}/build/build-plan-primitives.js +0 -1
- package/dist/packages/runtime/build/build-plan-runs.d.ts +14 -0
- package/dist/packages/runtime/build/build-plan-runs.js +31 -0
- package/dist/packages/runtime/build/build-stage-plan.d.ts +16 -0
- package/dist/packages/runtime/build/build-stage-plan.js +101 -0
- package/dist/packages/{engine → runtime}/build/build-stage-runner.d.ts +2 -1
- package/dist/packages/runtime/build/build-stage-runner.js +302 -0
- package/dist/packages/{engine → runtime}/build/build-target.d.ts +7 -4
- package/dist/packages/runtime/build/build-target.js +40 -0
- package/dist/packages/{engine → runtime}/build/check-evaluator.d.ts +14 -16
- package/dist/packages/runtime/build/check-evaluator.js +1226 -0
- package/dist/packages/runtime/build/context-graph-paths.d.ts +64 -0
- package/dist/packages/runtime/build/context-graph-paths.js +160 -0
- package/dist/packages/runtime/build/context-graph-schema.d.ts +19 -0
- package/dist/packages/runtime/build/context-graph-schema.js +39 -0
- package/dist/packages/{engine → runtime}/build/discovery.d.ts +2 -2
- package/dist/packages/{engine → runtime}/build/discovery.js +4 -4
- package/dist/packages/{engine → runtime}/build/index.d.ts +7 -5
- package/dist/packages/{engine → runtime}/build/index.js +7 -5
- package/dist/packages/runtime/build/inspect-map.d.ts +10 -0
- package/dist/packages/runtime/build/inspect-map.js +270 -0
- package/dist/packages/{engine → runtime}/build/lib/schema.d.ts +449 -123
- package/dist/packages/runtime/build/lib/schema.js +494 -0
- package/dist/packages/runtime/build/native-entrypoint.d.ts +2 -0
- package/dist/packages/runtime/build/native-entrypoint.js +286 -0
- package/dist/packages/runtime/build/reset.d.ts +2 -0
- package/dist/packages/runtime/build/reset.js +62 -0
- package/dist/packages/{engine → runtime}/build/runtime-contracts.js +13 -7
- package/dist/packages/runtime/build/runtime-inventory.d.ts +7 -0
- package/dist/packages/{engine → runtime}/build/runtime-inventory.js +3 -3
- package/dist/packages/runtime/build/runtime-log-paths.d.ts +3 -0
- package/dist/packages/runtime/build/runtime-log-paths.js +16 -0
- package/dist/packages/{engine → runtime}/build/runtime-prompt.js +12 -9
- package/dist/packages/{engine → runtime}/build/runtime-reconcile.d.ts +1 -1
- package/dist/packages/{engine → runtime}/build/runtime-reconcile.js +25 -21
- package/dist/packages/runtime/build/runtime-runs.d.ts +10 -0
- package/dist/packages/runtime/build/runtime-runs.js +318 -0
- package/dist/packages/{engine → runtime}/build/runtime-types.d.ts +9 -6
- package/dist/packages/runtime/build/runtime-types.js +1 -0
- package/dist/packages/runtime/build/runtime.d.ts +8 -0
- package/dist/packages/runtime/build/runtime.js +7 -0
- package/dist/packages/runtime/build/source-files.d.ts +58 -0
- package/dist/packages/runtime/build/source-files.js +193 -0
- package/dist/packages/runtime/build/source-inventory.d.ts +28 -0
- package/dist/packages/runtime/build/source-inventory.js +512 -0
- package/dist/packages/runtime/build/source-manifest.d.ts +63 -0
- package/dist/packages/runtime/build/source-manifest.js +220 -0
- package/dist/packages/runtime/build/stage-evidence.d.ts +22 -0
- package/dist/packages/runtime/build/stage-evidence.js +386 -0
- package/dist/packages/runtime/build/stage-manifest.d.ts +45 -0
- package/dist/packages/runtime/build/stage-manifest.js +1125 -0
- package/dist/packages/runtime/build/stage-reuse.d.ts +11 -0
- package/dist/packages/runtime/build/stage-reuse.js +154 -0
- package/dist/packages/runtime/build/stage-session.d.ts +81 -0
- package/dist/packages/runtime/build/stage-session.js +308 -0
- package/dist/packages/runtime/build/state-artifacts.d.ts +9 -0
- package/dist/packages/runtime/build/state-artifacts.js +14 -0
- package/dist/packages/runtime/build/state-health.d.ts +4 -0
- package/dist/packages/{engine → runtime}/build/state-health.js +21 -26
- package/dist/packages/runtime/build/state-io.d.ts +12 -0
- package/dist/packages/runtime/build/state-io.js +118 -0
- package/dist/packages/runtime/build/state-view.d.ts +5 -0
- package/dist/packages/runtime/build/state-view.js +121 -0
- package/dist/packages/runtime/build/state.d.ts +7 -0
- package/dist/packages/runtime/build/state.js +12 -0
- package/dist/packages/runtime/build/summary-coverage-index.d.ts +21 -0
- package/dist/packages/runtime/build/summary-coverage-index.js +189 -0
- package/dist/packages/runtime/build/traces.d.ts +30 -0
- package/dist/packages/runtime/build/traces.js +133 -0
- package/dist/packages/{engine/build/validate-verifiable-context.d.ts → runtime/build/validate-context-graph.d.ts} +6 -6
- package/dist/packages/{engine/build/validate-verifiable-context.js → runtime/build/validate-context-graph.js} +49 -36
- package/dist/packages/{engine → runtime}/build/validate.d.ts +5 -5
- package/dist/packages/{engine → runtime}/build/validate.js +26 -26
- package/dist/packages/{engine → runtime}/client.d.ts +18 -18
- package/dist/packages/{engine → runtime}/client.js +48 -36
- package/dist/packages/{engine → runtime}/connection-config.d.ts +3 -2
- package/dist/packages/{engine → runtime}/connection-config.js +9 -8
- package/dist/packages/runtime/context-checks.d.ts +10 -0
- package/dist/packages/runtime/context-checks.js +127 -0
- package/dist/packages/runtime/context-graph-scaffold.d.ts +9 -0
- package/dist/packages/runtime/context-graph-scaffold.js +135 -0
- package/dist/packages/runtime/context-graph-semantic-graph.d.ts +9 -0
- package/dist/packages/runtime/context-graph-semantic-graph.js +416 -0
- package/dist/packages/runtime/entitlement-guard.d.ts +43 -0
- package/dist/packages/runtime/entitlement-guard.js +70 -0
- package/dist/packages/{engine → runtime}/execution/index.d.ts +2 -2
- package/dist/packages/{engine → runtime}/execution/index.js +1 -1
- package/dist/packages/{engine → runtime}/execution/lib/schema.d.ts +272 -191
- package/dist/packages/{engine → runtime}/execution/lib/schema.js +35 -32
- package/dist/packages/runtime/index.d.ts +29 -0
- package/dist/packages/runtime/index.js +21 -0
- package/dist/packages/runtime/instance-paths.d.ts +30 -0
- package/dist/packages/runtime/instance-paths.js +29 -0
- package/dist/packages/runtime/native-run-handlers.d.ts +63 -0
- package/dist/packages/{engine → runtime}/native-run-handlers.js +217 -166
- package/dist/packages/runtime/plan-artifact-contract.d.ts +17 -0
- package/dist/packages/runtime/plan-artifact-contract.js +42 -0
- package/dist/packages/runtime/project-entries.d.ts +11 -0
- package/dist/packages/runtime/project-entries.js +49 -0
- package/dist/packages/runtime/project-source-state.d.ts +26 -0
- package/dist/packages/runtime/project-source-state.js +56 -0
- package/dist/packages/runtime/project-store.d.ts +90 -0
- package/dist/packages/runtime/project-store.js +195 -0
- package/dist/packages/runtime/requested-artifacts.d.ts +7 -0
- package/dist/packages/{engine → runtime}/requested-artifacts.js +23 -1
- package/dist/packages/{engine → runtime}/run-observability.d.ts +2 -1
- package/dist/packages/{engine → runtime}/run-observability.js +174 -87
- package/dist/packages/runtime/runtime-action-proposals.d.ts +7 -0
- package/dist/packages/runtime/runtime-action-proposals.js +542 -0
- package/dist/packages/runtime/runtime-build-plans.d.ts +5 -0
- package/dist/packages/runtime/runtime-build-plans.js +175 -0
- package/dist/packages/runtime/runtime-build-runs.d.ts +47 -0
- package/dist/packages/runtime/runtime-build-runs.js +555 -0
- package/dist/packages/runtime/runtime-caches.d.ts +117 -0
- package/dist/packages/runtime/runtime-caches.js +266 -0
- package/dist/packages/{engine → runtime}/runtime-event-applier.d.ts +3 -1
- package/dist/packages/{engine → runtime}/runtime-event-applier.js +53 -17
- package/dist/packages/runtime/runtime-executor.d.ts +22 -0
- package/dist/packages/runtime/runtime-executor.js +131 -0
- package/dist/packages/runtime/runtime-jobs.d.ts +13 -0
- package/dist/packages/runtime/runtime-jobs.js +463 -0
- package/dist/packages/runtime/runtime-observability.d.ts +11 -0
- package/dist/packages/runtime/runtime-observability.js +39 -0
- package/dist/packages/{engine → runtime}/runtime-persistence.d.ts +9 -18
- package/dist/packages/{engine → runtime}/runtime-persistence.js +25 -25
- package/dist/packages/runtime/runtime-project-mutations.d.ts +7 -0
- package/dist/packages/runtime/runtime-project-mutations.js +65 -0
- package/dist/packages/runtime/runtime-project-reads.d.ts +18 -0
- package/dist/packages/runtime/runtime-project-reads.js +574 -0
- package/dist/packages/runtime/runtime-proposal-helpers.d.ts +22 -0
- package/dist/packages/runtime/runtime-proposal-helpers.js +223 -0
- package/dist/packages/{engine → runtime}/runtime-resource-builders.d.ts +23 -16
- package/dist/packages/{engine → runtime}/runtime-resource-builders.js +58 -46
- package/dist/packages/runtime/runtime-status.d.ts +14 -0
- package/dist/packages/runtime/runtime-status.js +15 -0
- package/dist/packages/runtime/runtime-verify-runs.d.ts +84 -0
- package/dist/packages/runtime/runtime-verify-runs.js +296 -0
- package/dist/packages/runtime/runtime.d.ts +1582 -0
- package/dist/packages/runtime/runtime.js +431 -0
- package/dist/packages/runtime/schemas/actions.d.ts +1206 -0
- package/dist/packages/runtime/schemas/actions.js +117 -0
- package/dist/packages/runtime/schemas/agents.d.ts +104 -0
- package/dist/packages/runtime/schemas/agents.js +74 -0
- package/dist/packages/runtime/schemas/build-plans.d.ts +1132 -0
- package/dist/packages/runtime/schemas/build-plans.js +141 -0
- package/dist/packages/runtime/schemas/context-graphs.d.ts +1522 -0
- package/dist/packages/runtime/schemas/context-graphs.js +110 -0
- package/dist/packages/runtime/schemas/files.d.ts +227 -0
- package/dist/packages/runtime/schemas/files.js +28 -0
- package/dist/packages/runtime/schemas/index.d.ts +9 -0
- package/dist/packages/runtime/schemas/index.js +13 -0
- package/dist/packages/runtime/schemas/instance.d.ts +141 -0
- package/dist/packages/runtime/schemas/instance.js +143 -0
- package/dist/packages/runtime/schemas/jobs.d.ts +339 -0
- package/dist/packages/runtime/schemas/jobs.js +107 -0
- package/dist/packages/runtime/schemas/projects.d.ts +366 -0
- package/dist/packages/runtime/schemas/projects.js +160 -0
- package/dist/packages/runtime/schemas/runs.d.ts +3445 -0
- package/dist/packages/runtime/schemas/runs.js +115 -0
- package/dist/packages/runtime/service/index.d.ts +3 -0
- package/dist/packages/runtime/service/index.js +3 -0
- package/dist/packages/runtime/service/openapi.d.ts +7 -0
- package/dist/packages/runtime/service/openapi.js +118 -0
- package/dist/packages/runtime/service/operations.d.ts +3011 -0
- package/dist/packages/runtime/service/operations.js +375 -0
- package/dist/packages/runtime/service/routes.d.ts +114 -0
- package/dist/packages/runtime/service/routes.js +128 -0
- package/dist/packages/runtime/service/server-api-files.d.ts +10 -0
- package/dist/packages/runtime/service/server-api-files.js +85 -0
- package/dist/packages/runtime/service/server-app-boot.d.ts +4 -0
- package/dist/packages/runtime/service/server-app-boot.js +46 -0
- package/dist/packages/runtime/service/server-guards.d.ts +63 -0
- package/dist/packages/runtime/service/server-guards.js +181 -0
- package/dist/packages/runtime/service/server-helpers.d.ts +38 -0
- package/dist/packages/runtime/service/server-helpers.js +108 -0
- package/dist/packages/runtime/service/server-instance-helpers.d.ts +30 -0
- package/dist/packages/runtime/service/server-instance-helpers.js +114 -0
- package/dist/packages/runtime/service/server-routes-action-proposals.d.ts +3 -0
- package/dist/packages/runtime/service/server-routes-action-proposals.js +45 -0
- package/dist/packages/runtime/service/server-routes-agents.d.ts +4 -0
- package/dist/packages/runtime/service/server-routes-agents.js +132 -0
- package/dist/packages/runtime/service/server-routes-auth.d.ts +33 -0
- package/dist/packages/runtime/service/server-routes-auth.js +138 -0
- package/dist/packages/runtime/service/server-routes-build-plans.d.ts +3 -0
- package/dist/packages/runtime/service/server-routes-build-plans.js +86 -0
- package/dist/packages/runtime/service/server-routes-discovery.d.ts +4 -0
- package/dist/packages/runtime/service/server-routes-discovery.js +196 -0
- package/dist/packages/runtime/service/server-routes-events.d.ts +5 -0
- package/dist/packages/runtime/service/server-routes-events.js +99 -0
- package/dist/packages/runtime/service/server-routes-project-context.d.ts +9 -0
- package/dist/packages/runtime/service/server-routes-project-context.js +287 -0
- package/dist/packages/runtime/service/server-routes-project-jobs.d.ts +9 -0
- package/dist/packages/runtime/service/server-routes-project-jobs.js +137 -0
- package/dist/packages/runtime/service/server-routes-project-runs.d.ts +14 -0
- package/dist/packages/runtime/service/server-routes-project-runs.js +88 -0
- package/dist/packages/runtime/service/server-routes-projects.d.ts +4 -0
- package/dist/packages/runtime/service/server-routes-projects.js +96 -0
- package/dist/packages/runtime/service/server-routes-runs.d.ts +3 -0
- package/dist/packages/runtime/service/server-routes-runs.js +119 -0
- package/dist/packages/runtime/service/server.d.ts +37 -0
- package/dist/packages/runtime/service/server.js +300 -0
- package/dist/packages/{engine → runtime/service}/service-registry.d.ts +5 -5
- package/dist/packages/{engine → runtime/service}/service-registry.js +7 -7
- package/dist/packages/runtime/verify/benchmark-run.d.ts +81 -0
- package/dist/packages/runtime/verify/benchmark-run.js +303 -0
- package/dist/packages/{engine → runtime}/verify/index.d.ts +2 -2
- package/dist/packages/{engine → runtime}/verify/index.js +1 -1
- package/dist/packages/{engine → runtime}/verify/lib/schema.d.ts +83 -16
- package/dist/packages/{engine → runtime}/verify/lib/schema.js +38 -18
- package/dist/packages/runtime/verify/test-file-guard.d.ts +2 -0
- package/dist/packages/runtime/verify/test-file-guard.js +29 -0
- package/dist/packages/{engine → runtime}/verify/verify-execution.d.ts +7 -0
- package/dist/packages/{engine → runtime}/verify/verify-execution.js +119 -45
- package/dist/packages/{engine → runtime}/verify/verify-paths.d.ts +5 -4
- package/dist/packages/runtime/verify/verify-paths.js +65 -0
- package/dist/packages/{engine → runtime}/verify/verify-sandbox.d.ts +1 -1
- package/dist/packages/runtime/verify/verify-sandbox.js +88 -0
- package/dist/packages/{engine → runtime}/verify/verify-specs.d.ts +2 -0
- package/dist/packages/runtime/verify/verify-specs.js +126 -0
- package/dist/packages/runtime/verify/verify-targets.d.ts +5 -0
- package/dist/packages/{engine → runtime}/verify/verify-targets.js +12 -12
- package/dist/packages/runtime/verify/verify-types.js +1 -0
- package/dist/packages/{engine → runtime}/verify/verify.d.ts +1 -1
- package/dist/packages/{engine → runtime}/verify/verify.js +1 -1
- package/dist/packages/runtime/wire-schemas.d.ts +18 -0
- package/dist/packages/runtime/wire-schemas.js +27 -0
- package/package.json +32 -30
- package/public-repo/CONTRIBUTING.md +16 -18
- package/public-repo/README.md +119 -282
- package/public-repo/SECURITY.md +3 -4
- package/public-repo/build-plans/interf-default/README.md +24 -16
- package/public-repo/build-plans/interf-default/build/stages/entrypoint/SKILL.md +74 -0
- package/public-repo/build-plans/interf-default/build/stages/knowledge/SKILL.md +95 -0
- package/public-repo/build-plans/interf-default/build/stages/summarize/SKILL.md +49 -4
- package/public-repo/build-plans/interf-default/build-plan.json +49 -39
- package/public-repo/build-plans/interf-default/build-plan.schema.json +59 -33
- package/public-repo/build-plans/interf-default/improve/SKILL.md +3 -3
- package/public-repo/build-plans/interf-default/use/query/SKILL.md +18 -11
- package/public-repo/openapi/local-service.openapi.json +14227 -0
- package/public-repo/skills/interf/SKILL.md +508 -187
- package/dist/cli/commands/prep.d.ts +0 -2
- package/dist/cli/commands/prep.js +0 -240
- package/dist/cli/commands/test.d.ts +0 -10
- package/dist/cli/commands/test.js +0 -85
- package/dist/cli/commands/web.d.ts +0 -2
- package/dist/cli/commands/web.js +0 -286
- package/dist/interf-ui/404.html +0 -1
- package/dist/interf-ui/__next.__PAGE__.txt +0 -10
- package/dist/interf-ui/__next._full.txt +0 -20
- package/dist/interf-ui/__next._head.txt +0 -5
- package/dist/interf-ui/__next._index.txt +0 -5
- package/dist/interf-ui/__next._tree.txt +0 -5
- package/dist/interf-ui/_next/static/--reS3xBzM5zc6QxNjZd6/_buildManifest.js +0 -11
- package/dist/interf-ui/_next/static/--reS3xBzM5zc6QxNjZd6/_clientMiddlewareManifest.js +0 -1
- package/dist/interf-ui/_next/static/--reS3xBzM5zc6QxNjZd6/_ssgManifest.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0.tjb6f4golw..css +0 -3
- package/dist/interf-ui/_next/static/chunks/03~yq9q893hmn.js +0 -1
- package/dist/interf-ui/_next/static/chunks/085-n_jv2ng_q.css +0 -1
- package/dist/interf-ui/_next/static/chunks/0dn41fa_zvgsl.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0g-ea0zj5d-0k.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0gwqglc4iz583.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0haldgm65ve6l.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0nv3am99vjzn4.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0s77gt_o4jwtx.js +0 -1
- package/dist/interf-ui/_next/static/chunks/0y5z3t-z1c8ks.js.map +0 -5
- package/dist/interf-ui/_next/static/chunks/0~a36ujuzpaz..js +0 -116
- package/dist/interf-ui/_next/static/chunks/10jeodxe4nkgj.js +0 -31
- package/dist/interf-ui/_next/static/chunks/119h2rouych2t.js +0 -1
- package/dist/interf-ui/_next/static/chunks/13c8b~m8knjsf.js +0 -1
- package/dist/interf-ui/_next/static/chunks/14dznb2qpt-ho.js +0 -91
- package/dist/interf-ui/_next/static/chunks/15z_en80lrq-3.js +0 -5
- package/dist/interf-ui/_next/static/chunks/turbopack-0p.pvcjrtq-jh.js +0 -1
- package/dist/interf-ui/_next/static/chunks/turbopack-0usj_75.8frlw.js +0 -1
- package/dist/interf-ui/_next/static/chunks/turbopack-worker-0sjn--fhq~1cg.js +0 -1
- package/dist/interf-ui/_next/static/media/GeistMono_Variable.p.17jn9btb_52pq.woff2 +0 -0
- package/dist/interf-ui/_next/static/media/Geist_Variable-s.p.0-te~ja_gpvcf.woff2 +0 -0
- package/dist/interf-ui/_next/static/media/worker.102zas1s52_pf.js +0 -109
- package/dist/interf-ui/_not-found/__next._full.txt +0 -15
- package/dist/interf-ui/_not-found/__next._head.txt +0 -5
- package/dist/interf-ui/_not-found/__next._index.txt +0 -5
- package/dist/interf-ui/_not-found/__next._not-found.__PAGE__.txt +0 -5
- package/dist/interf-ui/_not-found/__next._not-found.txt +0 -5
- package/dist/interf-ui/_not-found/__next._tree.txt +0 -2
- package/dist/interf-ui/_not-found.html +0 -1
- package/dist/interf-ui/_not-found.txt +0 -15
- package/dist/interf-ui/index.html +0 -1
- package/dist/interf-ui/index.txt +0 -20
- package/dist/packages/contracts/lib/preparation-paths.d.ts +0 -117
- package/dist/packages/contracts/lib/preparation-paths.js +0 -177
- package/dist/packages/engine/action-definitions.d.ts +0 -407
- package/dist/packages/engine/action-definitions.js +0 -1158
- package/dist/packages/engine/action-values.d.ts +0 -1
- package/dist/packages/engine/action-values.js +0 -1
- package/dist/packages/engine/agents/lib/args.d.ts +0 -4
- package/dist/packages/engine/agents/lib/args.js +0 -52
- package/dist/packages/engine/agents/lib/chart-guidance.d.ts +0 -1
- package/dist/packages/engine/agents/lib/chart-guidance.js +0 -8
- package/dist/packages/engine/agents/lib/constants.js +0 -28
- package/dist/packages/engine/agents/lib/logs.d.ts +0 -2
- package/dist/packages/engine/agents/lib/logs.js +0 -17
- package/dist/packages/engine/agents/lib/render.d.ts +0 -8
- package/dist/packages/engine/agents/lib/schema.d.ts +0 -8
- package/dist/packages/engine/agents/lib/schema.js +0 -7
- package/dist/packages/engine/agents/lib/shells.d.ts +0 -74
- package/dist/packages/engine/agents/lib/shells.js +0 -1052
- package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.d.ts +0 -3
- package/dist/packages/engine/build/artifact-counts.d.ts +0 -1
- package/dist/packages/engine/build/billing-events.d.ts +0 -89
- package/dist/packages/engine/build/build-pipeline.js +0 -175
- package/dist/packages/engine/build/build-plan-runs.d.ts +0 -14
- package/dist/packages/engine/build/build-plan-runs.js +0 -31
- package/dist/packages/engine/build/build-stage-plan.d.ts +0 -16
- package/dist/packages/engine/build/build-stage-plan.js +0 -100
- package/dist/packages/engine/build/build-stage-runner.js +0 -94
- package/dist/packages/engine/build/build-target.js +0 -16
- package/dist/packages/engine/build/check-evaluator.js +0 -298
- package/dist/packages/engine/build/lib/schema.js +0 -316
- package/dist/packages/engine/build/reset.d.ts +0 -2
- package/dist/packages/engine/build/reset.js +0 -74
- package/dist/packages/engine/build/runtime-inventory.d.ts +0 -7
- package/dist/packages/engine/build/runtime-paths.d.ts +0 -8
- package/dist/packages/engine/build/runtime-paths.js +0 -26
- package/dist/packages/engine/build/runtime-runs.d.ts +0 -10
- package/dist/packages/engine/build/runtime-runs.js +0 -224
- package/dist/packages/engine/build/runtime.d.ts +0 -5
- package/dist/packages/engine/build/runtime.js +0 -4
- package/dist/packages/engine/build/source-files.d.ts +0 -46
- package/dist/packages/engine/build/source-files.js +0 -149
- package/dist/packages/engine/build/state-artifacts.d.ts +0 -9
- package/dist/packages/engine/build/state-artifacts.js +0 -14
- package/dist/packages/engine/build/state-health.d.ts +0 -4
- package/dist/packages/engine/build/state-io.d.ts +0 -11
- package/dist/packages/engine/build/state-io.js +0 -82
- package/dist/packages/engine/build/state-paths.d.ts +0 -5
- package/dist/packages/engine/build/state-paths.js +0 -16
- package/dist/packages/engine/build/state-view.d.ts +0 -5
- package/dist/packages/engine/build/state-view.js +0 -94
- package/dist/packages/engine/build/state.d.ts +0 -7
- package/dist/packages/engine/build/state.js +0 -12
- package/dist/packages/engine/build/validate-helpers.d.ts +0 -12
- package/dist/packages/engine/build/validate-helpers.js +0 -41
- package/dist/packages/engine/build/verifiable-context-paths.d.ts +0 -47
- package/dist/packages/engine/build/verifiable-context-paths.js +0 -121
- package/dist/packages/engine/build/verifiable-context-schema.d.ts +0 -21
- package/dist/packages/engine/build/verifiable-context-schema.js +0 -126
- package/dist/packages/engine/cloud-seams.d.ts +0 -115
- package/dist/packages/engine/cloud-seams.js +0 -84
- package/dist/packages/engine/index.d.ts +0 -22
- package/dist/packages/engine/index.js +0 -15
- package/dist/packages/engine/instance-paths.d.ts +0 -106
- package/dist/packages/engine/instance-paths.js +0 -171
- package/dist/packages/engine/lib/schema.d.ts +0 -6304
- package/dist/packages/engine/lib/schema.js +0 -730
- package/dist/packages/engine/native-run-handlers.d.ts +0 -25
- package/dist/packages/engine/preparation-store.d.ts +0 -105
- package/dist/packages/engine/preparation-store.js +0 -213
- package/dist/packages/engine/readiness-check-draft.d.ts +0 -20
- package/dist/packages/engine/readiness-check-draft.js +0 -111
- package/dist/packages/engine/requested-artifacts.d.ts +0 -5
- package/dist/packages/engine/routes.d.ts +0 -85
- package/dist/packages/engine/routes.js +0 -99
- package/dist/packages/engine/runtime-caches.d.ts +0 -76
- package/dist/packages/engine/runtime-caches.js +0 -191
- package/dist/packages/engine/runtime-proposal-helpers.d.ts +0 -35
- package/dist/packages/engine/runtime-proposal-helpers.js +0 -247
- package/dist/packages/engine/runtime.d.ts +0 -371
- package/dist/packages/engine/runtime.js +0 -2463
- package/dist/packages/engine/server.d.ts +0 -58
- package/dist/packages/engine/server.js +0 -1399
- package/dist/packages/engine/verify/readiness-check-run.d.ts +0 -82
- package/dist/packages/engine/verify/readiness-check-run.js +0 -265
- package/dist/packages/engine/verify/verify-paths.js +0 -61
- package/dist/packages/engine/verify/verify-sandbox.js +0 -88
- package/dist/packages/engine/verify/verify-specs.js +0 -114
- package/dist/packages/engine/verify/verify-targets.d.ts +0 -5
- package/dist/packages/engine/wire-schemas.d.ts +0 -547
- package/dist/packages/engine/wire-schemas.js +0 -59
- package/dist/packages/project/index.d.ts +0 -9
- package/dist/packages/project/interf-bootstrap.d.ts +0 -1
- package/dist/packages/project/interf-bootstrap.js +0 -1
- package/dist/packages/project/interf-scaffold.d.ts +0 -3
- package/dist/packages/project/interf-scaffold.js +0 -136
- package/dist/packages/project/interf.d.ts +0 -4
- package/dist/packages/project/interf.js +0 -3
- package/dist/packages/project/lib/schema.d.ts +0 -328
- package/dist/packages/project/lib/schema.js +0 -136
- package/dist/packages/project/preparation-entries.d.ts +0 -11
- package/dist/packages/project/preparation-entries.js +0 -49
- package/dist/packages/project/source-config.d.ts +0 -46
- package/dist/packages/project/source-config.js +0 -394
- package/dist/packages/project/source-folders.d.ts +0 -11
- package/public-repo/build-plans/interf-default/build/stages/shape/SKILL.md +0 -27
- package/public-repo/build-plans/interf-default/build/stages/structure/SKILL.md +0 -21
- package/public-repo/plugins/README.md +0 -9
- package/public-repo/plugins/interf/.claude-plugin/plugin.json +0 -21
- package/public-repo/plugins/interf/.mcp.json +0 -12
- package/public-repo/plugins/interf/README.md +0 -32
- package/public-repo/plugins/interf/skills/interf/SKILL.md +0 -376
- /package/dist/packages/{engine/agents/lib/types.js → runtime/actions/fields.js} +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/agents.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/agents.js +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/execution.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/preflight.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/status.d.ts +0 -0
- /package/dist/packages/{engine/build/runtime-types.js → runtime/agents/lib/types.js} +0 -0
- /package/dist/packages/{engine/verify/verify-types.js → runtime/agents/providers/types.js} +0 -0
- /package/dist/packages/{engine → runtime}/agents/role-router.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/build/build-execution.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/build/build-execution.js +0 -0
- /package/dist/packages/{engine → runtime}/build/runtime-contracts.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/build/runtime-prompt.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/execution/adapters.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/execution/adapters.js +0 -0
- /package/dist/packages/{engine → runtime}/execution/events.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/execution/events.js +0 -0
- /package/dist/packages/{engine → runtime}/verify/verify-profile-presets.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/verify/verify-profile-presets.js +0 -0
- /package/dist/packages/{engine → runtime}/verify/verify-types.d.ts +0 -0
|
@@ -3,11 +3,11 @@ import { join } from "node:path";
|
|
|
3
3
|
import { builtinBuildPlanPackagePath, isBuildPlanId, listLocalBuildPlanDefinitions, loadLocalBuildPlanDefinition, loadBuildPlanDefinitionFromDir, mergeStagePolicyNotesForStages, } from "./local-build-plans.js";
|
|
4
4
|
import { listUserBuildPlanDefinitions, loadUserBuildPlanDefinition, } from "./user-build-plans.js";
|
|
5
5
|
import { warnInterf } from "../../contracts/utils/logger.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { resolveSourceControlPath } from "../../
|
|
6
|
+
import { buildPlanPackagePathForContextGraph } from "../../runtime/build/context-graph-paths.js";
|
|
7
|
+
import { asProjectDataDir, projectBuildPlanPackagePath } from "../../contracts/lib/project-paths.js";
|
|
8
|
+
import { resolveSourceControlPath } from "../../projects/interf.js";
|
|
9
9
|
import { deriveBuildPlanInputsFromContextInterface, } from "./context-interface.js";
|
|
10
|
-
|
|
10
|
+
import { DEFAULT_BUILD_PLAN_ID } from "../build-plan-resolution.js";
|
|
11
11
|
let builtinDefaultBuildPlanCache = null;
|
|
12
12
|
function toBuildPlanStages(stages) {
|
|
13
13
|
return stages.map((stage) => ({
|
|
@@ -16,7 +16,10 @@ function toBuildPlanStages(stages) {
|
|
|
16
16
|
description: stage.description ?? stage.label,
|
|
17
17
|
contractType: stage.contract_type,
|
|
18
18
|
skillDir: stage.skill_dir ?? stage.id,
|
|
19
|
-
|
|
19
|
+
// Store the TRIMMED role so a padded value like " general " maps to the
|
|
20
|
+
// same agent-role-map key the validity check (`.trim().length > 0`) tested,
|
|
21
|
+
// matching how `ensureStageRoles` (build-plan-authoring.ts) stores roles.
|
|
22
|
+
role: stage.role && stage.role.trim().length > 0 ? stage.role.trim() : "general",
|
|
20
23
|
reads: [...stage.reads],
|
|
21
24
|
writes: [...stage.writes],
|
|
22
25
|
}));
|
|
@@ -32,7 +35,7 @@ export function standaloneBuildPlanDefinitionFromLocalPackage(local) {
|
|
|
32
35
|
: deriveBuildPlanInputsFromContextInterface(contextInterface);
|
|
33
36
|
return {
|
|
34
37
|
id: local.id,
|
|
35
|
-
|
|
38
|
+
runtimeApi: local.runtime_api ?? {
|
|
36
39
|
kind: "build",
|
|
37
40
|
version: 1,
|
|
38
41
|
},
|
|
@@ -44,12 +47,12 @@ export function standaloneBuildPlanDefinitionFromLocalPackage(local) {
|
|
|
44
47
|
},
|
|
45
48
|
}
|
|
46
49
|
: {}),
|
|
50
|
+
...(local.brief ? { brief: local.brief } : {}),
|
|
47
51
|
inputs,
|
|
48
52
|
label: local.label,
|
|
49
53
|
hint: local.hint,
|
|
50
54
|
recommended: false,
|
|
51
55
|
contextInterface,
|
|
52
|
-
...(contextInterface ? { schema: contextInterface } : {}),
|
|
53
56
|
stages,
|
|
54
57
|
stagePolicyNotes: mergeStagePolicyNotesForStages(stages, undefined, local.stage_policy_notes),
|
|
55
58
|
starterDocs: [...local.starter_docs],
|
|
@@ -75,8 +78,8 @@ function getBuiltinDefaultBuildPlan() {
|
|
|
75
78
|
function listBuiltinBuildPlans() {
|
|
76
79
|
return [getBuiltinDefaultBuildPlan()];
|
|
77
80
|
}
|
|
78
|
-
function resolveBuildPlanFromLocal(buildPlanId,
|
|
79
|
-
const local = loadLocalBuildPlanDefinition(
|
|
81
|
+
function resolveBuildPlanFromLocal(buildPlanId, projectDataDir) {
|
|
82
|
+
const local = loadLocalBuildPlanDefinition(projectDataDir, buildPlanId);
|
|
80
83
|
if (!local)
|
|
81
84
|
return null;
|
|
82
85
|
const resolved = standaloneBuildPlanDefinitionFromLocalPackage(local);
|
|
@@ -89,7 +92,7 @@ function resolveBuildPlanFromUserLibrary(buildPlanId) {
|
|
|
89
92
|
const resolved = standaloneBuildPlanDefinitionFromLocalPackage(user);
|
|
90
93
|
return { ...resolved, scope: "user" };
|
|
91
94
|
}
|
|
92
|
-
export function listBuildPlanChoices(
|
|
95
|
+
export function listBuildPlanChoices(projectDataDir) {
|
|
93
96
|
const builtins = listBuiltinBuildPlans();
|
|
94
97
|
const buildPlansById = new Map();
|
|
95
98
|
for (const buildPlan of builtins) {
|
|
@@ -105,11 +108,11 @@ export function listBuildPlanChoices(prepDataDir) {
|
|
|
105
108
|
warnInterf(`Warning: skipping user Build Plan "${definition.id}" because it could not be resolved cleanly: ${error instanceof Error ? error.message : String(error)}`);
|
|
106
109
|
}
|
|
107
110
|
}
|
|
108
|
-
if (!
|
|
111
|
+
if (!projectDataDir)
|
|
109
112
|
return [...buildPlansById.values()];
|
|
110
|
-
for (const definition of listLocalBuildPlanDefinitions(
|
|
113
|
+
for (const definition of listLocalBuildPlanDefinitions(projectDataDir)) {
|
|
111
114
|
try {
|
|
112
|
-
const buildPlan = resolveBuildPlanFromLocal(definition.id,
|
|
115
|
+
const buildPlan = resolveBuildPlanFromLocal(definition.id, projectDataDir);
|
|
113
116
|
if (buildPlan)
|
|
114
117
|
buildPlansById.set(buildPlan.id, buildPlan);
|
|
115
118
|
}
|
|
@@ -120,8 +123,8 @@ export function listBuildPlanChoices(prepDataDir) {
|
|
|
120
123
|
return [...buildPlansById.values()];
|
|
121
124
|
}
|
|
122
125
|
export function getBuildPlan(buildPlanId, options = {}) {
|
|
123
|
-
if (options.
|
|
124
|
-
const local = resolveBuildPlanFromLocal(buildPlanId, options.
|
|
126
|
+
if (options.projectDataDir) {
|
|
127
|
+
const local = resolveBuildPlanFromLocal(buildPlanId, options.projectDataDir);
|
|
125
128
|
if (local)
|
|
126
129
|
return local;
|
|
127
130
|
}
|
|
@@ -131,23 +134,23 @@ export function getBuildPlan(buildPlanId, options = {}) {
|
|
|
131
134
|
const builtin = listBuiltinBuildPlans().find((candidate) => candidate.id === buildPlanId);
|
|
132
135
|
if (builtin)
|
|
133
136
|
return builtin;
|
|
134
|
-
if (options.
|
|
135
|
-
throw new Error(`No Build Plan package "${buildPlanId}" found in this
|
|
137
|
+
if (options.projectDataDir) {
|
|
138
|
+
throw new Error(`No Build Plan package "${buildPlanId}" found in this Project, in your user library, or among bundled Build Plan packages. Looked under ${projectBuildPlanPackagePath(asProjectDataDir(options.projectDataDir), buildPlanId)} and ~/.interf/build-plans/${buildPlanId}.`);
|
|
136
139
|
}
|
|
137
|
-
throw new Error(`Build Plan package "${buildPlanId}" is not built-in and no
|
|
140
|
+
throw new Error(`Build Plan package "${buildPlanId}" is not built-in and no Project data directory was provided to look for a local override.`);
|
|
138
141
|
}
|
|
139
|
-
export function getActiveBuildPlan(
|
|
140
|
-
const buildPlanPath =
|
|
142
|
+
export function getActiveBuildPlan(contextGraphPath) {
|
|
143
|
+
const buildPlanPath = buildPlanPackagePathForContextGraph(contextGraphPath);
|
|
141
144
|
if (existsSync(join(buildPlanPath, "build-plan.json"))) {
|
|
142
145
|
const local = loadBuildPlanDefinitionFromDir(buildPlanPath);
|
|
143
146
|
if (!local) {
|
|
144
|
-
throw new Error(`Local Build Plan package at ${buildPlanPath} is missing or invalid. Interf
|
|
147
|
+
throw new Error(`Local Build Plan package at ${buildPlanPath} is missing or invalid. Interf builds the local package directly; recreate or reseed this Context Graph.`);
|
|
145
148
|
}
|
|
146
149
|
return standaloneBuildPlanDefinitionFromLocalPackage(local);
|
|
147
150
|
}
|
|
148
|
-
throw new Error(`Missing local Build Plan package at ${buildPlanPath}. Interf
|
|
151
|
+
throw new Error(`Missing local Build Plan package at ${buildPlanPath}. Interf builds the local package directly, so recreate or reseed this Context Graph under ${resolveSourceControlPath(contextGraphPath)}.`);
|
|
149
152
|
}
|
|
150
|
-
export function
|
|
153
|
+
export function resolveContextGraphBuildPlanId(value) {
|
|
151
154
|
if (typeof value === "string" && isBuildPlanId(value)) {
|
|
152
155
|
return value;
|
|
153
156
|
}
|
|
@@ -157,21 +160,21 @@ export function resolveBuildPlanFromConfig(config) {
|
|
|
157
160
|
if (!config || typeof config !== "object")
|
|
158
161
|
return null;
|
|
159
162
|
const raw = config;
|
|
160
|
-
return
|
|
163
|
+
return resolveContextGraphBuildPlanId(raw.build_plan);
|
|
161
164
|
}
|
|
162
|
-
export function resolveRequiredBuildPlanFromConfig(config, label = "
|
|
165
|
+
export function resolveRequiredBuildPlanFromConfig(config, label = "Context Graph config") {
|
|
163
166
|
const buildPlanId = resolveBuildPlanFromConfig(config);
|
|
164
167
|
if (!buildPlanId) {
|
|
165
168
|
throw new Error(`Missing or invalid Build Plan in ${label}.`);
|
|
166
169
|
}
|
|
167
170
|
return buildPlanId;
|
|
168
171
|
}
|
|
169
|
-
function resolveBuildPlanDefinitionForStageMetadata(buildPlanId,
|
|
170
|
-
if (
|
|
171
|
-
existsSync(join(
|
|
172
|
-
return getActiveBuildPlan(
|
|
172
|
+
function resolveBuildPlanDefinitionForStageMetadata(buildPlanId, projectDataDir) {
|
|
173
|
+
if (projectDataDir &&
|
|
174
|
+
existsSync(join(buildPlanPackagePathForContextGraph(projectDataDir), "build-plan.json"))) {
|
|
175
|
+
return getActiveBuildPlan(projectDataDir);
|
|
173
176
|
}
|
|
174
|
-
return getBuildPlan(buildPlanId, {
|
|
177
|
+
return getBuildPlan(buildPlanId, { projectDataDir });
|
|
175
178
|
}
|
|
176
179
|
function formatBuildPlanStageLabel(buildPlan, stage) {
|
|
177
180
|
const stageIndex = buildPlan.stages.findIndex((candidate) => candidate.id === stage);
|
|
@@ -184,12 +187,12 @@ function formatBuildPlanStageLabel(buildPlan, stage) {
|
|
|
184
187
|
}
|
|
185
188
|
return `Stage ${stageIndex + 1}/${buildPlan.stages.length} - ${stageDefinition.label}`;
|
|
186
189
|
}
|
|
187
|
-
export function getBuildPlanStageDefinition(buildPlanId, stage,
|
|
188
|
-
const buildPlan = resolveBuildPlanDefinitionForStageMetadata(buildPlanId,
|
|
190
|
+
export function getBuildPlanStageDefinition(buildPlanId, stage, projectDataDir) {
|
|
191
|
+
const buildPlan = resolveBuildPlanDefinitionForStageMetadata(buildPlanId, projectDataDir);
|
|
189
192
|
return buildPlan.stages.find((candidate) => candidate.id === stage) ?? null;
|
|
190
193
|
}
|
|
191
|
-
export function getBuildPlanStagePosition(buildPlanId, stage,
|
|
192
|
-
const stages = getBuildPlanStages(buildPlanId,
|
|
194
|
+
export function getBuildPlanStagePosition(buildPlanId, stage, projectDataDir) {
|
|
195
|
+
const stages = getBuildPlanStages(buildPlanId, projectDataDir);
|
|
193
196
|
const stageIndex = stages.findIndex((candidate) => candidate === stage);
|
|
194
197
|
if (stageIndex === -1)
|
|
195
198
|
return null;
|
|
@@ -199,16 +202,16 @@ export function getBuildPlanStagePosition(buildPlanId, stage, prepDataDir) {
|
|
|
199
202
|
stages: [...stages],
|
|
200
203
|
};
|
|
201
204
|
}
|
|
202
|
-
export function getBuildPlanStages(buildPlanId,
|
|
203
|
-
return resolveBuildPlanDefinitionForStageMetadata(buildPlanId,
|
|
205
|
+
export function getBuildPlanStages(buildPlanId, projectDataDir) {
|
|
206
|
+
return resolveBuildPlanDefinitionForStageMetadata(buildPlanId, projectDataDir).stages.map((definition) => definition.id);
|
|
204
207
|
}
|
|
205
|
-
export function getActiveBuildPlanStages(
|
|
206
|
-
return getActiveBuildPlan(
|
|
208
|
+
export function getActiveBuildPlanStages(contextGraphPath) {
|
|
209
|
+
return getActiveBuildPlan(contextGraphPath).stages.map((definition) => definition.id);
|
|
207
210
|
}
|
|
208
|
-
export function getActiveBuildPlanStagePolicyNotes(
|
|
209
|
-
const buildPlan = getActiveBuildPlan(
|
|
211
|
+
export function getActiveBuildPlanStagePolicyNotes(contextGraphPath, stage) {
|
|
212
|
+
const buildPlan = getActiveBuildPlan(contextGraphPath);
|
|
210
213
|
return [...(buildPlan.stagePolicyNotes?.[stage] ?? [])];
|
|
211
214
|
}
|
|
212
|
-
export function formatActiveBuildPlanStageLabel(
|
|
213
|
-
return formatBuildPlanStageLabel(getActiveBuildPlan(
|
|
215
|
+
export function formatActiveBuildPlanStageLabel(contextGraphPath, stage) {
|
|
216
|
+
return formatBuildPlanStageLabel(getActiveBuildPlan(contextGraphPath), stage);
|
|
214
217
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type LocalInstructionMode, type RuntimeInstructionMode, type RuntimeStageInstructions } from "../../
|
|
1
|
+
import { type LocalInstructionMode, type RuntimeInstructionMode, type RuntimeStageInstructions } from "../../runtime/build/lib/schema.js";
|
|
2
2
|
export interface BuildPlanReporter {
|
|
3
3
|
line?: (message: string) => void;
|
|
4
4
|
blankLine?: () => void;
|
|
@@ -9,7 +9,7 @@ export interface BuildPlanStageResult {
|
|
|
9
9
|
summary?: string | null;
|
|
10
10
|
}
|
|
11
11
|
export declare function buildPlanStageDirectory(stageDir: string): string;
|
|
12
|
-
|
|
12
|
+
interface LocalSkillContractExtension {
|
|
13
13
|
reads: string[];
|
|
14
14
|
count: number;
|
|
15
15
|
notes: string[];
|
|
@@ -22,3 +22,4 @@ export declare function buildStageInstructions(stageSkillDir: string, localSkill
|
|
|
22
22
|
export declare function reportLine(reporter: BuildPlanReporter | undefined, message: string): void;
|
|
23
23
|
export declare function reportBlankLine(reporter: BuildPlanReporter | undefined): void;
|
|
24
24
|
export declare function reportValidationFailure(reporter: BuildPlanReporter | undefined, summary: string, errors?: string[]): void;
|
|
25
|
+
export {};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { existsSync, readFileSync } from "node:fs";
|
|
1
|
+
import { existsSync, lstatSync, readFileSync, realpathSync } from "node:fs";
|
|
2
2
|
import { join, relative, sep } from "node:path";
|
|
3
3
|
import { listFilesRecursive } from "../../contracts/utils/filesystem.js";
|
|
4
4
|
import { parseJsonFrontmatter } from "../../contracts/utils/parse.js";
|
|
5
5
|
import { isMarkdownFile } from "../../contracts/utils/file-types.js";
|
|
6
|
-
import {
|
|
6
|
+
import { CONTEXT_GRAPH_BUILD_PLAN_DIR, buildPlanPackagePathForContextGraph } from "../../runtime/build/context-graph-paths.js";
|
|
7
7
|
const LOCAL_SKILL_READ_LIMIT = 50;
|
|
8
8
|
export function buildPlanStageDirectory(stageDir) {
|
|
9
|
-
return `${
|
|
9
|
+
return `${CONTEXT_GRAPH_BUILD_PLAN_DIR}/build/stages/${stageDir}`;
|
|
10
10
|
}
|
|
11
11
|
function emptyLocalSkillContractExtension() {
|
|
12
12
|
return {
|
|
@@ -28,11 +28,23 @@ function readLocalInstructionMode(filePath) {
|
|
|
28
28
|
return null;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
+
function isRegularFileInside(rootPath, filePath) {
|
|
32
|
+
try {
|
|
33
|
+
if (!lstatSync(filePath).isFile())
|
|
34
|
+
return false;
|
|
35
|
+
const root = realpathSync(rootPath);
|
|
36
|
+
const file = realpathSync(filePath);
|
|
37
|
+
return file === root || file.startsWith(`${root}${sep}`);
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
31
43
|
function collectLocalSkillDocs(rootPath, directories) {
|
|
32
44
|
const docs = new Map();
|
|
33
|
-
const buildPlanRoot =
|
|
45
|
+
const buildPlanRoot = buildPlanPackagePathForContextGraph(rootPath);
|
|
34
46
|
const rootReadme = join(buildPlanRoot, "README.md");
|
|
35
|
-
if (existsSync(rootReadme)) {
|
|
47
|
+
if (existsSync(rootReadme) && isRegularFileInside(buildPlanRoot, rootReadme)) {
|
|
36
48
|
const read = projectBuildPlanReadPath(rootPath, rootReadme);
|
|
37
49
|
docs.set(read, {
|
|
38
50
|
read,
|
|
@@ -43,6 +55,8 @@ function collectLocalSkillDocs(rootPath, directories) {
|
|
|
43
55
|
for (const directory of directories) {
|
|
44
56
|
const absoluteDirectory = resolveAuthoringDirectory(rootPath, directory);
|
|
45
57
|
for (const filePath of listFilesRecursive(absoluteDirectory, isMarkdownFile)) {
|
|
58
|
+
if (!isRegularFileInside(buildPlanRoot, filePath))
|
|
59
|
+
continue;
|
|
46
60
|
const read = projectBuildPlanReadPath(rootPath, filePath);
|
|
47
61
|
docs.set(read, {
|
|
48
62
|
read,
|
|
@@ -56,21 +70,21 @@ function collectLocalSkillDocs(rootPath, directories) {
|
|
|
56
70
|
.slice(0, LOCAL_SKILL_READ_LIMIT);
|
|
57
71
|
}
|
|
58
72
|
function resolveAuthoringDirectory(rootPath, directory) {
|
|
59
|
-
if (directory ===
|
|
60
|
-
return
|
|
73
|
+
if (directory === CONTEXT_GRAPH_BUILD_PLAN_DIR) {
|
|
74
|
+
return buildPlanPackagePathForContextGraph(rootPath);
|
|
61
75
|
}
|
|
62
|
-
if (directory.startsWith(`${
|
|
76
|
+
if (directory.startsWith(`${CONTEXT_GRAPH_BUILD_PLAN_DIR}${sep}`) || directory.startsWith(`${CONTEXT_GRAPH_BUILD_PLAN_DIR}/`)) {
|
|
63
77
|
const relativeBuildPlanPath = directory.replace(/^build-plan[\\/]/, "");
|
|
64
|
-
return join(
|
|
78
|
+
return join(buildPlanPackagePathForContextGraph(rootPath), relativeBuildPlanPath);
|
|
65
79
|
}
|
|
66
80
|
return join(rootPath, directory);
|
|
67
81
|
}
|
|
68
82
|
function projectBuildPlanReadPath(rootPath, absolutePath) {
|
|
69
|
-
const buildPlanRoot =
|
|
83
|
+
const buildPlanRoot = buildPlanPackagePathForContextGraph(rootPath);
|
|
70
84
|
const normalizedBuildPlanRoot = `${buildPlanRoot}${sep}`;
|
|
71
85
|
if (absolutePath === buildPlanRoot || absolutePath.startsWith(normalizedBuildPlanRoot)) {
|
|
72
86
|
const relativeBuildPlanPath = relative(buildPlanRoot, absolutePath);
|
|
73
|
-
return relative(rootPath, join(rootPath,
|
|
87
|
+
return relative(rootPath, join(rootPath, CONTEXT_GRAPH_BUILD_PLAN_DIR, relativeBuildPlanPath));
|
|
74
88
|
}
|
|
75
89
|
return relative(rootPath, absolutePath);
|
|
76
90
|
}
|
|
@@ -98,8 +112,8 @@ function buildContractExtensionFromDocs(docs, directories, purpose) {
|
|
|
98
112
|
notes: [
|
|
99
113
|
readNotice,
|
|
100
114
|
localMode === "override"
|
|
101
|
-
? `${purpose} One or more local docs declare \`mode: override\`, so their Build Plan instructions replace Interf's bundled stage instructions for this run. They still do not bypass coverage
|
|
102
|
-
: `${purpose} These local Build Plan docs can refine the stage, but they do not bypass coverage
|
|
115
|
+
? `${purpose} One or more local docs declare \`mode: override\`, so their Build Plan instructions replace Interf's bundled stage instructions for this run. They still do not bypass coverage evidence, evidence weighting, required writes, or deterministic runtime reconciliation.`
|
|
116
|
+
: `${purpose} These local Build Plan docs can refine the stage, but they do not bypass coverage evidence, evidence weighting, required writes, or deterministic runtime reconciliation.`,
|
|
103
117
|
],
|
|
104
118
|
localMode,
|
|
105
119
|
effectiveMode: localMode ?? "builtin",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { BuildPlanImprovementContext } from "../../
|
|
1
|
+
import type { BuildPlanImprovementContext } from "../../runtime/build/lib/schema.js";
|
|
2
2
|
export interface BuildPlanImprovementReviewSourcePaths {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
contextGraphRuntime: string | null;
|
|
4
|
+
benchmarkRuns: string | null;
|
|
5
5
|
executionShells: string | null;
|
|
6
6
|
targetTestRuns: string | null;
|
|
7
7
|
targetTestSandboxes: string | null;
|
|
8
8
|
}
|
|
9
|
-
export declare function resolveBuildPlanImprovementReviewSourcePaths(
|
|
10
|
-
export declare function resolveBuildPlanImprovementReviewPaths(
|
|
9
|
+
export declare function resolveBuildPlanImprovementReviewSourcePaths(contextGraphPath: string): BuildPlanImprovementReviewSourcePaths;
|
|
10
|
+
export declare function resolveBuildPlanImprovementReviewPaths(contextGraphPath: string): BuildPlanImprovementContext["review_paths"];
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { existsSync } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
-
import {
|
|
4
|
-
export function resolveBuildPlanImprovementReviewSourcePaths(
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const executionShells = stageExecutionShellsRoot(
|
|
8
|
-
const targetTestRuns =
|
|
9
|
-
const targetTestSandboxes =
|
|
3
|
+
import { testRootForContextGraph, targetTestRunsRootForContextGraph, targetTestSandboxesRootForContextGraph, stageExecutionShellsRoot, contextGraphRuntimeRoot, } from "../../runtime/build/context-graph-paths.js";
|
|
4
|
+
export function resolveBuildPlanImprovementReviewSourcePaths(contextGraphPath) {
|
|
5
|
+
const contextGraphRuntime = contextGraphRuntimeRoot(contextGraphPath);
|
|
6
|
+
const benchmarkRuns = testRootForContextGraph(contextGraphPath);
|
|
7
|
+
const executionShells = stageExecutionShellsRoot(contextGraphPath);
|
|
8
|
+
const targetTestRuns = targetTestRunsRootForContextGraph(contextGraphPath);
|
|
9
|
+
const targetTestSandboxes = targetTestSandboxesRootForContextGraph(contextGraphPath);
|
|
10
10
|
return {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
existsSync(join(
|
|
14
|
-
?
|
|
11
|
+
contextGraphRuntime: existsSync(contextGraphRuntime) ? contextGraphRuntime : null,
|
|
12
|
+
benchmarkRuns: existsSync(join(benchmarkRuns, "latest.json")) ||
|
|
13
|
+
existsSync(join(benchmarkRuns, "latest.md"))
|
|
14
|
+
? benchmarkRuns
|
|
15
15
|
: null,
|
|
16
16
|
executionShells: existsSync(executionShells) ? executionShells : null,
|
|
17
17
|
targetTestRuns: existsSync(targetTestRuns) ? targetTestRuns : null,
|
|
18
18
|
targetTestSandboxes: existsSync(targetTestSandboxes) ? targetTestSandboxes : null,
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
export function resolveBuildPlanImprovementReviewPaths(
|
|
22
|
-
const sources = resolveBuildPlanImprovementReviewSourcePaths(
|
|
21
|
+
export function resolveBuildPlanImprovementReviewPaths(contextGraphPath) {
|
|
22
|
+
const sources = resolveBuildPlanImprovementReviewSourcePaths(contextGraphPath);
|
|
23
23
|
return {
|
|
24
24
|
build_plan_root: "build-plan",
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
context_graph_runtime: sources.contextGraphRuntime ? "artifacts/context-graph-runtime" : null,
|
|
26
|
+
benchmark_runs: sources.benchmarkRuns ? "artifacts/benchmark-runs" : null,
|
|
27
27
|
execution_shells: sources.executionShells ? "artifacts/execution-shells" : null,
|
|
28
28
|
test_runs: sources.targetTestRuns ? "artifacts/test-runs" : null,
|
|
29
29
|
test_sandboxes: sources.targetTestSandboxes ? "artifacts/test-sandboxes" : null,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type AgentExecutor } from "../../
|
|
2
|
-
import { type RuntimeStageInstructions } from "../../
|
|
1
|
+
import { type AgentExecutor } from "../../runtime/agents/lib/executors.js";
|
|
2
|
+
import { type RuntimeStageInstructions } from "../../runtime/build/lib/schema.js";
|
|
3
3
|
import type { RuntimeContractType } from "../../contracts/lib/schema.js";
|
|
4
|
-
import { type RuntimeStageContractDraft } from "../../
|
|
4
|
+
import { type RuntimeStageContractDraft } from "../../runtime/build/runtime.js";
|
|
5
5
|
import { type BuildPlanReporter, type BuildPlanStageResult } from "./build-plan-helpers.js";
|
|
6
6
|
interface BuildPlanStageShape<TContractType extends RuntimeContractType> {
|
|
7
7
|
id: string;
|
|
@@ -10,11 +10,12 @@ interface BuildPlanStageShape<TContractType extends RuntimeContractType> {
|
|
|
10
10
|
}
|
|
11
11
|
interface ExecuteValidatedStageOptions<TContractType extends RuntimeContractType> {
|
|
12
12
|
executor: AgentExecutor;
|
|
13
|
-
|
|
13
|
+
contextGraphPath: string;
|
|
14
14
|
executionPath?: string;
|
|
15
15
|
targetName: string;
|
|
16
16
|
buildPlan: string;
|
|
17
17
|
buildPlanSourcePath?: string;
|
|
18
|
+
buildRunId?: string | null;
|
|
18
19
|
stageDefinition: BuildPlanStageShape<TContractType>;
|
|
19
20
|
instructions: RuntimeStageInstructions;
|
|
20
21
|
summary: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { markExecutionStageLedgerSucceededAfterValidation, buildStagePrompt, markExecutionStageLedgerFailedAfterValidation, runExecutorStage, } from "../../runtime/build/runtime.js";
|
|
2
2
|
import { reportValidationFailure, } from "./build-plan-helpers.js";
|
|
3
3
|
export function findStageByContractType(stages, contractType) {
|
|
4
4
|
const stage = stages.find((candidate) => candidate.contractType === contractType);
|
|
@@ -11,17 +11,19 @@ export async function executeValidatedStage(options) {
|
|
|
11
11
|
const completionCheck = options.completionCheck
|
|
12
12
|
? () => {
|
|
13
13
|
options.syncWrites?.();
|
|
14
|
-
options.reconcile?.()
|
|
14
|
+
if (options.reconcile?.() === false)
|
|
15
|
+
return false;
|
|
15
16
|
return options.completionCheck?.() === true;
|
|
16
17
|
}
|
|
17
18
|
: undefined;
|
|
18
19
|
const code = await runExecutorStage({
|
|
19
20
|
executor: options.executor,
|
|
20
|
-
|
|
21
|
+
contextGraphPath: options.contextGraphPath,
|
|
21
22
|
executionPath: options.executionPath,
|
|
22
|
-
|
|
23
|
+
contextGraphName: options.targetName,
|
|
23
24
|
buildPlan: options.buildPlan,
|
|
24
25
|
buildPlanSourcePath: options.buildPlanSourcePath,
|
|
26
|
+
buildRunId: options.buildRunId ?? null,
|
|
25
27
|
stage: options.stageDefinition.id,
|
|
26
28
|
stageLabel: options.stageDefinition.label,
|
|
27
29
|
contractType: options.stageDefinition.contractType,
|
|
@@ -36,16 +38,22 @@ export async function executeValidatedStage(options) {
|
|
|
36
38
|
function finalizeValidatedStage(options, code) {
|
|
37
39
|
const refreshAndValidate = () => {
|
|
38
40
|
options.syncWrites?.();
|
|
39
|
-
options.reconcile?.();
|
|
41
|
+
const reconciled = options.reconcile?.() ?? true;
|
|
40
42
|
options.refreshArtifacts?.();
|
|
41
|
-
|
|
43
|
+
const validation = options.validate();
|
|
44
|
+
if (!reconciled && validation.ok) {
|
|
45
|
+
return {
|
|
46
|
+
ok: false,
|
|
47
|
+
summary: "Stage did not update any declared requested output.",
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
return validation;
|
|
42
51
|
};
|
|
43
52
|
if (code !== 0) {
|
|
44
53
|
let completionSatisfied = false;
|
|
45
54
|
try {
|
|
46
55
|
options.syncWrites?.();
|
|
47
|
-
options.reconcile?.();
|
|
48
|
-
completionSatisfied = options.completionCheck?.() === true;
|
|
56
|
+
completionSatisfied = options.reconcile?.() !== false && options.completionCheck?.() === true;
|
|
49
57
|
}
|
|
50
58
|
catch {
|
|
51
59
|
completionSatisfied = false;
|
|
@@ -53,7 +61,7 @@ function finalizeValidatedStage(options, code) {
|
|
|
53
61
|
if (completionSatisfied) {
|
|
54
62
|
const validation = refreshAndValidate();
|
|
55
63
|
if (validation.ok) {
|
|
56
|
-
|
|
64
|
+
markExecutionStageLedgerSucceededAfterValidation(options.contextGraphPath, validation.summary);
|
|
57
65
|
return {
|
|
58
66
|
ok: true,
|
|
59
67
|
code: 0,
|
|
@@ -61,19 +69,23 @@ function finalizeValidatedStage(options, code) {
|
|
|
61
69
|
};
|
|
62
70
|
}
|
|
63
71
|
reportValidationFailure(options.reporter, validation.summary);
|
|
64
|
-
|
|
72
|
+
markExecutionStageLedgerFailedAfterValidation(options.contextGraphPath, validation.summary);
|
|
65
73
|
return {
|
|
66
74
|
ok: false,
|
|
67
75
|
code,
|
|
68
76
|
summary: validation.summary,
|
|
69
77
|
};
|
|
70
78
|
}
|
|
79
|
+
markExecutionStageLedgerFailedAfterValidation(options.contextGraphPath, `${options.stageDefinition.label} failed with exit code ${code}.`);
|
|
71
80
|
return { ok: false, code };
|
|
72
81
|
}
|
|
73
82
|
const validation = refreshAndValidate();
|
|
74
83
|
if (!validation.ok) {
|
|
75
84
|
reportValidationFailure(options.reporter, validation.summary);
|
|
76
|
-
|
|
85
|
+
markExecutionStageLedgerFailedAfterValidation(options.contextGraphPath, validation.summary);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
markExecutionStageLedgerSucceededAfterValidation(options.contextGraphPath, validation.summary);
|
|
77
89
|
}
|
|
78
90
|
return {
|
|
79
91
|
ok: validation.ok,
|
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
import { type BuildPlanArtifactKind } from "../../
|
|
1
|
+
import { type BuildPlanArtifactKind } from "../../runtime/build/build-plan-primitives.js";
|
|
2
2
|
declare const BUILTIN_BUILD_PLAN_STAGE_IDS: {
|
|
3
3
|
readonly SUMMARIZE: "summarize";
|
|
4
|
-
readonly
|
|
5
|
-
readonly
|
|
4
|
+
readonly KNOWLEDGE: "knowledge";
|
|
5
|
+
readonly ENTRYPOINT: "entrypoint";
|
|
6
6
|
};
|
|
7
7
|
type BuiltinBuildStageId = typeof BUILTIN_BUILD_PLAN_STAGE_IDS[keyof typeof BUILTIN_BUILD_PLAN_STAGE_IDS];
|
|
8
8
|
export declare const BUILTIN_BUILD_PLAN_ARTIFACT_IDS: {
|
|
9
9
|
readonly SUMMARIES: "summaries";
|
|
10
|
-
readonly
|
|
11
|
-
readonly
|
|
12
|
-
readonly
|
|
13
|
-
readonly HOME: "atlas";
|
|
10
|
+
readonly KNOWLEDGE: "knowledge";
|
|
11
|
+
readonly ARTIFACTS: "artifacts";
|
|
12
|
+
readonly HOME: "home";
|
|
14
13
|
readonly RUNTIME: "runtime";
|
|
15
14
|
};
|
|
16
15
|
export type BuiltinBuildPlanArtifactId = typeof BUILTIN_BUILD_PLAN_ARTIFACT_IDS[keyof typeof BUILTIN_BUILD_PLAN_ARTIFACT_IDS];
|
|
17
16
|
export interface BuiltinBuildPlanArtifactSpec {
|
|
18
17
|
id: BuiltinBuildPlanArtifactId;
|
|
19
|
-
role: "
|
|
18
|
+
role: "output";
|
|
20
19
|
path: string;
|
|
21
20
|
kind: BuildPlanArtifactKind;
|
|
22
21
|
required: boolean;
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
import { join } from "node:path";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { readJsonFileWithSchema } from "../../contracts/utils/parse.js";
|
|
4
|
-
import { BuildPlanContextSchemaSchema } from "../../
|
|
4
|
+
import { BuildPlanContextSchemaSchema } from "../../runtime/build/lib/schema.js";
|
|
5
5
|
import { PACKAGE_ROOT } from "./lib/package-root.js";
|
|
6
6
|
const BUILTIN_BUILD_PLAN_STAGE_IDS = {
|
|
7
7
|
SUMMARIZE: "summarize",
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
KNOWLEDGE: "knowledge",
|
|
9
|
+
ENTRYPOINT: "entrypoint",
|
|
10
10
|
};
|
|
11
11
|
export const BUILTIN_BUILD_PLAN_ARTIFACT_IDS = {
|
|
12
12
|
SUMMARIES: "summaries",
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
HOME: "atlas",
|
|
13
|
+
KNOWLEDGE: "knowledge",
|
|
14
|
+
ARTIFACTS: "artifacts",
|
|
15
|
+
HOME: "home",
|
|
17
16
|
RUNTIME: "runtime",
|
|
18
17
|
};
|
|
19
18
|
const BUILTIN_ARTIFACT_ID_SET = new Set(Object.values(BUILTIN_BUILD_PLAN_ARTIFACT_IDS));
|
|
@@ -28,10 +27,10 @@ const BuiltinBuildPlanPackageSchema = z.object({
|
|
|
28
27
|
stages: z.array(BuiltinBuildPlanStageSchema).min(1),
|
|
29
28
|
});
|
|
30
29
|
let builtinBuildPlanContractCache = null;
|
|
31
|
-
const
|
|
30
|
+
const BUILTIN_DEFAULT_BUILD_PLAN_ROOT = join(PACKAGE_ROOT, "public-repo", "build-plans", "interf-default");
|
|
32
31
|
function assertBuiltinArtifactId(value) {
|
|
33
32
|
if (!BUILTIN_ARTIFACT_ID_SET.has(value)) {
|
|
34
|
-
throw new Error(`Built-in Interf Build Plan schema declares unsupported
|
|
33
|
+
throw new Error(`Built-in Interf Build Plan schema declares unsupported requested output id "${value}".`);
|
|
35
34
|
}
|
|
36
35
|
return value;
|
|
37
36
|
}
|
|
@@ -44,8 +43,8 @@ function assertBuiltinStageId(value) {
|
|
|
44
43
|
function loadBuiltinBuildPlanContract() {
|
|
45
44
|
if (builtinBuildPlanContractCache)
|
|
46
45
|
return builtinBuildPlanContractCache;
|
|
47
|
-
const schemaPath = join(
|
|
48
|
-
const buildPlanPath = join(
|
|
46
|
+
const schemaPath = join(BUILTIN_DEFAULT_BUILD_PLAN_ROOT, "build-plan.schema.json");
|
|
47
|
+
const buildPlanPath = join(BUILTIN_DEFAULT_BUILD_PLAN_ROOT, "build-plan.json");
|
|
49
48
|
const schema = readJsonFileWithSchema(schemaPath, "built-in Interf Build Plan schema", BuildPlanContextSchemaSchema);
|
|
50
49
|
if (!schema) {
|
|
51
50
|
throw new Error(`Missing or invalid built-in Build Plan package schema at ${schemaPath}.`);
|
|
@@ -1,30 +1,38 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { type BuildPlanContextSchema, type BuildPlanArtifact, type BuildPlanArtifactId } from "../../
|
|
2
|
+
import { type BuildPlanContextSchema, type BuildPlanArtifact, type BuildPlanArtifactId } from "../../runtime/build/lib/schema.js";
|
|
3
3
|
export declare const CONTEXT_INTERFACE_FILE = "build-plan.schema.json";
|
|
4
4
|
export declare const ContextInterfaceSchema: z.ZodObject<{
|
|
5
5
|
kind: z.ZodLiteral<"build-plan-schema">;
|
|
6
6
|
version: z.ZodLiteral<1>;
|
|
7
|
-
target_type: z.ZodLiteral<"
|
|
7
|
+
target_type: z.ZodLiteral<"context-graph">;
|
|
8
8
|
label: z.ZodString;
|
|
9
9
|
artifacts: z.ZodArray<z.ZodObject<{
|
|
10
10
|
id: z.ZodString;
|
|
11
11
|
description: z.ZodString;
|
|
12
|
-
shape: z.
|
|
12
|
+
shape: z.ZodObject<{
|
|
13
13
|
kind: z.ZodLiteral<"path">;
|
|
14
14
|
path: z.ZodString;
|
|
15
15
|
artifact_kind: z.ZodEnum<{
|
|
16
16
|
file: "file";
|
|
17
17
|
directory: "directory";
|
|
18
18
|
}>;
|
|
19
|
-
}, z.core.$strict
|
|
19
|
+
}, z.core.$strict>;
|
|
20
20
|
checks: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
21
21
|
id: z.ZodString;
|
|
22
22
|
kind: z.ZodEnum<{
|
|
23
23
|
file_exists: "file_exists";
|
|
24
|
+
source_manifest_valid: "source_manifest_valid";
|
|
24
25
|
min_file_count: "min_file_count";
|
|
25
26
|
min_file_count_matches_source: "min_file_count_matches_source";
|
|
27
|
+
source_summary_folders: "source_summary_folders";
|
|
28
|
+
source_page_coverage: "source_page_coverage";
|
|
26
29
|
frontmatter_valid: "frontmatter_valid";
|
|
27
30
|
frontmatter_required_keys: "frontmatter_required_keys";
|
|
31
|
+
frontmatter_nonempty_keys: "frontmatter_nonempty_keys";
|
|
32
|
+
source_refs_required: "source_refs_required";
|
|
33
|
+
summary_backlinks_present: "summary_backlinks_present";
|
|
34
|
+
knowledge_web_connectivity: "knowledge_web_connectivity";
|
|
35
|
+
graph_notes_connected: "graph_notes_connected";
|
|
28
36
|
wikilinks_valid: "wikilinks_valid";
|
|
29
37
|
must_not_contain: "must_not_contain";
|
|
30
38
|
must_contain: "must_contain";
|
|
@@ -53,19 +61,16 @@ interface ContextInterfaceStageLike {
|
|
|
53
61
|
writes: readonly string[];
|
|
54
62
|
}
|
|
55
63
|
interface ContextInterfaceSummary {
|
|
56
|
-
inputArtifacts: ContextInterfaceArtifact[];
|
|
57
|
-
workingArtifacts: ContextInterfaceArtifact[];
|
|
58
64
|
outputArtifacts: ContextInterfaceArtifact[];
|
|
59
|
-
runtimeArtifacts: ContextInterfaceArtifact[];
|
|
60
65
|
}
|
|
61
66
|
export declare function listContextInterfaceArtifacts(contextInterface: ContextInterface): ContextInterfaceArtifact[];
|
|
62
67
|
export declare function contextInterfaceFilePath(rootPath: string): string;
|
|
63
68
|
export declare function resolveContextInterfacePath(rootPath: string): string | null;
|
|
64
69
|
export declare function contextInterfaceExists(rootPath: string): boolean;
|
|
65
|
-
export declare function contextInterfaceArtifactAbsolutePath(
|
|
70
|
+
export declare function contextInterfaceArtifactAbsolutePath(contextGraphPath: string, artifact: Pick<ContextInterfaceArtifact, "path">): string;
|
|
66
71
|
export declare function contextInterfaceArtifactPath(artifact: Pick<ContextInterfaceArtifact, "path" | "kind">): string;
|
|
67
72
|
export declare function summarizeContextInterface(contextInterface: ContextInterface): ContextInterfaceSummary;
|
|
68
|
-
export declare function deriveBuildPlanInputsFromContextInterface(
|
|
73
|
+
export declare function deriveBuildPlanInputsFromContextInterface(_contextInterface: ContextInterface | null | undefined): BuildPlanInputSpec[];
|
|
69
74
|
export declare function buildContextInterface(stages: ContextInterfaceStageLike[], label?: string): ContextInterface;
|
|
70
75
|
export declare function writeContextInterfaceFile(rootPath: string, stages: ContextInterfaceStageLike[], label?: string): ContextInterface;
|
|
71
76
|
export declare function writeContextInterface(rootPath: string, contextInterface: ContextInterface): ContextInterface;
|