@interf/compiler 0.22.2 → 0.33.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 +175 -234
- 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 -4
- package/dist/cli/commands/auth.d.ts +20 -0
- package/dist/cli/commands/auth.js +161 -0
- package/dist/cli/commands/benchmark.d.ts +10 -0
- package/dist/cli/commands/benchmark.js +88 -0
- package/dist/cli/commands/build-plan.js +95 -103
- package/dist/cli/commands/build.d.ts +1 -1
- package/dist/cli/commands/build.js +16 -15
- package/dist/cli/commands/doctor.js +3 -3
- package/dist/cli/commands/graphs.d.ts +2 -0
- package/dist/cli/commands/graphs.js +199 -0
- package/dist/cli/commands/login.js +4 -6
- package/dist/cli/commands/logout.js +1 -1
- package/dist/cli/commands/mcp.d.ts +3 -2
- package/dist/cli/commands/mcp.js +721 -204
- package/dist/cli/commands/project.d.ts +2 -0
- package/dist/cli/commands/project.js +202 -0
- package/dist/cli/commands/reset.d.ts +1 -1
- package/dist/cli/commands/reset.js +10 -10
- package/dist/cli/commands/runs.js +52 -26
- 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 +33 -22
- package/dist/cli/commands/traces.d.ts +2 -0
- package/dist/cli/commands/traces.js +125 -0
- package/dist/cli/commands/wizard.js +155 -150
- package/dist/cli/index.d.ts +7 -4
- package/dist/cli/index.js +13 -7
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/packages/build-plans/authoring/brief.d.ts +517 -0
- package/dist/packages/build-plans/authoring/brief.js +89 -0
- package/dist/packages/build-plans/authoring/build-plan-authoring.d.ts +10 -10
- package/dist/packages/build-plans/authoring/build-plan-authoring.js +66 -26
- package/dist/packages/build-plans/authoring/build-plan-edit-session.d.ts +1 -1
- package/dist/packages/build-plans/authoring/build-plan-edit-session.js +8 -2
- package/dist/packages/build-plans/authoring/build-plan-improvement.d.ts +9 -6
- package/dist/packages/build-plans/authoring/build-plan-improvement.js +39 -42
- 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 -12
- package/dist/packages/build-plans/package/build-plan-definitions.js +40 -39
- 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 +4 -4
- package/dist/packages/build-plans/package/build-plan-stage-runner.js +22 -11
- package/dist/packages/build-plans/package/builtin-build-plan.d.ts +5 -6
- package/dist/packages/build-plans/package/builtin-build-plan.js +7 -8
- package/dist/packages/build-plans/package/context-interface.d.ts +11 -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 +56 -52
- package/dist/packages/build-plans/package/local-build-plans.d.ts +12 -10
- package/dist/packages/build-plans/package/local-build-plans.js +56 -31
- package/dist/packages/build-plans/package/user-build-plans.js +1 -1
- package/dist/packages/contracts/index.d.ts +4 -2
- package/dist/packages/contracts/index.js +2 -1
- package/dist/packages/contracts/lib/project-paths.d.ts +137 -0
- package/dist/packages/contracts/lib/project-paths.js +211 -0
- package/dist/packages/contracts/lib/project-schema.d.ts +160 -0
- package/dist/packages/contracts/lib/project-schema.js +113 -0
- package/dist/packages/contracts/lib/schema.d.ts +739 -80
- package/dist/packages/contracts/lib/schema.js +410 -75
- 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 +79 -0
- package/dist/packages/projects/lib/schema.js +89 -0
- package/dist/packages/projects/source-config.d.ts +58 -0
- package/dist/packages/projects/source-config.js +352 -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 +82 -0
- package/dist/packages/runtime/actions/form-builders.d.ts +14 -0
- package/dist/packages/runtime/actions/form-builders.js +619 -0
- package/dist/packages/runtime/actions/form-validators.d.ts +8 -0
- package/dist/packages/runtime/actions/form-validators.js +128 -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 +158 -0
- package/dist/packages/runtime/actions/schemas.d.ts +154 -0
- package/dist/packages/runtime/actions/schemas.js +36 -0
- package/dist/packages/runtime/agent-handoff.d.ts +11 -0
- package/dist/packages/runtime/agent-handoff.js +101 -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.js +8 -14
- package/dist/packages/{engine → runtime}/agents/lib/execution.js +14 -4
- package/dist/packages/{engine → runtime}/agents/lib/preflight.js +15 -13
- package/dist/packages/{engine → runtime}/agents/lib/render.js +4 -4
- 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 +452 -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 +63 -0
- package/dist/packages/runtime/agents/lib/shells.js +383 -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 +64 -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 +7 -6
- 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 +88 -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 +20 -0
- package/dist/packages/runtime/benchmark-question-draft.js +124 -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 +5 -5
- package/dist/packages/{engine → runtime}/build/artifact-status.js +25 -23
- 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 +15 -0
- package/dist/packages/runtime/build/build-evidence.js +173 -0
- package/dist/packages/{engine → runtime}/build/build-pipeline.d.ts +12 -8
- package/dist/packages/runtime/build/build-pipeline.js +304 -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/{engine → runtime}/build/build-stage-plan.js +28 -29
- package/dist/packages/{engine → runtime}/build/build-stage-runner.d.ts +2 -1
- package/dist/packages/runtime/build/build-stage-runner.js +165 -0
- package/dist/packages/{engine → runtime}/build/build-target.d.ts +4 -4
- package/dist/packages/runtime/build/build-target.js +16 -0
- package/dist/packages/{engine → runtime}/build/check-evaluator.d.ts +14 -16
- package/dist/packages/runtime/build/check-evaluator.js +575 -0
- package/dist/packages/runtime/build/context-graph-paths.d.ts +51 -0
- package/dist/packages/runtime/build/context-graph-paths.js +133 -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 +5 -3
- package/dist/packages/{engine → runtime}/build/index.js +5 -3
- package/dist/packages/{engine → runtime}/build/lib/schema.d.ts +221 -88
- package/dist/packages/{engine → runtime}/build/lib/schema.js +61 -41
- 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 +5 -5
- 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/{engine → runtime}/build/runtime-paths.js +6 -6
- package/dist/packages/{engine → runtime}/build/runtime-prompt.js +7 -6
- 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 +265 -0
- package/dist/packages/{engine → runtime}/build/runtime-types.d.ts +6 -6
- package/dist/packages/runtime/build/runtime-types.js +1 -0
- package/dist/packages/runtime/build/runtime.d.ts +6 -0
- package/dist/packages/runtime/build/runtime.js +5 -0
- package/dist/packages/runtime/build/source-files.d.ts +58 -0
- package/dist/packages/runtime/build/source-files.js +184 -0
- package/dist/packages/runtime/build/source-inventory.d.ts +27 -0
- package/dist/packages/runtime/build/source-inventory.js +273 -0
- package/dist/packages/runtime/build/source-manifest.d.ts +52 -0
- package/dist/packages/runtime/build/source-manifest.js +192 -0
- package/dist/packages/runtime/build/stage-evidence.d.ts +22 -0
- package/dist/packages/runtime/build/stage-evidence.js +317 -0
- package/dist/packages/runtime/build/stage-reuse.d.ts +11 -0
- package/dist/packages/runtime/build/stage-reuse.js +142 -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 +119 -0
- package/dist/packages/{engine → runtime}/build/state-paths.d.ts +3 -1
- package/dist/packages/runtime/build/state-paths.js +22 -0
- package/dist/packages/runtime/build/state-view.d.ts +5 -0
- package/dist/packages/{engine → runtime}/build/state-view.js +60 -33
- package/dist/packages/runtime/build/state.d.ts +7 -0
- package/dist/packages/runtime/build/state.js +12 -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} +48 -35
- 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 +15 -15
- package/dist/packages/{engine → runtime}/client.js +41 -24
- 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 +114 -0
- package/dist/packages/runtime/context-graph-scaffold.d.ts +9 -0
- package/dist/packages/runtime/context-graph-scaffold.js +134 -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 +270 -192
- 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/{engine → runtime}/native-run-handlers.d.ts +4 -4
- package/dist/packages/{engine → runtime}/native-run-handlers.js +184 -152
- 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 +53 -0
- package/dist/packages/runtime/project-store.d.ts +85 -0
- package/dist/packages/runtime/project-store.js +168 -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 +166 -84
- 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 +131 -0
- package/dist/packages/runtime/runtime-build-runs.d.ts +47 -0
- package/dist/packages/runtime/runtime-build-runs.js +562 -0
- package/dist/packages/runtime/runtime-caches.d.ts +91 -0
- package/dist/packages/{engine → runtime}/runtime-caches.js +77 -49
- 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 +64 -0
- package/dist/packages/runtime/runtime-project-reads.d.ts +15 -0
- package/dist/packages/runtime/runtime-project-reads.js +381 -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 +21 -16
- package/dist/packages/{engine → runtime}/runtime-resource-builders.js +48 -38
- package/dist/packages/runtime/runtime-verify-runs.d.ts +84 -0
- package/dist/packages/runtime/runtime-verify-runs.js +295 -0
- package/dist/packages/runtime/runtime.d.ts +1165 -0
- package/dist/packages/runtime/runtime.js +417 -0
- package/dist/packages/runtime/schemas/actions.d.ts +1182 -0
- package/dist/packages/runtime/schemas/actions.js +117 -0
- package/dist/packages/runtime/schemas/agents.d.ts +76 -0
- package/dist/packages/runtime/schemas/agents.js +41 -0
- package/dist/packages/runtime/schemas/build-plans.d.ts +959 -0
- package/dist/packages/runtime/schemas/build-plans.js +107 -0
- package/dist/packages/runtime/schemas/files.d.ts +567 -0
- package/dist/packages/runtime/schemas/files.js +51 -0
- package/dist/packages/runtime/schemas/index.d.ts +8 -0
- package/dist/packages/runtime/schemas/index.js +12 -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 +103 -0
- package/dist/packages/runtime/schemas/projects.d.ts +339 -0
- package/dist/packages/runtime/schemas/projects.js +136 -0
- package/dist/packages/runtime/schemas/runs.d.ts +2676 -0
- package/dist/packages/runtime/schemas/runs.js +98 -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 +117 -0
- package/dist/packages/runtime/service/operations.d.ts +1490 -0
- package/dist/packages/runtime/service/operations.js +245 -0
- package/dist/packages/runtime/service/routes.d.ts +106 -0
- package/dist/packages/runtime/service/routes.js +120 -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 +27 -0
- package/dist/packages/runtime/service/server-helpers.js +89 -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 +43 -0
- package/dist/packages/runtime/service/server-routes-agents.d.ts +4 -0
- package/dist/packages/runtime/service/server-routes-agents.js +198 -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 +83 -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 +192 -0
- package/dist/packages/runtime/service/server-routes-project-jobs.d.ts +9 -0
- package/dist/packages/runtime/service/server-routes-project-jobs.js +130 -0
- package/dist/packages/runtime/service/server-routes-project-runs.d.ts +14 -0
- package/dist/packages/runtime/service/server-routes-project-runs.js +85 -0
- package/dist/packages/runtime/service/server-routes-projects.d.ts +4 -0
- package/dist/packages/runtime/service/server-routes-projects.js +92 -0
- package/dist/packages/runtime/service/server-routes-runs.d.ts +3 -0
- package/dist/packages/runtime/service/server-routes-runs.js +112 -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 +26 -18
- package/dist/packages/{engine → runtime}/verify/verify-execution.js +11 -11
- package/dist/packages/{engine → runtime}/verify/verify-paths.d.ts +4 -4
- package/dist/packages/runtime/verify/verify-paths.js +61 -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/{engine → runtime}/verify/verify-specs.js +5 -3
- 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 +39 -31
- package/public-repo/CONTRIBUTING.md +7 -16
- package/public-repo/README.md +175 -234
- package/public-repo/SECURITY.md +3 -4
- package/public-repo/build-plans/interf-default/README.md +19 -14
- package/public-repo/build-plans/interf-default/build/stages/shape/SKILL.md +18 -11
- package/public-repo/build-plans/interf-default/build/stages/structure/SKILL.md +12 -5
- package/public-repo/build-plans/interf-default/build/stages/summarize/SKILL.md +16 -4
- package/public-repo/build-plans/interf-default/build-plan.json +34 -28
- package/public-repo/build-plans/interf-default/build-plan.schema.json +54 -32
- package/public-repo/build-plans/interf-default/improve/SKILL.md +3 -3
- package/public-repo/build-plans/interf-default/use/query/SKILL.md +17 -11
- package/public-repo/openapi/local-service.openapi.json +6803 -0
- package/public-repo/skills/interf/SKILL.md +460 -179
- 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/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-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/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-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.js +0 -16
- package/dist/packages/engine/build/state-view.d.ts +0 -5
- 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/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-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-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/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-profile.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/execution.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/executors.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/executors.js +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/logs.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/logs.js +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/preflight.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/render.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/status.d.ts +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/status.js +0 -0
- /package/dist/packages/{engine → runtime}/agents/lib/types.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-paths.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-execution.d.ts +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
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime read-side caches.
|
|
3
|
+
*
|
|
4
|
+
* The local service runtime fronts a filesystem-backed model: every
|
|
5
|
+
* "list" or "get" call walks `.interf/runtime/...`, parses each JSON
|
|
6
|
+
* record through Zod, and returns the typed shape. Polling clients
|
|
7
|
+
* (Interf Desktop renderer, CLI status loops) hit those endpoints multiple times
|
|
8
|
+
* per second; on instances with hundreds of Build / benchmark runs this
|
|
9
|
+
* shows up as the dominant CPU cost.
|
|
10
|
+
*
|
|
11
|
+
* The caches here memoize the parsed-and-validated results. Each cache
|
|
12
|
+
* is keyed by Project data directory so independent Projects do
|
|
13
|
+
* not cross-pollinate, and each cache exposes both a read path (`get(...)`) and an explicit
|
|
14
|
+
* invalidation hook (`invalidate(...)`). The runtime calls
|
|
15
|
+
* `invalidate*` whenever it writes, so the next read repopulates from
|
|
16
|
+
* disk. Invalidation is intentionally broad (per-Project, not
|
|
17
|
+
* per-record) — staleness is the only correctness bug worth avoiding,
|
|
18
|
+
* and per-record invalidation introduces fan-out without measurably
|
|
19
|
+
* lowering recompute cost.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Per-(Project data directory, project) cache for Build records, plus a
|
|
23
|
+
* runId -> project index so `getBuildRun(runId)` can resolve to
|
|
24
|
+
* the owning Project without scanning every Project's runs.
|
|
25
|
+
*/
|
|
26
|
+
export declare class RunListingCache<TRecord> {
|
|
27
|
+
/** projectDataDir -> project id -> records (newest-first sorted). */
|
|
28
|
+
private byProjectRoot;
|
|
29
|
+
/** projectDataDir -> runId -> project. */
|
|
30
|
+
private runIndex;
|
|
31
|
+
get(projectDataDir: string, project: string, fill: () => TRecord[], runIdOf: (record: TRecord) => string): TRecord[];
|
|
32
|
+
/** Look up which project owns this runId, if known. */
|
|
33
|
+
projectFor(projectDataDir: string, runId: string): string | null;
|
|
34
|
+
/** Invalidate a single project's cached records and id index. */
|
|
35
|
+
invalidateProject(projectDataDir: string, project: string): void;
|
|
36
|
+
/** Drop everything for a Project data directory (e.g. after a reset). */
|
|
37
|
+
invalidateProjectRoot(projectDataDir: string): void;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Per-(Project data directory, project) readiness cache. Readiness joins build
|
|
41
|
+
* runs, benchmark runs, and the Project config; it
|
|
42
|
+
* is computed on every poll. The cache invalidates when the runtime
|
|
43
|
+
* writes any of those underlying objects for a given project.
|
|
44
|
+
*/
|
|
45
|
+
export declare class ReadinessCache<TReadiness> {
|
|
46
|
+
private byProjectRoot;
|
|
47
|
+
get(projectDataDir: string, project: string, compute: () => TReadiness): TReadiness;
|
|
48
|
+
invalidateProject(projectDataDir: string, project: string): void;
|
|
49
|
+
invalidateProjectRoot(projectDataDir: string): void;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Source-folder listing cache keyed by `(cacheKey, folderRootMtime)`.
|
|
53
|
+
* `cacheKey` is the slot identifier; `folderPath` is the directory the
|
|
54
|
+
* cache stats for an mtime probe. UI polling is the hot path; CLI
|
|
55
|
+
* commands rarely hit the same path twice in <2s, hence the short TTL
|
|
56
|
+
* fallback.
|
|
57
|
+
*/
|
|
58
|
+
export declare class MtimeListingCache<TList> {
|
|
59
|
+
private static readonly TTL_MS;
|
|
60
|
+
private cache;
|
|
61
|
+
get(cacheKey: string, folderPath: string, fill: () => TList): TList;
|
|
62
|
+
invalidate(cacheKey: string): void;
|
|
63
|
+
invalidateAll(): void;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Build Plan listing cache keyed by the joined mtimes of the
|
|
67
|
+
* bundled / user-library / Project-local Build Plan package roots. If
|
|
68
|
+
* any of those ticks (a new local Build Plan package, an edit to the user library, etc.) the cache
|
|
69
|
+
* misses and we re-resolve.
|
|
70
|
+
*/
|
|
71
|
+
export declare class BuildPlanListingCache<TList> {
|
|
72
|
+
private cache;
|
|
73
|
+
get(cacheKey: string, rootPaths: string[], fill: () => TList): TList;
|
|
74
|
+
invalidate(cacheKey: string): void;
|
|
75
|
+
invalidateAll(): void;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Per-Project source-state cache.
|
|
79
|
+
*
|
|
80
|
+
* Computing the file index hash requires reading every source file's first
|
|
81
|
+
* 64KB; on Projects with thousands of files this is the dominant cost of a
|
|
82
|
+
* drift check. The cache keys by Project id and invalidates on Build
|
|
83
|
+
* completion (which produces a new Context Graph the drift verdict compares to).
|
|
84
|
+
*/
|
|
85
|
+
export declare class ProjectSourceStateCache<TState> {
|
|
86
|
+
private byProjectId;
|
|
87
|
+
get(projectId: string, compute: () => TState): TState;
|
|
88
|
+
set(projectId: string, value: TState): void;
|
|
89
|
+
invalidateProject(projectId: string): void;
|
|
90
|
+
invalidateAll(): void;
|
|
91
|
+
}
|
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
* The local service runtime fronts a filesystem-backed model: every
|
|
5
5
|
* "list" or "get" call walks `.interf/runtime/...`, parses each JSON
|
|
6
6
|
* record through Zod, and returns the typed shape. Polling clients
|
|
7
|
-
* (Interf
|
|
8
|
-
* per second; on instances with hundreds of
|
|
7
|
+
* (Interf Desktop renderer, CLI status loops) hit those endpoints multiple times
|
|
8
|
+
* per second; on instances with hundreds of Build / benchmark runs this
|
|
9
9
|
* shows up as the dominant CPU cost.
|
|
10
10
|
*
|
|
11
11
|
* The caches here memoize the parsed-and-validated results. Each cache
|
|
12
|
-
* is keyed by
|
|
12
|
+
* is keyed by Project data directory so independent Projects do
|
|
13
13
|
* not cross-pollinate, and each cache exposes both a read path (`get(...)`) and an explicit
|
|
14
14
|
* invalidation hook (`invalidate(...)`). The runtime calls
|
|
15
15
|
* `invalidate*` whenever it writes, so the next read repopulates from
|
|
16
|
-
* disk. Invalidation is intentionally broad (per-
|
|
16
|
+
* disk. Invalidation is intentionally broad (per-Project, not
|
|
17
17
|
* per-record) — staleness is the only correctness bug worth avoiding,
|
|
18
18
|
* and per-record invalidation introduces fan-out without measurably
|
|
19
19
|
* lowering recompute cost.
|
|
@@ -21,101 +21,101 @@
|
|
|
21
21
|
import { existsSync, statSync } from "node:fs";
|
|
22
22
|
import { resolve } from "node:path";
|
|
23
23
|
/**
|
|
24
|
-
* Per-(
|
|
25
|
-
* runId ->
|
|
26
|
-
* the owning
|
|
24
|
+
* Per-(Project data directory, project) cache for Build records, plus a
|
|
25
|
+
* runId -> project index so `getBuildRun(runId)` can resolve to
|
|
26
|
+
* the owning Project without scanning every Project's runs.
|
|
27
27
|
*/
|
|
28
28
|
export class RunListingCache {
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
-
/**
|
|
29
|
+
/** projectDataDir -> project id -> records (newest-first sorted). */
|
|
30
|
+
byProjectRoot = new Map();
|
|
31
|
+
/** projectDataDir -> runId -> project. */
|
|
32
32
|
runIndex = new Map();
|
|
33
|
-
get(
|
|
34
|
-
const wsKey = resolve(
|
|
35
|
-
let bucket = this.
|
|
33
|
+
get(projectDataDir, project, fill, runIdOf) {
|
|
34
|
+
const wsKey = resolve(projectDataDir);
|
|
35
|
+
let bucket = this.byProjectRoot.get(wsKey);
|
|
36
36
|
if (!bucket) {
|
|
37
37
|
bucket = new Map();
|
|
38
|
-
this.
|
|
38
|
+
this.byProjectRoot.set(wsKey, bucket);
|
|
39
39
|
}
|
|
40
|
-
const cached = bucket.get(
|
|
40
|
+
const cached = bucket.get(project);
|
|
41
41
|
if (cached)
|
|
42
42
|
return cached;
|
|
43
43
|
const fresh = fill();
|
|
44
|
-
bucket.set(
|
|
44
|
+
bucket.set(project, fresh);
|
|
45
45
|
let index = this.runIndex.get(wsKey);
|
|
46
46
|
if (!index) {
|
|
47
47
|
index = new Map();
|
|
48
48
|
this.runIndex.set(wsKey, index);
|
|
49
49
|
}
|
|
50
50
|
for (const record of fresh) {
|
|
51
|
-
index.set(runIdOf(record),
|
|
51
|
+
index.set(runIdOf(record), project);
|
|
52
52
|
}
|
|
53
53
|
return fresh;
|
|
54
54
|
}
|
|
55
|
-
/** Look up which
|
|
56
|
-
|
|
57
|
-
const wsKey = resolve(
|
|
55
|
+
/** Look up which project owns this runId, if known. */
|
|
56
|
+
projectFor(projectDataDir, runId) {
|
|
57
|
+
const wsKey = resolve(projectDataDir);
|
|
58
58
|
return this.runIndex.get(wsKey)?.get(runId) ?? null;
|
|
59
59
|
}
|
|
60
|
-
/** Invalidate a single
|
|
61
|
-
|
|
62
|
-
const wsKey = resolve(
|
|
63
|
-
const bucket = this.
|
|
60
|
+
/** Invalidate a single project's cached records and id index. */
|
|
61
|
+
invalidateProject(projectDataDir, project) {
|
|
62
|
+
const wsKey = resolve(projectDataDir);
|
|
63
|
+
const bucket = this.byProjectRoot.get(wsKey);
|
|
64
64
|
if (bucket) {
|
|
65
|
-
bucket.delete(
|
|
65
|
+
bucket.delete(project);
|
|
66
66
|
if (bucket.size === 0)
|
|
67
|
-
this.
|
|
67
|
+
this.byProjectRoot.delete(wsKey);
|
|
68
68
|
}
|
|
69
69
|
const index = this.runIndex.get(wsKey);
|
|
70
70
|
if (index) {
|
|
71
71
|
for (const [runId, owner] of index) {
|
|
72
|
-
if (owner ===
|
|
72
|
+
if (owner === project)
|
|
73
73
|
index.delete(runId);
|
|
74
74
|
}
|
|
75
75
|
if (index.size === 0)
|
|
76
76
|
this.runIndex.delete(wsKey);
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
/** Drop everything for a
|
|
80
|
-
|
|
81
|
-
const wsKey = resolve(
|
|
82
|
-
this.
|
|
79
|
+
/** Drop everything for a Project data directory (e.g. after a reset). */
|
|
80
|
+
invalidateProjectRoot(projectDataDir) {
|
|
81
|
+
const wsKey = resolve(projectDataDir);
|
|
82
|
+
this.byProjectRoot.delete(wsKey);
|
|
83
83
|
this.runIndex.delete(wsKey);
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
|
-
* Per-(
|
|
88
|
-
* runs,
|
|
87
|
+
* Per-(Project data directory, project) readiness cache. Readiness joins build
|
|
88
|
+
* runs, benchmark runs, and the Project config; it
|
|
89
89
|
* is computed on every poll. The cache invalidates when the runtime
|
|
90
|
-
* writes any of those underlying objects for a given
|
|
90
|
+
* writes any of those underlying objects for a given project.
|
|
91
91
|
*/
|
|
92
92
|
export class ReadinessCache {
|
|
93
|
-
|
|
94
|
-
get(
|
|
95
|
-
const wsKey = resolve(
|
|
96
|
-
let bucket = this.
|
|
93
|
+
byProjectRoot = new Map();
|
|
94
|
+
get(projectDataDir, project, compute) {
|
|
95
|
+
const wsKey = resolve(projectDataDir);
|
|
96
|
+
let bucket = this.byProjectRoot.get(wsKey);
|
|
97
97
|
if (!bucket) {
|
|
98
98
|
bucket = new Map();
|
|
99
|
-
this.
|
|
99
|
+
this.byProjectRoot.set(wsKey, bucket);
|
|
100
100
|
}
|
|
101
|
-
const cached = bucket.get(
|
|
101
|
+
const cached = bucket.get(project);
|
|
102
102
|
if (cached !== undefined)
|
|
103
103
|
return cached;
|
|
104
104
|
const fresh = compute();
|
|
105
|
-
bucket.set(
|
|
105
|
+
bucket.set(project, fresh);
|
|
106
106
|
return fresh;
|
|
107
107
|
}
|
|
108
|
-
|
|
109
|
-
const wsKey = resolve(
|
|
110
|
-
const bucket = this.
|
|
108
|
+
invalidateProject(projectDataDir, project) {
|
|
109
|
+
const wsKey = resolve(projectDataDir);
|
|
110
|
+
const bucket = this.byProjectRoot.get(wsKey);
|
|
111
111
|
if (bucket) {
|
|
112
|
-
bucket.delete(
|
|
112
|
+
bucket.delete(project);
|
|
113
113
|
if (bucket.size === 0)
|
|
114
|
-
this.
|
|
114
|
+
this.byProjectRoot.delete(wsKey);
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
-
|
|
118
|
-
this.
|
|
117
|
+
invalidateProjectRoot(projectDataDir) {
|
|
118
|
+
this.byProjectRoot.delete(resolve(projectDataDir));
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
/**
|
|
@@ -155,7 +155,7 @@ export class MtimeListingCache {
|
|
|
155
155
|
}
|
|
156
156
|
/**
|
|
157
157
|
* Build Plan listing cache keyed by the joined mtimes of the
|
|
158
|
-
* bundled / user-library /
|
|
158
|
+
* bundled / user-library / Project-local Build Plan package roots. If
|
|
159
159
|
* any of those ticks (a new local Build Plan package, an edit to the user library, etc.) the cache
|
|
160
160
|
* misses and we re-resolve.
|
|
161
161
|
*/
|
|
@@ -189,3 +189,31 @@ function safeStat(path) {
|
|
|
189
189
|
return null;
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Per-Project source-state cache.
|
|
194
|
+
*
|
|
195
|
+
* Computing the file index hash requires reading every source file's first
|
|
196
|
+
* 64KB; on Projects with thousands of files this is the dominant cost of a
|
|
197
|
+
* drift check. The cache keys by Project id and invalidates on Build
|
|
198
|
+
* completion (which produces a new Context Graph the drift verdict compares to).
|
|
199
|
+
*/
|
|
200
|
+
export class ProjectSourceStateCache {
|
|
201
|
+
byProjectId = new Map();
|
|
202
|
+
get(projectId, compute) {
|
|
203
|
+
const cached = this.byProjectId.get(projectId);
|
|
204
|
+
if (cached !== undefined)
|
|
205
|
+
return cached;
|
|
206
|
+
const fresh = compute();
|
|
207
|
+
this.byProjectId.set(projectId, fresh);
|
|
208
|
+
return fresh;
|
|
209
|
+
}
|
|
210
|
+
set(projectId, value) {
|
|
211
|
+
this.byProjectId.set(projectId, value);
|
|
212
|
+
}
|
|
213
|
+
invalidateProject(projectId) {
|
|
214
|
+
this.byProjectId.delete(projectId);
|
|
215
|
+
}
|
|
216
|
+
invalidateAll() {
|
|
217
|
+
this.byProjectId.clear();
|
|
218
|
+
}
|
|
219
|
+
}
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
* compose these without learning the resource shape.
|
|
8
8
|
*/
|
|
9
9
|
import { type BuildRun, type InterfRunEvent } from "./execution/lib/schema.js";
|
|
10
|
-
import { type LocalJobEvent, type LocalJobRunResource } from "./
|
|
10
|
+
import { type LocalJobEvent, type LocalJobRunResource } from "./schemas/index.js";
|
|
11
|
+
export declare const INTERRUPTED_BUILD_RUN_REASON = "Build interrupted because the local service stopped before the run reached a terminal state.";
|
|
12
|
+
export declare function reconcileBuildRunTerminalStatus(run: BuildRun): BuildRun;
|
|
11
13
|
export declare function applyEventToBuildRun(run: BuildRun, event: InterfRunEvent): BuildRun;
|
|
12
14
|
export declare function applyEventToLocalJob(run: LocalJobRunResource, event: LocalJobEvent): LocalJobRunResource;
|
|
@@ -1,4 +1,47 @@
|
|
|
1
1
|
import { uniqueArtifacts } from "./run-observability.js";
|
|
2
|
+
export const INTERRUPTED_BUILD_RUN_REASON = "Build interrupted because the local service stopped before the run reached a terminal state.";
|
|
3
|
+
function isRecoverableCancellation(event) {
|
|
4
|
+
return event.type === "run.cancelled" && event.reason === INTERRUPTED_BUILD_RUN_REASON;
|
|
5
|
+
}
|
|
6
|
+
export function reconcileBuildRunTerminalStatus(run) {
|
|
7
|
+
let status = run.status;
|
|
8
|
+
let finishedAt = run.finished_at;
|
|
9
|
+
let stickyCancellationAt = null;
|
|
10
|
+
for (const event of run.events) {
|
|
11
|
+
if (event.type === "run.cancelled") {
|
|
12
|
+
status = "cancelled";
|
|
13
|
+
finishedAt = event.timestamp;
|
|
14
|
+
stickyCancellationAt = isRecoverableCancellation(event) ? null : event.timestamp;
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
if (event.type === "run.completed") {
|
|
18
|
+
if (stickyCancellationAt) {
|
|
19
|
+
status = "cancelled";
|
|
20
|
+
finishedAt = stickyCancellationAt;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
status = "succeeded";
|
|
24
|
+
finishedAt = event.timestamp;
|
|
25
|
+
}
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
if (event.type === "run.failed") {
|
|
29
|
+
if (stickyCancellationAt) {
|
|
30
|
+
status = "cancelled";
|
|
31
|
+
finishedAt = stickyCancellationAt;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
status = "failed";
|
|
35
|
+
finishedAt = event.timestamp;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
...run,
|
|
41
|
+
status,
|
|
42
|
+
...(finishedAt ? { finished_at: finishedAt } : {}),
|
|
43
|
+
};
|
|
44
|
+
}
|
|
2
45
|
export function applyEventToBuildRun(run, event) {
|
|
3
46
|
const now = event.timestamp;
|
|
4
47
|
const stageFor = (stageId) => {
|
|
@@ -32,6 +75,7 @@ export function applyEventToBuildRun(run, event) {
|
|
|
32
75
|
started_at: now,
|
|
33
76
|
stage_index: event.stage_index,
|
|
34
77
|
stage_total: event.stage_total,
|
|
78
|
+
...(event.logs ? { logs: event.logs } : {}),
|
|
35
79
|
});
|
|
36
80
|
break;
|
|
37
81
|
case "artifact.written": {
|
|
@@ -41,15 +85,15 @@ export function applyEventToBuildRun(run, event) {
|
|
|
41
85
|
});
|
|
42
86
|
break;
|
|
43
87
|
}
|
|
44
|
-
case "
|
|
88
|
+
case "evidence.updated":
|
|
45
89
|
if (event.stage_id) {
|
|
46
90
|
updateStage(event.stage_id, {
|
|
47
|
-
|
|
91
|
+
latest_evidence: event.evidence,
|
|
48
92
|
});
|
|
49
93
|
}
|
|
50
94
|
return {
|
|
51
95
|
...run,
|
|
52
|
-
|
|
96
|
+
latest_evidence: event.evidence,
|
|
53
97
|
events: [...run.events, event],
|
|
54
98
|
};
|
|
55
99
|
case "log.appended":
|
|
@@ -71,28 +115,20 @@ export function applyEventToBuildRun(run, event) {
|
|
|
71
115
|
});
|
|
72
116
|
break;
|
|
73
117
|
case "run.completed":
|
|
74
|
-
return {
|
|
118
|
+
return reconcileBuildRunTerminalStatus({
|
|
75
119
|
...run,
|
|
76
|
-
// Once cancelled, the cancelled status is sticky; the handler may
|
|
77
|
-
// still emit a completion event after the cancel signal has landed.
|
|
78
|
-
status: run.status === "cancelled" ? "cancelled" : "succeeded",
|
|
79
|
-
finished_at: run.finished_at ?? now,
|
|
80
120
|
events: [...run.events, event],
|
|
81
|
-
};
|
|
121
|
+
});
|
|
82
122
|
case "run.failed":
|
|
83
|
-
return {
|
|
123
|
+
return reconcileBuildRunTerminalStatus({
|
|
84
124
|
...run,
|
|
85
|
-
status: run.status === "cancelled" ? "cancelled" : "failed",
|
|
86
|
-
finished_at: run.finished_at ?? now,
|
|
87
125
|
events: [...run.events, event],
|
|
88
|
-
};
|
|
126
|
+
});
|
|
89
127
|
case "run.cancelled":
|
|
90
|
-
return {
|
|
128
|
+
return reconcileBuildRunTerminalStatus({
|
|
91
129
|
...run,
|
|
92
|
-
status: "cancelled",
|
|
93
|
-
finished_at: run.finished_at ?? now,
|
|
94
130
|
events: [...run.events, event],
|
|
95
|
-
};
|
|
131
|
+
});
|
|
96
132
|
case "readiness.updated":
|
|
97
133
|
return {
|
|
98
134
|
...run,
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type LocalExecutorStatus } from "./schemas/index.js";
|
|
2
|
+
import type { AgentPrefs, AgentRecord, RoleMap } from "../contracts/lib/schema.js";
|
|
3
|
+
export interface AgentsRegistryState {
|
|
4
|
+
agents: AgentRecord[];
|
|
5
|
+
role_map: RoleMap;
|
|
6
|
+
active_agent: AgentRecord | null;
|
|
7
|
+
}
|
|
8
|
+
export interface AgentsRegistryRoleState {
|
|
9
|
+
role_map: RoleMap;
|
|
10
|
+
active_agent: AgentRecord | null;
|
|
11
|
+
}
|
|
12
|
+
export declare function getExecutorStatus(): LocalExecutorStatus;
|
|
13
|
+
export declare function selectExecutor(requestValue: unknown): LocalExecutorStatus;
|
|
14
|
+
export declare function getAgentsRegistry(): AgentsRegistryState;
|
|
15
|
+
export declare function registerCustomAgent(input: {
|
|
16
|
+
name: string;
|
|
17
|
+
display_name: string;
|
|
18
|
+
command: string;
|
|
19
|
+
}): AgentsRegistryState;
|
|
20
|
+
export declare function unregisterCustomAgent(name: string): AgentsRegistryState;
|
|
21
|
+
export declare function patchAgentsRoleMap(patch: Record<string, string>): AgentsRegistryRoleState;
|
|
22
|
+
export declare function setAgentPrefs(name: string, prefs: AgentPrefs): AgentsRegistryState;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { detectAgents, resolveAgent, supportsAutomatedRuns, } from "./agents/lib/detection.js";
|
|
2
|
+
import { loadUserConfig, saveUserConfig, } from "./agents/lib/user-config.js";
|
|
3
|
+
import { AGENTS } from "./agents/lib/constants.js";
|
|
4
|
+
import { loadAgentsRegistry, patchRoleMap, registerCustomAgent as registerCustomAgentRecord, setActiveAgent, setAgentPrefs as setAgentPrefsRecord, unregisterCustomAgent as unregisterCustomAgentRecord, } from "./agents/registry.js";
|
|
5
|
+
import { LocalExecutorSelectRequestSchema, LocalExecutorStatusSchema, } from "./schemas/index.js";
|
|
6
|
+
function configuredAgentName() {
|
|
7
|
+
const config = loadUserConfig();
|
|
8
|
+
if (!config)
|
|
9
|
+
return null;
|
|
10
|
+
const configured = AGENTS.find((agent) => agent.command === config.agentCommand) ??
|
|
11
|
+
AGENTS.find((agent) => agent.name === config.agent) ??
|
|
12
|
+
AGENTS.find((agent) => agent.displayName === config.agent);
|
|
13
|
+
return configured?.name ?? null;
|
|
14
|
+
}
|
|
15
|
+
function detectedExecutorOptions(currentAgentName) {
|
|
16
|
+
return detectAgents()
|
|
17
|
+
.filter(supportsAutomatedRuns)
|
|
18
|
+
.map((agent) => ({
|
|
19
|
+
name: agent.name,
|
|
20
|
+
display_name: agent.displayName,
|
|
21
|
+
command: agent.command,
|
|
22
|
+
current: agent.name === currentAgentName,
|
|
23
|
+
}));
|
|
24
|
+
}
|
|
25
|
+
export function getExecutorStatus() {
|
|
26
|
+
const checkedAt = new Date().toISOString();
|
|
27
|
+
try {
|
|
28
|
+
const resolved = resolveAgent();
|
|
29
|
+
const currentName = resolved.agent?.name ?? configuredAgentName();
|
|
30
|
+
const availableExecutors = detectedExecutorOptions(currentName);
|
|
31
|
+
if (!resolved.agent) {
|
|
32
|
+
return LocalExecutorStatusSchema.parse({
|
|
33
|
+
kind: "interf-local-executor-status",
|
|
34
|
+
version: 1,
|
|
35
|
+
status: "unavailable",
|
|
36
|
+
checked_at: checkedAt,
|
|
37
|
+
executor: null,
|
|
38
|
+
available_executors: availableExecutors,
|
|
39
|
+
message: resolved.error ?? "No supported local coding agent is configured.",
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return LocalExecutorStatusSchema.parse({
|
|
43
|
+
kind: "interf-local-executor-status",
|
|
44
|
+
version: 1,
|
|
45
|
+
status: "connected",
|
|
46
|
+
checked_at: checkedAt,
|
|
47
|
+
executor: {
|
|
48
|
+
name: resolved.agent.name,
|
|
49
|
+
display_name: resolved.agent.displayName,
|
|
50
|
+
command: resolved.agent.command,
|
|
51
|
+
},
|
|
52
|
+
available_executors: availableExecutors.length > 0
|
|
53
|
+
? availableExecutors
|
|
54
|
+
: [{
|
|
55
|
+
name: resolved.agent.name,
|
|
56
|
+
display_name: resolved.agent.displayName,
|
|
57
|
+
command: resolved.agent.command,
|
|
58
|
+
current: true,
|
|
59
|
+
}],
|
|
60
|
+
message: `${resolved.agent.displayName} is configured for local Interf actions.`,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
const currentName = configuredAgentName();
|
|
65
|
+
return LocalExecutorStatusSchema.parse({
|
|
66
|
+
kind: "interf-local-executor-status",
|
|
67
|
+
version: 1,
|
|
68
|
+
status: "unavailable",
|
|
69
|
+
checked_at: checkedAt,
|
|
70
|
+
executor: null,
|
|
71
|
+
available_executors: detectedExecutorOptions(currentName),
|
|
72
|
+
message: error instanceof Error ? error.message : String(error),
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export function selectExecutor(requestValue) {
|
|
77
|
+
const request = LocalExecutorSelectRequestSchema.parse(requestValue);
|
|
78
|
+
const selected = detectAgents()
|
|
79
|
+
.filter(supportsAutomatedRuns)
|
|
80
|
+
.find((agent) => agent.name === request.agent);
|
|
81
|
+
if (!selected) {
|
|
82
|
+
throw new Error(`Local agent "${request.agent}" is not detected or cannot run Interf runs.`);
|
|
83
|
+
}
|
|
84
|
+
const current = loadUserConfig();
|
|
85
|
+
saveUserConfig({
|
|
86
|
+
agent: selected.name,
|
|
87
|
+
agentCommand: selected.command,
|
|
88
|
+
skillsInstalled: current?.skillsInstalled ?? false,
|
|
89
|
+
initialized: current?.initialized ?? new Date().toISOString(),
|
|
90
|
+
});
|
|
91
|
+
// Mirror the selection into the role-map. `setActiveAgent` also sweeps
|
|
92
|
+
// any role still pointing at the previous active so single-active-agent
|
|
93
|
+
// setups stay coherent across CLIs.
|
|
94
|
+
try {
|
|
95
|
+
setActiveAgent(selected.name);
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
// Best effort — the registry update is convenience for the new
|
|
99
|
+
// role-aware path. The user_config.json write above is the source of
|
|
100
|
+
// truth for the previous `getExecutorStatus()`.
|
|
101
|
+
}
|
|
102
|
+
return getExecutorStatus();
|
|
103
|
+
}
|
|
104
|
+
export function getAgentsRegistry() {
|
|
105
|
+
const registry = loadAgentsRegistry();
|
|
106
|
+
return {
|
|
107
|
+
agents: registry.agents,
|
|
108
|
+
role_map: registry.roleMap,
|
|
109
|
+
active_agent: registry.activeAgent,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
export function registerCustomAgent(input) {
|
|
113
|
+
registerCustomAgentRecord(input);
|
|
114
|
+
return getAgentsRegistry();
|
|
115
|
+
}
|
|
116
|
+
export function unregisterCustomAgent(name) {
|
|
117
|
+
unregisterCustomAgentRecord(name);
|
|
118
|
+
return getAgentsRegistry();
|
|
119
|
+
}
|
|
120
|
+
export function patchAgentsRoleMap(patch) {
|
|
121
|
+
patchRoleMap(patch);
|
|
122
|
+
const registry = loadAgentsRegistry();
|
|
123
|
+
return {
|
|
124
|
+
role_map: registry.roleMap,
|
|
125
|
+
active_agent: registry.activeAgent,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
export function setAgentPrefs(name, prefs) {
|
|
129
|
+
setAgentPrefsRecord(name, prefs);
|
|
130
|
+
return getAgentsRegistry();
|
|
131
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type LocalJobEvent, type LocalJobRunResource } from "./schemas/index.js";
|
|
2
|
+
import type { LocalServiceJobRunContext, LocalServiceRuntime } from "./runtime.js";
|
|
3
|
+
export declare function listJobs(projectDataDir: string): LocalJobRunResource[];
|
|
4
|
+
export declare function getJob(projectDataDir: string, runId: string): LocalJobRunResource | null;
|
|
5
|
+
export declare function getJobEvents(projectDataDir: string, runId: string): LocalJobEvent[] | null;
|
|
6
|
+
export declare function createJobRun(runtime: LocalServiceRuntime, projectDataDir: string, requestValue: unknown): LocalJobRunResource;
|
|
7
|
+
export declare function appendJobRunEvent(runtime: LocalServiceRuntime, projectDataDir: string, runId: string, requestValue: unknown): LocalJobRunResource | null;
|
|
8
|
+
export declare function createBenchmarkQuestionDraftRun(runtime: LocalServiceRuntime, projectDataDir: string, requestValue: unknown): Promise<LocalJobRunResource>;
|
|
9
|
+
export declare function createBuildPlanAuthoringRun(runtime: LocalServiceRuntime, projectDataDir: string, requestValue: unknown, jobType?: "build-plan-draft" | "build-plan-improvement"): Promise<LocalJobRunResource>;
|
|
10
|
+
export declare function jobRunContext(runtime: LocalServiceRuntime, projectDataDir: string, runId: string): LocalServiceJobRunContext;
|
|
11
|
+
export declare function writeJobRun(runtime: LocalServiceRuntime, projectDataDir: string, run: LocalJobRunResource): void;
|
|
12
|
+
export declare function setJobRunResult(runtime: LocalServiceRuntime, projectDataDir: string, runId: string, result: unknown): void;
|
|
13
|
+
export declare function finalizeInterruptedJobRuns(runtime: LocalServiceRuntime, projectDataDir: string): void;
|