@interf/compiler 0.18.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/commands/build-plan.d.ts +2 -0
- package/dist/cli/commands/build-plan.js +376 -0
- package/dist/cli/commands/{compile.d.ts → build.d.ts} +2 -2
- package/dist/cli/commands/{compile.js → build.js} +18 -18
- package/dist/cli/commands/doctor.js +2 -2
- package/dist/cli/commands/mcp.d.ts +0 -34
- package/dist/cli/commands/mcp.js +261 -60
- package/dist/cli/commands/prep.js +67 -35
- package/dist/cli/commands/reset.d.ts +1 -1
- package/dist/cli/commands/reset.js +6 -6
- package/dist/cli/commands/runs.js +105 -33
- package/dist/cli/commands/status.js +4 -2
- package/dist/cli/commands/test.d.ts +10 -0
- package/dist/cli/commands/{verify.js → test.js} +19 -21
- package/dist/cli/commands/web.js +82 -8
- package/dist/cli/commands/wizard.js +63 -64
- package/dist/cli/index.d.ts +4 -4
- package/dist/cli/index.js +7 -7
- package/dist/interf-ui/404.html +1 -0
- package/dist/interf-ui/__next.__PAGE__.txt +10 -0
- package/dist/{compiler-ui → interf-ui}/__next._full.txt +12 -12
- package/dist/interf-ui/__next._head.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/__next._index.txt +4 -4
- package/dist/{compiler-ui → interf-ui}/__next._tree.txt +3 -3
- package/dist/interf-ui/_next/static/chunks/0.tjb6f4golw..css +3 -0
- package/dist/interf-ui/_next/static/chunks/085-n_jv2ng_q.css +1 -0
- package/dist/{compiler-ui/_next/static/chunks/0_i-3_5l9t2qe.js → interf-ui/_next/static/chunks/0dn41fa_zvgsl.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/0g-ea0zj5d-0k.js +1 -0
- package/dist/interf-ui/_next/static/chunks/0gwqglc4iz583.js +1 -0
- package/dist/interf-ui/_next/static/chunks/0haldgm65ve6l.js +1 -0
- package/dist/{compiler-ui/_next/static/chunks/08g7lvje.te.u.js → interf-ui/_next/static/chunks/0nv3am99vjzn4.js} +1 -1
- package/dist/{compiler-ui/_next/static/chunks/0n51hrfoufc7g.js → interf-ui/_next/static/chunks/0s77gt_o4jwtx.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/0~a36ujuzpaz..js +116 -0
- package/dist/interf-ui/_next/static/chunks/10jeodxe4nkgj.js +31 -0
- package/dist/interf-ui/_next/static/chunks/119h2rouych2t.js +1 -0
- package/dist/interf-ui/_next/static/chunks/13c8b~m8knjsf.js +1 -0
- package/dist/{compiler-ui/_next/static/chunks/08m7vf5asqlsm.js → interf-ui/_next/static/chunks/14dznb2qpt-ho.js} +5 -5
- package/dist/interf-ui/_next/static/chunks/15z_en80lrq-3.js +5 -0
- package/dist/{compiler-ui/_next/static/chunks/turbopack-10e~t1yzi4svj.js → interf-ui/_next/static/chunks/turbopack-0p.pvcjrtq-jh.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/turbopack-0usj_75.8frlw.js +1 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._full.txt +9 -9
- package/dist/interf-ui/_not-found/__next._head.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._index.txt +4 -4
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/dist/interf-ui/_not-found/__next._not-found.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._tree.txt +2 -2
- package/dist/interf-ui/_not-found.html +1 -0
- package/dist/{compiler-ui → interf-ui}/_not-found.txt +9 -9
- package/dist/interf-ui/index.html +1 -0
- package/dist/{compiler-ui → interf-ui}/index.txt +12 -12
- package/dist/packages/build-plans/authoring/build-plan-authoring.d.ts +36 -0
- package/dist/packages/{methods/authoring/method-authoring.js → build-plans/authoring/build-plan-authoring.js} +57 -88
- package/dist/packages/build-plans/authoring/build-plan-edit-session.d.ts +18 -0
- package/dist/packages/{methods/authoring/method-edit-session.js → build-plans/authoring/build-plan-edit-session.js} +34 -34
- package/dist/packages/build-plans/authoring/build-plan-improvement.d.ts +23 -0
- package/dist/packages/build-plans/authoring/build-plan-improvement.js +216 -0
- package/dist/packages/build-plans/authoring/index.d.ts +4 -0
- package/dist/packages/build-plans/authoring/index.js +4 -0
- package/dist/packages/{methods/authoring/lib/method-edit-utils.d.ts → build-plans/authoring/lib/build-plan-edit-utils.d.ts} +3 -3
- package/dist/packages/build-plans/build-plan-resolution.d.ts +6 -0
- package/dist/packages/build-plans/build-plan-resolution.js +7 -0
- package/dist/packages/build-plans/index.d.ts +2 -0
- package/dist/packages/build-plans/index.js +2 -0
- package/dist/packages/build-plans/package/build-plan-definitions.d.ts +61 -0
- package/dist/packages/build-plans/package/build-plan-definitions.js +214 -0
- package/dist/packages/{methods/package/method-helpers.d.ts → build-plans/package/build-plan-helpers.d.ts} +7 -7
- package/dist/packages/{methods/package/method-helpers.js → build-plans/package/build-plan-helpers.js} +20 -20
- package/dist/packages/build-plans/package/build-plan-review-paths.d.ts +10 -0
- package/dist/packages/build-plans/package/build-plan-review-paths.js +31 -0
- package/dist/packages/{methods/package/method-stage-runner.d.ts → build-plans/package/build-plan-stage-runner.d.ts} +12 -12
- package/dist/packages/{methods/package/method-stage-runner.js → build-plans/package/build-plan-stage-runner.js} +10 -10
- package/dist/packages/build-plans/package/builtin-build-plan.d.ts +37 -0
- package/dist/packages/build-plans/package/builtin-build-plan.js +91 -0
- package/dist/packages/{methods → build-plans}/package/context-interface.d.ts +11 -11
- package/dist/packages/{methods → build-plans}/package/context-interface.js +23 -23
- package/dist/packages/build-plans/package/interf-build-plan-package.d.ts +31 -0
- package/dist/packages/build-plans/package/interf-build-plan-package.js +466 -0
- package/dist/packages/{methods → build-plans}/package/lib/package-root.js +1 -1
- package/dist/packages/build-plans/package/local-build-plans.d.ts +74 -0
- package/dist/packages/build-plans/package/local-build-plans.js +472 -0
- package/dist/packages/build-plans/package/user-build-plans.d.ts +17 -0
- package/dist/packages/build-plans/package/user-build-plans.js +77 -0
- package/dist/packages/contracts/index.d.ts +1 -1
- package/dist/packages/contracts/lib/preparation-paths.d.ts +37 -37
- package/dist/packages/contracts/lib/preparation-paths.js +43 -43
- package/dist/packages/contracts/lib/schema.d.ts +38 -41
- package/dist/packages/contracts/lib/schema.js +44 -35
- package/dist/packages/engine/action-definitions.d.ts +228 -67
- package/dist/packages/engine/action-definitions.js +277 -273
- package/dist/packages/engine/action-planner.d.ts +2 -2
- package/dist/packages/engine/action-planner.js +8 -15
- package/dist/packages/engine/action-values.d.ts +1 -1
- package/dist/packages/engine/action-values.js +1 -1
- package/dist/packages/engine/agents/index.d.ts +2 -2
- package/dist/packages/engine/agents/index.js +1 -1
- package/dist/packages/engine/agents/lib/args.d.ts +2 -2
- package/dist/packages/engine/agents/lib/args.js +1 -1
- package/dist/packages/engine/agents/lib/constants.js +1 -1
- package/dist/packages/engine/agents/lib/execution-profile.d.ts +5 -5
- package/dist/packages/engine/agents/lib/execution-profile.js +3 -3
- package/dist/packages/engine/agents/lib/executors.d.ts +11 -11
- package/dist/packages/engine/agents/lib/render.js +4 -4
- package/dist/packages/engine/agents/lib/shells.d.ts +33 -31
- package/dist/packages/engine/agents/lib/shells.js +254 -250
- package/dist/packages/engine/agents/lib/types.d.ts +2 -2
- package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.d.ts +3 -0
- package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.js +19 -0
- package/dist/packages/engine/agents/role-executors.d.ts +7 -7
- package/dist/packages/engine/agents/role-executors.js +2 -2
- package/dist/packages/engine/agents/role-router.d.ts +2 -2
- package/dist/packages/engine/agents/role-router.js +1 -1
- package/dist/packages/engine/build/artifact-counts.d.ts +1 -0
- package/dist/packages/engine/{compile → build}/artifact-counts.js +7 -7
- package/dist/packages/engine/{compile → build}/artifact-status.d.ts +8 -8
- package/dist/packages/engine/{compile → build}/artifact-status.js +19 -19
- package/dist/packages/engine/{compile → build}/billing-events.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/billing-events.js +4 -4
- package/dist/packages/engine/build/build-execution.d.ts +4 -0
- package/dist/packages/engine/build/build-execution.js +4 -0
- package/dist/packages/engine/build/build-pipeline.d.ts +56 -0
- package/dist/packages/engine/{compile/compiled-pipeline.js → build/build-pipeline.js} +55 -55
- package/dist/packages/engine/build/build-plan-primitives.d.ts +2 -0
- package/dist/packages/engine/{compile/method-primitives.js → build/build-plan-primitives.js} +1 -1
- package/dist/packages/engine/build/build-plan-runs.d.ts +14 -0
- package/dist/packages/engine/build/build-plan-runs.js +31 -0
- package/dist/packages/engine/build/build-stage-plan.d.ts +16 -0
- package/dist/packages/engine/build/build-stage-plan.js +100 -0
- package/dist/packages/engine/build/build-stage-runner.d.ts +15 -0
- package/dist/packages/engine/{compile/compiled-stage-runner.js → build/build-stage-runner.js} +21 -21
- package/dist/packages/engine/build/build-target.d.ts +11 -0
- package/dist/packages/engine/build/build-target.js +16 -0
- package/dist/packages/engine/{compile → build}/check-evaluator.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/check-evaluator.js +1 -1
- package/dist/packages/engine/{compile → build}/discovery.d.ts +2 -2
- package/dist/packages/engine/{compile → build}/discovery.js +4 -4
- package/dist/packages/engine/{compile → build}/index.d.ts +6 -6
- package/dist/packages/engine/{compile → build}/index.js +5 -5
- package/dist/packages/engine/{compile → build}/lib/schema.d.ts +79 -79
- package/dist/packages/engine/{compile → build}/lib/schema.js +71 -71
- package/dist/packages/engine/build/reset.d.ts +2 -0
- package/dist/packages/engine/build/reset.js +74 -0
- package/dist/packages/engine/{compile → build}/runtime-contracts.js +8 -8
- package/dist/packages/engine/build/runtime-inventory.d.ts +7 -0
- package/dist/packages/engine/{compile → build}/runtime-inventory.js +8 -8
- package/dist/packages/engine/{compile → build}/runtime-paths.js +6 -6
- package/dist/packages/engine/{compile → build}/runtime-prompt.js +11 -11
- package/dist/packages/engine/build/runtime-reconcile.d.ts +2 -0
- package/dist/packages/engine/{compile → build}/runtime-reconcile.js +18 -18
- package/dist/packages/engine/{compile → build}/runtime-runs.js +27 -27
- package/dist/packages/engine/{compile → build}/runtime-types.d.ts +10 -10
- package/dist/packages/engine/build/source-files.d.ts +46 -0
- package/dist/packages/engine/{compile → build}/source-files.js +32 -32
- package/dist/packages/engine/build/state-artifacts.d.ts +9 -0
- package/dist/packages/engine/build/state-artifacts.js +14 -0
- package/dist/packages/engine/build/state-health.d.ts +4 -0
- package/dist/packages/engine/{compile → build}/state-health.js +40 -40
- package/dist/packages/engine/build/state-io.d.ts +11 -0
- package/dist/packages/engine/{compile → build}/state-io.js +22 -22
- package/dist/packages/engine/build/state-paths.js +16 -0
- package/dist/packages/engine/build/state-view.d.ts +5 -0
- package/dist/packages/engine/{compile → build}/state-view.js +29 -29
- package/dist/packages/engine/build/state.d.ts +7 -0
- package/dist/packages/engine/build/state.js +12 -0
- package/dist/packages/engine/build/validate-verifiable-context.d.ts +27 -0
- package/dist/packages/engine/{compile/validate-compiled.js → build/validate-verifiable-context.js} +73 -73
- package/dist/packages/engine/{compile → build}/validate.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/validate.js +27 -27
- package/dist/packages/engine/build/verifiable-context-paths.d.ts +47 -0
- package/dist/packages/engine/build/verifiable-context-paths.js +121 -0
- package/dist/packages/engine/build/verifiable-context-schema.d.ts +21 -0
- package/dist/packages/engine/build/verifiable-context-schema.js +126 -0
- package/dist/packages/engine/client.d.ts +16 -16
- package/dist/packages/engine/client.js +21 -21
- package/dist/packages/engine/cloud-seams.d.ts +3 -3
- package/dist/packages/engine/connection-config.js +1 -1
- package/dist/packages/engine/execution/index.d.ts +2 -2
- package/dist/packages/engine/execution/index.js +1 -1
- package/dist/packages/engine/execution/lib/schema.d.ts +100 -95
- package/dist/packages/engine/execution/lib/schema.js +31 -31
- package/dist/packages/engine/index.d.ts +7 -7
- package/dist/packages/engine/index.js +3 -3
- package/dist/packages/engine/instance-paths.d.ts +45 -39
- package/dist/packages/engine/instance-paths.js +54 -48
- package/dist/packages/engine/lib/schema.d.ts +1568 -484
- package/dist/packages/engine/lib/schema.js +172 -161
- package/dist/packages/engine/native-run-handlers.d.ts +12 -12
- package/dist/packages/engine/native-run-handlers.js +138 -136
- package/dist/packages/engine/preparation-store.d.ts +31 -36
- package/dist/packages/engine/preparation-store.js +42 -31
- package/dist/packages/engine/readiness-check-draft.d.ts +2 -2
- package/dist/packages/engine/readiness-check-draft.js +1 -1
- package/dist/packages/engine/requested-artifacts.d.ts +5 -0
- package/dist/packages/engine/requested-artifacts.js +36 -0
- package/dist/packages/engine/routes.d.ts +18 -17
- package/dist/packages/engine/routes.js +20 -19
- package/dist/packages/engine/run-observability.d.ts +5 -3
- package/dist/packages/engine/run-observability.js +103 -90
- package/dist/packages/engine/runtime-caches.d.ts +16 -16
- package/dist/packages/engine/runtime-caches.js +26 -26
- package/dist/packages/engine/runtime-event-applier.d.ts +2 -2
- package/dist/packages/engine/runtime-event-applier.js +1 -1
- package/dist/packages/engine/runtime-persistence.d.ts +9 -9
- package/dist/packages/engine/runtime-persistence.js +16 -16
- package/dist/packages/engine/runtime-proposal-helpers.d.ts +15 -15
- package/dist/packages/engine/runtime-proposal-helpers.js +81 -85
- package/dist/packages/engine/runtime-resource-builders.d.ts +16 -11
- package/dist/packages/engine/runtime-resource-builders.js +32 -21
- package/dist/packages/engine/runtime.d.ts +53 -60
- package/dist/packages/engine/runtime.js +555 -453
- package/dist/packages/engine/server.d.ts +2 -2
- package/dist/packages/engine/server.js +226 -143
- package/dist/packages/engine/service-registry.d.ts +5 -17
- package/dist/packages/engine/service-registry.js +5 -20
- package/dist/packages/engine/verify/lib/schema.d.ts +19 -19
- package/dist/packages/engine/verify/lib/schema.js +36 -8
- package/dist/packages/engine/verify/readiness-check-run.d.ts +15 -16
- package/dist/packages/engine/verify/readiness-check-run.js +46 -46
- package/dist/packages/engine/verify/verify-execution.d.ts +3 -3
- package/dist/packages/engine/verify/verify-execution.js +10 -10
- package/dist/packages/engine/verify/verify-paths.d.ts +4 -4
- package/dist/packages/engine/verify/verify-paths.js +17 -17
- package/dist/packages/engine/verify/verify-sandbox.d.ts +1 -1
- package/dist/packages/engine/verify/verify-sandbox.js +26 -26
- package/dist/packages/engine/verify/verify-targets.d.ts +2 -2
- package/dist/packages/engine/verify/verify-targets.js +17 -17
- package/dist/packages/engine/verify/verify-types.d.ts +2 -2
- package/dist/packages/engine/verify/verify.d.ts +1 -1
- package/dist/packages/engine/verify/verify.js +1 -1
- package/dist/packages/engine/wire-schemas.d.ts +42 -40
- package/dist/packages/engine/wire-schemas.js +13 -13
- package/dist/packages/project/index.d.ts +1 -1
- package/dist/packages/project/interf-bootstrap.d.ts +1 -1
- package/dist/packages/project/interf-bootstrap.js +1 -1
- package/dist/packages/project/interf-detect.d.ts +11 -11
- package/dist/packages/project/interf-detect.js +36 -36
- package/dist/packages/project/interf-scaffold.d.ts +3 -3
- package/dist/packages/project/interf-scaffold.js +72 -72
- package/dist/packages/project/interf.d.ts +4 -4
- package/dist/packages/project/interf.js +3 -3
- package/dist/packages/project/lib/schema.d.ts +205 -12
- package/dist/packages/project/lib/schema.js +59 -14
- package/dist/packages/project/preparation-entries.d.ts +3 -3
- package/dist/packages/project/preparation-entries.js +19 -19
- package/dist/packages/project/source-config.d.ts +10 -10
- package/dist/packages/project/source-config.js +62 -58
- package/dist/packages/project/source-folders.js +1 -1
- package/package.json +14 -17
- package/public-repo/CONTRIBUTING.md +47 -0
- package/public-repo/README.md +327 -0
- package/public-repo/SECURITY.md +67 -0
- package/public-repo/build-plans/interf-default/README.md +33 -0
- package/public-repo/build-plans/interf-default/build/stages/shape/SKILL.md +27 -0
- package/{builtin-methods/interf-default/compile → public-repo/build-plans/interf-default/build}/stages/structure/SKILL.md +2 -2
- package/{builtin-methods/interf-default/compile → public-repo/build-plans/interf-default/build}/stages/summarize/SKILL.md +1 -1
- package/{builtin-methods/interf-default/method.json → public-repo/build-plans/interf-default/build-plan.json} +16 -16
- package/{builtin-methods/interf-default/method.schema.json → public-repo/build-plans/interf-default/build-plan.schema.json} +4 -4
- package/public-repo/build-plans/interf-default/improve/SKILL.md +18 -0
- package/public-repo/build-plans/interf-default/use/query/SKILL.md +23 -0
- package/public-repo/plugins/README.md +9 -0
- package/public-repo/plugins/interf/.claude-plugin/plugin.json +21 -0
- package/public-repo/plugins/interf/.mcp.json +12 -0
- package/public-repo/plugins/interf/README.md +32 -0
- package/public-repo/plugins/interf/skills/interf/SKILL.md +376 -0
- package/public-repo/skills/interf/SKILL.md +376 -0
- package/README.md +0 -311
- package/agent-skills/interf-actions/SKILL.md +0 -185
- package/agent-skills/interf-actions/references/cli.md +0 -243
- package/builtin-methods/interf-default/README.md +0 -29
- package/builtin-methods/interf-default/compile/stages/shape/SKILL.md +0 -31
- package/builtin-methods/interf-default/improve/SKILL.md +0 -18
- package/builtin-methods/interf-default/use/query/SKILL.md +0 -28
- package/dist/cli/commands/method.d.ts +0 -2
- package/dist/cli/commands/method.js +0 -113
- package/dist/cli/commands/verify.d.ts +0 -10
- package/dist/compiler-ui/404.html +0 -1
- package/dist/compiler-ui/__next.__PAGE__.txt +0 -10
- package/dist/compiler-ui/__next._head.txt +0 -5
- package/dist/compiler-ui/_next/static/chunks/06yhdspx~ca5-.js +0 -5
- package/dist/compiler-ui/_next/static/chunks/06z~l3kwb891e.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0_c_tvh-cukjz.css +0 -3
- package/dist/compiler-ui/_next/static/chunks/0b-ywny_j0g~0.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0b52v41o1gixx.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0f_geuwdesg_c.js +0 -114
- package/dist/compiler-ui/_next/static/chunks/0gpzgsv0w.q~m.js +0 -31
- package/dist/compiler-ui/_next/static/chunks/0ilwfezfvu6~-.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0xxmf45eskdt~.css +0 -1
- package/dist/compiler-ui/_next/static/chunks/14wtz~vq25~qq.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/turbopack-0.uq1k8c0j4s..js +0 -1
- package/dist/compiler-ui/_not-found/__next._head.txt +0 -5
- package/dist/compiler-ui/_not-found/__next._not-found.txt +0 -5
- package/dist/compiler-ui/_not-found.html +0 -1
- package/dist/compiler-ui/index.html +0 -1
- package/dist/packages/engine/agents/lib/compiled-bootstrap.d.ts +0 -3
- package/dist/packages/engine/agents/lib/compiled-bootstrap.js +0 -19
- package/dist/packages/engine/compile/artifact-counts.d.ts +0 -1
- package/dist/packages/engine/compile/compiled-compile.d.ts +0 -4
- package/dist/packages/engine/compile/compiled-compile.js +0 -4
- package/dist/packages/engine/compile/compiled-paths.d.ts +0 -47
- package/dist/packages/engine/compile/compiled-paths.js +0 -121
- package/dist/packages/engine/compile/compiled-pipeline.d.ts +0 -56
- package/dist/packages/engine/compile/compiled-schema.d.ts +0 -21
- package/dist/packages/engine/compile/compiled-schema.js +0 -126
- package/dist/packages/engine/compile/compiled-stage-plan.d.ts +0 -16
- package/dist/packages/engine/compile/compiled-stage-plan.js +0 -100
- package/dist/packages/engine/compile/compiled-stage-runner.d.ts +0 -15
- package/dist/packages/engine/compile/compiled-target.d.ts +0 -11
- package/dist/packages/engine/compile/compiled-target.js +0 -16
- package/dist/packages/engine/compile/method-primitives.d.ts +0 -2
- package/dist/packages/engine/compile/method-runs.d.ts +0 -14
- package/dist/packages/engine/compile/method-runs.js +0 -31
- package/dist/packages/engine/compile/reset.d.ts +0 -2
- package/dist/packages/engine/compile/reset.js +0 -74
- package/dist/packages/engine/compile/runtime-inventory.d.ts +0 -7
- package/dist/packages/engine/compile/runtime-reconcile.d.ts +0 -2
- package/dist/packages/engine/compile/source-files.d.ts +0 -46
- package/dist/packages/engine/compile/state-artifacts.d.ts +0 -9
- package/dist/packages/engine/compile/state-artifacts.js +0 -14
- package/dist/packages/engine/compile/state-health.d.ts +0 -4
- package/dist/packages/engine/compile/state-io.d.ts +0 -11
- package/dist/packages/engine/compile/state-paths.js +0 -16
- package/dist/packages/engine/compile/state-view.d.ts +0 -5
- package/dist/packages/engine/compile/state.d.ts +0 -7
- package/dist/packages/engine/compile/state.js +0 -12
- package/dist/packages/engine/compile/validate-compiled.d.ts +0 -27
- package/dist/packages/methods/authoring/index.d.ts +0 -4
- package/dist/packages/methods/authoring/index.js +0 -4
- package/dist/packages/methods/authoring/method-authoring.d.ts +0 -34
- package/dist/packages/methods/authoring/method-edit-session.d.ts +0 -18
- package/dist/packages/methods/authoring/method-improvement.d.ts +0 -23
- package/dist/packages/methods/authoring/method-improvement.js +0 -217
- package/dist/packages/methods/index.d.ts +0 -2
- package/dist/packages/methods/index.js +0 -2
- package/dist/packages/methods/method-resolution.d.ts +0 -6
- package/dist/packages/methods/method-resolution.js +0 -7
- package/dist/packages/methods/package/builtin-compiled-method.d.ts +0 -37
- package/dist/packages/methods/package/builtin-compiled-method.js +0 -91
- package/dist/packages/methods/package/interf-method-package.d.ts +0 -31
- package/dist/packages/methods/package/interf-method-package.js +0 -466
- package/dist/packages/methods/package/local-methods.d.ts +0 -73
- package/dist/packages/methods/package/local-methods.js +0 -457
- package/dist/packages/methods/package/method-definitions.d.ts +0 -61
- package/dist/packages/methods/package/method-definitions.js +0 -214
- package/dist/packages/methods/package/method-review-paths.d.ts +0 -10
- package/dist/packages/methods/package/method-review-paths.js +0 -31
- package/dist/packages/methods/package/user-methods.d.ts +0 -17
- package/dist/packages/methods/package/user-methods.js +0 -77
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_buildManifest.js +0 -0
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_clientMiddlewareManifest.js +0 -0
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_ssgManifest.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/03~yq9q893hmn.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/0y5z3t-z1c8ks.js.map +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/turbopack-worker-0sjn--fhq~1cg.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/GeistMono_Variable.p.17jn9btb_52pq.woff2 +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/Geist_Variable-s.p.0-te~ja_gpvcf.woff2 +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/worker.102zas1s52_pf.js +0 -0
- /package/dist/packages/{methods/authoring/lib/method-edit-utils.js → build-plans/authoring/lib/build-plan-edit-utils.js} +0 -0
- /package/dist/packages/{methods → build-plans}/package/lib/package-root.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-contracts.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-paths.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-prompt.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-runs.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-types.js +0 -0
- /package/dist/packages/engine/{compile → build}/runtime.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime.js +0 -0
- /package/dist/packages/engine/{compile → build}/state-paths.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/validate-helpers.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/validate-helpers.js +0 -0
- /package/{LICENSE.md → public-repo/LICENSE.md} +0 -0
- /package/{TRADEMARKS.md → public-repo/TRADEMARKS.md} +0 -0
|
@@ -23,7 +23,7 @@ function observableRunStatus(status) {
|
|
|
23
23
|
return "cancelled";
|
|
24
24
|
return "succeeded";
|
|
25
25
|
}
|
|
26
|
-
function
|
|
26
|
+
function runTraceStatus(status) {
|
|
27
27
|
if (status === "queued" || status === "pending")
|
|
28
28
|
return "pending";
|
|
29
29
|
if (status === "running")
|
|
@@ -34,7 +34,7 @@ function methodTraceRunStatus(status) {
|
|
|
34
34
|
return "cancelled";
|
|
35
35
|
return "completed";
|
|
36
36
|
}
|
|
37
|
-
function
|
|
37
|
+
function safeTraceNamePart(value) {
|
|
38
38
|
return value
|
|
39
39
|
.replace(/[^a-zA-Z0-9._/-]+/g, "-")
|
|
40
40
|
.replace(/\/+/g, "/")
|
|
@@ -42,12 +42,12 @@ function safeMethodNamePart(value) {
|
|
|
42
42
|
|| "run";
|
|
43
43
|
}
|
|
44
44
|
function interfTraceName(runType, name) {
|
|
45
|
-
return `interf//./runs/${runType}//${
|
|
45
|
+
return `interf//./runs/${runType}//${safeTraceNamePart(name)}`;
|
|
46
46
|
}
|
|
47
|
-
function
|
|
48
|
-
return `step//./interf/${runType}//${
|
|
47
|
+
function runTraceStepName(runType, label) {
|
|
48
|
+
return `step//./interf/${runType}//${safeTraceNamePart(label)}`;
|
|
49
49
|
}
|
|
50
|
-
function
|
|
50
|
+
function structuredRunTraceError(message) {
|
|
51
51
|
return {
|
|
52
52
|
message: message || "Run failed.",
|
|
53
53
|
code: "INTERF_RUN_ERROR",
|
|
@@ -82,7 +82,7 @@ function buildTraceStreamChunks(runId, events) {
|
|
|
82
82
|
message: event.message ?? event.summary ?? event.error ?? event.reason ?? event.type,
|
|
83
83
|
}), event));
|
|
84
84
|
}
|
|
85
|
-
function
|
|
85
|
+
function proofChecksForBuildRun(run) {
|
|
86
86
|
return run.stages.flatMap((stage) => (stage.latest_proof?.checks ?? []).map((check) => ({
|
|
87
87
|
...check,
|
|
88
88
|
detail: check.detail ?? `${stage.stage_label ?? stage.stage_id} / ${stage.status}`,
|
|
@@ -94,10 +94,10 @@ function agentLabelForJob(job) {
|
|
|
94
94
|
function jobTypeLabelForMetric(type) {
|
|
95
95
|
if (type === "readiness-check-draft")
|
|
96
96
|
return "Draft readiness checks";
|
|
97
|
-
if (type === "
|
|
98
|
-
return "
|
|
99
|
-
if (type === "
|
|
100
|
-
return "
|
|
97
|
+
if (type === "build-plan-draft")
|
|
98
|
+
return "Build Plan draft";
|
|
99
|
+
if (type === "build-plan-improvement")
|
|
100
|
+
return "Build Plan improvement";
|
|
101
101
|
return "Local job";
|
|
102
102
|
}
|
|
103
103
|
function stageTracePayload(stage) {
|
|
@@ -109,12 +109,20 @@ function stageTracePayload(stage) {
|
|
|
109
109
|
...(stage.latest_proof ? { proof: stage.latest_proof } : {}),
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
|
-
|
|
112
|
+
function buildPlanForRun(run) {
|
|
113
|
+
return run.build_plan;
|
|
114
|
+
}
|
|
115
|
+
function verifiableContextPathForRun(run) {
|
|
116
|
+
return run.verifiable_context_path;
|
|
117
|
+
}
|
|
118
|
+
export function buildRunToObservability(run) {
|
|
113
119
|
const artifacts = uniqueArtifacts(run.stages.flatMap((stage) => stage.artifacts));
|
|
114
|
-
const proof =
|
|
120
|
+
const proof = proofChecksForBuildRun(run);
|
|
115
121
|
const executor = run.stages.find((stage) => stage.executor)?.executor ?? null;
|
|
116
|
-
const traceStatus =
|
|
117
|
-
const
|
|
122
|
+
const traceStatus = runTraceStatus(run.status);
|
|
123
|
+
const buildPlan = buildPlanForRun(run);
|
|
124
|
+
const verifiableContextPath = verifiableContextPathForRun(run);
|
|
125
|
+
const traceName = interfTraceName("build", `Build ${run.preparation}`);
|
|
118
126
|
const completedAt = run.finished_at ?? (traceStatus === "completed" || traceStatus === "failed" || traceStatus === "cancelled"
|
|
119
127
|
? run.started_at ?? run.created_at
|
|
120
128
|
: undefined);
|
|
@@ -122,11 +130,11 @@ export function compileRunToObservability(run) {
|
|
|
122
130
|
const events = [
|
|
123
131
|
traceEvent(run.run_id, "run_created", run.created_at, eventIndex++, {
|
|
124
132
|
deploymentId: "local-interf",
|
|
125
|
-
|
|
133
|
+
traceName,
|
|
126
134
|
input: {
|
|
127
|
-
kind: "
|
|
135
|
+
kind: "build",
|
|
128
136
|
preparation: run.preparation,
|
|
129
|
-
|
|
137
|
+
build_plan: buildPlan,
|
|
130
138
|
source_path: run.source_path,
|
|
131
139
|
},
|
|
132
140
|
executionContext: {
|
|
@@ -137,10 +145,10 @@ export function compileRunToObservability(run) {
|
|
|
137
145
|
];
|
|
138
146
|
if (run.started_at) {
|
|
139
147
|
events.push(traceEvent(run.run_id, "run_started", run.started_at, eventIndex++, {
|
|
140
|
-
|
|
148
|
+
traceName,
|
|
141
149
|
input: {
|
|
142
150
|
preparation: run.preparation,
|
|
143
|
-
|
|
151
|
+
build_plan: buildPlan,
|
|
144
152
|
},
|
|
145
153
|
executionContext: {
|
|
146
154
|
backend: run.backend,
|
|
@@ -151,7 +159,7 @@ export function compileRunToObservability(run) {
|
|
|
151
159
|
for (const stage of run.stages) {
|
|
152
160
|
if (stage.status === "queued")
|
|
153
161
|
continue;
|
|
154
|
-
const stepName =
|
|
162
|
+
const stepName = runTraceStepName("build", stage.stage_label ?? stage.stage_id);
|
|
155
163
|
const stepCreatedAt = stage.started_at ?? run.started_at ?? run.created_at;
|
|
156
164
|
const stepStartedAt = stage.started_at ?? stepCreatedAt;
|
|
157
165
|
const stepCompletedAt = stage.finished_at ?? run.finished_at ?? completedAt ?? stepCreatedAt;
|
|
@@ -172,7 +180,7 @@ export function compileRunToObservability(run) {
|
|
|
172
180
|
}, stage.stage_id));
|
|
173
181
|
if (stage.status === "failed") {
|
|
174
182
|
events.push(traceEvent(run.run_id, "step_failed", stepCompletedAt, eventIndex++, {
|
|
175
|
-
error:
|
|
183
|
+
error: structuredRunTraceError(stage.failure ?? stage.summary),
|
|
176
184
|
output: stageTracePayload(stage),
|
|
177
185
|
}, stage.stage_id));
|
|
178
186
|
}
|
|
@@ -185,7 +193,7 @@ export function compileRunToObservability(run) {
|
|
|
185
193
|
if (traceStatus === "completed") {
|
|
186
194
|
events.push(traceEvent(run.run_id, "run_completed", completedAt, eventIndex++, {
|
|
187
195
|
output: {
|
|
188
|
-
|
|
196
|
+
verifiable_context_path: verifiableContextPath,
|
|
189
197
|
artifacts,
|
|
190
198
|
proof,
|
|
191
199
|
latest_proof: run.latest_proof ?? null,
|
|
@@ -194,7 +202,7 @@ export function compileRunToObservability(run) {
|
|
|
194
202
|
}
|
|
195
203
|
else if (traceStatus === "failed") {
|
|
196
204
|
events.push(traceEvent(run.run_id, "run_failed", completedAt, eventIndex++, {
|
|
197
|
-
error:
|
|
205
|
+
error: structuredRunTraceError(run.stages.find((stage) => stage.failure)?.failure ?? run.latest_proof?.summary),
|
|
198
206
|
}));
|
|
199
207
|
}
|
|
200
208
|
else if (traceStatus === "cancelled") {
|
|
@@ -204,13 +212,13 @@ export function compileRunToObservability(run) {
|
|
|
204
212
|
kind: "interf-run-observability",
|
|
205
213
|
version: 1,
|
|
206
214
|
run_id: run.run_id,
|
|
207
|
-
run_type: "
|
|
208
|
-
title: `
|
|
215
|
+
run_type: "build",
|
|
216
|
+
title: `Build ${run.preparation}`,
|
|
209
217
|
status: observableRunStatus(run.status),
|
|
210
218
|
preparation: run.preparation,
|
|
211
|
-
|
|
219
|
+
build_plan: buildPlan,
|
|
212
220
|
source_path: run.source_path,
|
|
213
|
-
output_path:
|
|
221
|
+
output_path: verifiableContextPath,
|
|
214
222
|
executor,
|
|
215
223
|
agent_label: executor?.display_name ?? run.backend,
|
|
216
224
|
created_at: run.created_at,
|
|
@@ -219,10 +227,10 @@ export function compileRunToObservability(run) {
|
|
|
219
227
|
readiness: run.readiness ?? null,
|
|
220
228
|
metrics: [
|
|
221
229
|
{ label: "Preparation", value: run.preparation },
|
|
222
|
-
{ label: "
|
|
230
|
+
{ label: "Build Plan", value: buildPlan },
|
|
223
231
|
{ label: "Executor", value: executor?.display_name ?? run.backend },
|
|
224
232
|
{ label: "Stages", value: `${run.stages.filter((stage) => stage.status === "succeeded").length}/${run.stages.length}` },
|
|
225
|
-
{ label: "
|
|
233
|
+
{ label: "Stage proof", value: `${proof.filter((check) => check.ok).length}/${proof.length}` },
|
|
226
234
|
{ label: "Artifacts", value: String(artifacts.length) },
|
|
227
235
|
],
|
|
228
236
|
artifacts,
|
|
@@ -232,31 +240,31 @@ export function compileRunToObservability(run) {
|
|
|
232
240
|
runId: run.run_id,
|
|
233
241
|
status: traceStatus,
|
|
234
242
|
deploymentId: "local-interf",
|
|
235
|
-
|
|
243
|
+
traceName,
|
|
236
244
|
specVersion: 1,
|
|
237
245
|
executionContext: {
|
|
238
246
|
product: "Interf",
|
|
239
|
-
run_type: "
|
|
247
|
+
run_type: "build",
|
|
240
248
|
preparation: run.preparation,
|
|
241
|
-
|
|
249
|
+
build_plan: buildPlan,
|
|
242
250
|
backend: run.backend,
|
|
243
251
|
executor,
|
|
244
252
|
},
|
|
245
253
|
input: {
|
|
246
254
|
preparation: run.preparation,
|
|
247
|
-
|
|
255
|
+
build_plan: buildPlan,
|
|
248
256
|
source_path: run.source_path,
|
|
249
257
|
},
|
|
250
258
|
...(traceStatus === "completed"
|
|
251
259
|
? {
|
|
252
260
|
output: {
|
|
253
|
-
|
|
261
|
+
verifiable_context_path: verifiableContextPath,
|
|
254
262
|
artifacts,
|
|
255
263
|
proof,
|
|
256
264
|
},
|
|
257
265
|
}
|
|
258
266
|
: {}),
|
|
259
|
-
...(traceStatus === "failed" ? { error:
|
|
267
|
+
...(traceStatus === "failed" ? { error: structuredRunTraceError(run.stages.find((stage) => stage.failure)?.failure) } : {}),
|
|
260
268
|
...(run.started_at ? { startedAt: run.started_at } : {}),
|
|
261
269
|
...(completedAt ? { completedAt } : {}),
|
|
262
270
|
createdAt: run.created_at,
|
|
@@ -268,15 +276,15 @@ export function compileRunToObservability(run) {
|
|
|
268
276
|
});
|
|
269
277
|
}
|
|
270
278
|
export function verifyRunToObservability(run) {
|
|
271
|
-
const traceStatus =
|
|
279
|
+
const traceStatus = runTraceStatus(run.status);
|
|
272
280
|
const title = `Check readiness ${run.preparation}`;
|
|
273
|
-
const
|
|
281
|
+
const traceName = interfTraceName("verify", title);
|
|
274
282
|
const completedAt = run.finished_at ?? (traceStatus === "completed" || traceStatus === "failed" || traceStatus === "cancelled"
|
|
275
283
|
? run.started_at ?? new Date().toISOString()
|
|
276
284
|
: undefined);
|
|
277
285
|
const readinessRun = run.readiness_run;
|
|
278
286
|
const sourceFiles = readinessRun?.source_files ?? null;
|
|
279
|
-
const
|
|
287
|
+
const verifiableContext = readinessRun?.verifiable_context ?? null;
|
|
280
288
|
const proofCandidates = [
|
|
281
289
|
sourceFiles
|
|
282
290
|
? {
|
|
@@ -286,39 +294,39 @@ export function verifyRunToObservability(run) {
|
|
|
286
294
|
detail: `${sourceFiles.passed_cases}/${sourceFiles.total_cases} checks`,
|
|
287
295
|
}
|
|
288
296
|
: null,
|
|
289
|
-
|
|
297
|
+
verifiableContext
|
|
290
298
|
? {
|
|
291
|
-
id: `${run.run_id}-
|
|
292
|
-
label: "
|
|
293
|
-
ok:
|
|
294
|
-
detail: `${
|
|
299
|
+
id: `${run.run_id}-verifiable-context`,
|
|
300
|
+
label: "verifiable context",
|
|
301
|
+
ok: verifiableContext.ok ?? verifiableContext.passed_cases === verifiableContext.total_cases,
|
|
302
|
+
detail: `${verifiableContext.passed_cases}/${verifiableContext.total_cases} checks`,
|
|
295
303
|
}
|
|
296
304
|
: null,
|
|
297
305
|
];
|
|
298
306
|
const proof = proofCandidates.filter((value) => value !== null);
|
|
299
307
|
const artifacts = uniqueArtifacts([
|
|
300
308
|
...(sourceFiles?.run_path ? [{ path: sourceFiles.run_path, role: "test", label: "source files readiness run" }] : []),
|
|
301
|
-
...(
|
|
309
|
+
...(verifiableContext?.run_path ? [{ path: verifiableContext.run_path, role: "test", label: "verifiable context readiness run" }] : []),
|
|
302
310
|
]);
|
|
303
311
|
let eventIndex = 0;
|
|
304
312
|
const events = [
|
|
305
313
|
traceEvent(run.run_id, "run_created", run.started_at, eventIndex++, {
|
|
306
314
|
deploymentId: "local-interf",
|
|
307
|
-
|
|
315
|
+
traceName,
|
|
308
316
|
input: {
|
|
309
317
|
kind: "verify",
|
|
310
318
|
preparation: run.preparation,
|
|
311
|
-
// 0.15
|
|
312
|
-
mode: "
|
|
319
|
+
// 0.15 - verify runs always judge against verifiable context.
|
|
320
|
+
mode: "built",
|
|
313
321
|
},
|
|
314
322
|
}),
|
|
315
323
|
];
|
|
316
324
|
if (run.started_at) {
|
|
317
325
|
events.push(traceEvent(run.run_id, "run_started", run.started_at, eventIndex++, {
|
|
318
|
-
|
|
326
|
+
traceName,
|
|
319
327
|
input: {
|
|
320
328
|
preparation: run.preparation,
|
|
321
|
-
mode: "
|
|
329
|
+
mode: "built",
|
|
322
330
|
},
|
|
323
331
|
}));
|
|
324
332
|
}
|
|
@@ -332,13 +340,13 @@ export function verifyRunToObservability(run) {
|
|
|
332
340
|
output: sourceFiles,
|
|
333
341
|
}
|
|
334
342
|
: null,
|
|
335
|
-
|
|
343
|
+
verifiableContext
|
|
336
344
|
? {
|
|
337
|
-
id: "
|
|
338
|
-
label: "
|
|
339
|
-
status:
|
|
340
|
-
input:
|
|
341
|
-
output:
|
|
345
|
+
id: "verifiable-context-check",
|
|
346
|
+
label: "Verifiable context",
|
|
347
|
+
status: verifiableContext.ok ?? verifiableContext.passed_cases === verifiableContext.total_cases ? "succeeded" : "failed",
|
|
348
|
+
input: verifiableContext.target ?? { type: "verifiable-context", path: run.verifiable_context_path ?? null },
|
|
349
|
+
output: verifiableContext,
|
|
342
350
|
}
|
|
343
351
|
: null,
|
|
344
352
|
];
|
|
@@ -350,7 +358,7 @@ export function verifyRunToObservability(run) {
|
|
|
350
358
|
status: run.status === "failed" ? "failed" : "succeeded",
|
|
351
359
|
input: {
|
|
352
360
|
preparation: run.preparation,
|
|
353
|
-
mode: "
|
|
361
|
+
mode: "built",
|
|
354
362
|
},
|
|
355
363
|
output: readinessRun ?? null,
|
|
356
364
|
});
|
|
@@ -358,14 +366,14 @@ export function verifyRunToObservability(run) {
|
|
|
358
366
|
for (const step of targetSteps) {
|
|
359
367
|
const timestamp = run.started_at ?? run.finished_at ?? new Date().toISOString();
|
|
360
368
|
events.push(traceEvent(run.run_id, "step_created", timestamp, eventIndex++, {
|
|
361
|
-
stepName:
|
|
369
|
+
stepName: runTraceStepName("verify", step.label),
|
|
362
370
|
input: step.input,
|
|
363
371
|
}, step.id));
|
|
364
372
|
events.push(traceEvent(run.run_id, "step_started", timestamp, eventIndex++, {
|
|
365
373
|
attempt: 1,
|
|
366
374
|
}, step.id));
|
|
367
375
|
events.push(traceEvent(run.run_id, step.status === "failed" ? "step_failed" : "step_completed", run.finished_at ?? timestamp, eventIndex++, step.status === "failed"
|
|
368
|
-
? { error:
|
|
376
|
+
? { error: structuredRunTraceError(run.error ?? `${step.label} did not pass.`), output: step.output }
|
|
369
377
|
: { result: step.output }, step.id));
|
|
370
378
|
}
|
|
371
379
|
if (traceStatus === "completed") {
|
|
@@ -378,7 +386,7 @@ export function verifyRunToObservability(run) {
|
|
|
378
386
|
}
|
|
379
387
|
else if (traceStatus === "failed") {
|
|
380
388
|
events.push(traceEvent(run.run_id, "run_failed", completedAt, eventIndex++, {
|
|
381
|
-
error:
|
|
389
|
+
error: structuredRunTraceError(run.error),
|
|
382
390
|
}));
|
|
383
391
|
}
|
|
384
392
|
else if (traceStatus === "cancelled") {
|
|
@@ -392,19 +400,19 @@ export function verifyRunToObservability(run) {
|
|
|
392
400
|
title,
|
|
393
401
|
status: observableRunStatus(run.status),
|
|
394
402
|
preparation: run.preparation,
|
|
395
|
-
|
|
403
|
+
build_plan: verifiableContext?.target?.build_plan ?? null,
|
|
396
404
|
source_path: run.source_path ?? null,
|
|
397
|
-
output_path: run.
|
|
405
|
+
output_path: run.verifiable_context_path ?? null,
|
|
398
406
|
created_at: run.started_at ?? completedAt ?? new Date().toISOString(),
|
|
399
407
|
started_at: run.started_at ?? null,
|
|
400
408
|
finished_at: run.finished_at ?? null,
|
|
401
409
|
readiness: run.readiness ?? null,
|
|
402
410
|
metrics: [
|
|
403
411
|
{ label: "Preparation", value: run.preparation },
|
|
404
|
-
{ label: "Mode", value: "
|
|
405
|
-
{ label: "Readiness checks", value:
|
|
412
|
+
{ label: "Mode", value: "verifiable context" },
|
|
413
|
+
{ label: "Readiness checks", value: verifiableContext ? `${verifiableContext.passed_cases}/${verifiableContext.total_cases}` : sourceFiles ? `${sourceFiles.passed_cases}/${sourceFiles.total_cases}` : "0/0" },
|
|
406
414
|
{ label: "Source files", value: sourceFiles ? `${sourceFiles.passed_cases}/${sourceFiles.total_cases}` : "-" },
|
|
407
|
-
{ label: "
|
|
415
|
+
{ label: "Verifiable context", value: verifiableContext ? `${verifiableContext.passed_cases}/${verifiableContext.total_cases}` : "-" },
|
|
408
416
|
],
|
|
409
417
|
artifacts,
|
|
410
418
|
proof,
|
|
@@ -413,22 +421,22 @@ export function verifyRunToObservability(run) {
|
|
|
413
421
|
runId: run.run_id,
|
|
414
422
|
status: traceStatus,
|
|
415
423
|
deploymentId: "local-interf",
|
|
416
|
-
|
|
424
|
+
traceName,
|
|
417
425
|
specVersion: 1,
|
|
418
426
|
executionContext: {
|
|
419
427
|
product: "Interf",
|
|
420
428
|
run_type: "verify",
|
|
421
429
|
preparation: run.preparation,
|
|
422
|
-
mode: "
|
|
430
|
+
mode: "built",
|
|
423
431
|
},
|
|
424
432
|
input: {
|
|
425
433
|
preparation: run.preparation,
|
|
426
|
-
mode: "
|
|
434
|
+
mode: "built",
|
|
427
435
|
source_path: run.source_path ?? null,
|
|
428
|
-
|
|
436
|
+
verifiable_context_path: run.verifiable_context_path ?? null,
|
|
429
437
|
},
|
|
430
438
|
...(traceStatus === "completed" ? { output: { readiness_run: readinessRun, proof } } : {}),
|
|
431
|
-
...(traceStatus === "failed" ? { error:
|
|
439
|
+
...(traceStatus === "failed" ? { error: structuredRunTraceError(run.error) } : {}),
|
|
432
440
|
...(run.started_at ? { startedAt: run.started_at } : {}),
|
|
433
441
|
...(completedAt ? { completedAt } : {}),
|
|
434
442
|
createdAt: run.started_at ?? completedAt ?? new Date().toISOString(),
|
|
@@ -440,11 +448,14 @@ export function verifyRunToObservability(run) {
|
|
|
440
448
|
});
|
|
441
449
|
}
|
|
442
450
|
export function jobRunToObservability(job) {
|
|
443
|
-
const runType = (job.job_type === "readiness-check-draft"
|
|
444
|
-
|
|
445
|
-
job.job_type === "
|
|
446
|
-
|
|
447
|
-
|
|
451
|
+
const runType = (job.job_type === "readiness-check-draft"
|
|
452
|
+
? "readiness-check-draft"
|
|
453
|
+
: job.job_type === "build-plan-draft"
|
|
454
|
+
? "build-plan-draft"
|
|
455
|
+
: job.job_type === "build-plan-improvement"
|
|
456
|
+
? "build-plan-improvement"
|
|
457
|
+
: "job");
|
|
458
|
+
const buildPlanId = job.build_plan ?? null;
|
|
448
459
|
const executor = job.agent
|
|
449
460
|
? {
|
|
450
461
|
kind: "local-agent",
|
|
@@ -453,8 +464,8 @@ export function jobRunToObservability(job) {
|
|
|
453
464
|
command: job.agent.command ?? null,
|
|
454
465
|
}
|
|
455
466
|
: null;
|
|
456
|
-
const traceStatus =
|
|
457
|
-
const
|
|
467
|
+
const traceStatus = runTraceStatus(job.status);
|
|
468
|
+
const traceName = interfTraceName(runType, job.title);
|
|
458
469
|
const completedAt = job.finished_at ?? (traceStatus === "completed" || traceStatus === "failed" || traceStatus === "cancelled"
|
|
459
470
|
? job.started_at ?? job.created_at
|
|
460
471
|
: undefined);
|
|
@@ -462,11 +473,11 @@ export function jobRunToObservability(job) {
|
|
|
462
473
|
const events = [
|
|
463
474
|
traceEvent(job.run_id, "run_created", job.created_at, eventIndex++, {
|
|
464
475
|
deploymentId: "local-interf",
|
|
465
|
-
|
|
476
|
+
traceName,
|
|
466
477
|
input: {
|
|
467
478
|
job_type: job.job_type,
|
|
468
479
|
preparation: job.preparation ?? null,
|
|
469
|
-
|
|
480
|
+
build_plan: buildPlanId,
|
|
470
481
|
},
|
|
471
482
|
executionContext: {
|
|
472
483
|
executor,
|
|
@@ -475,7 +486,7 @@ export function jobRunToObservability(job) {
|
|
|
475
486
|
];
|
|
476
487
|
if (job.started_at) {
|
|
477
488
|
events.push(traceEvent(job.run_id, "run_started", job.started_at, eventIndex++, {
|
|
478
|
-
|
|
489
|
+
traceName,
|
|
479
490
|
input: {
|
|
480
491
|
job_type: job.job_type,
|
|
481
492
|
preparation: job.preparation ?? null,
|
|
@@ -488,7 +499,7 @@ export function jobRunToObservability(job) {
|
|
|
488
499
|
for (const step of job.steps) {
|
|
489
500
|
const timestamp = step.started_at ?? job.started_at ?? job.created_at;
|
|
490
501
|
events.push(traceEvent(job.run_id, "step_created", timestamp, eventIndex++, {
|
|
491
|
-
stepName:
|
|
502
|
+
stepName: runTraceStepName(runType, step.label),
|
|
492
503
|
input: step.input ?? {
|
|
493
504
|
step_id: step.id,
|
|
494
505
|
label: step.label,
|
|
@@ -501,7 +512,7 @@ export function jobRunToObservability(job) {
|
|
|
501
512
|
}
|
|
502
513
|
if (step.status === "failed") {
|
|
503
514
|
events.push(traceEvent(job.run_id, "step_failed", step.finished_at ?? completedAt ?? timestamp, eventIndex++, {
|
|
504
|
-
error:
|
|
515
|
+
error: structuredRunTraceError(step.summary ?? job.error),
|
|
505
516
|
output: step.output ?? null,
|
|
506
517
|
}, step.id));
|
|
507
518
|
}
|
|
@@ -522,14 +533,16 @@ export function jobRunToObservability(job) {
|
|
|
522
533
|
}
|
|
523
534
|
else if (traceStatus === "failed") {
|
|
524
535
|
events.push(traceEvent(job.run_id, "run_failed", completedAt, eventIndex++, {
|
|
525
|
-
error:
|
|
536
|
+
error: structuredRunTraceError(job.error),
|
|
526
537
|
}));
|
|
527
538
|
}
|
|
528
539
|
else if (traceStatus === "cancelled") {
|
|
529
540
|
events.push(traceEvent(job.run_id, "run_cancelled", completedAt, eventIndex++));
|
|
530
541
|
}
|
|
531
542
|
const outputPath = job.output_path ?? (typeof job.result?.path === "string" ? job.result.path : null);
|
|
532
|
-
const
|
|
543
|
+
const outputIsArtifact = job.job_type !== "build-plan-draft"
|
|
544
|
+
&& job.job_type !== "build-plan-improvement";
|
|
545
|
+
const artifacts = uniqueArtifacts(outputIsArtifact && outputPath ? [{ path: outputPath, role: "output" }] : []);
|
|
533
546
|
return RunObservabilityResourceSchema.parse({
|
|
534
547
|
kind: "interf-run-observability",
|
|
535
548
|
version: 1,
|
|
@@ -538,7 +551,7 @@ export function jobRunToObservability(job) {
|
|
|
538
551
|
title: job.title,
|
|
539
552
|
status: observableRunStatus(job.status),
|
|
540
553
|
preparation: job.preparation ?? null,
|
|
541
|
-
|
|
554
|
+
build_plan: buildPlanId,
|
|
542
555
|
source_path: job.source_path ?? null,
|
|
543
556
|
output_path: outputPath,
|
|
544
557
|
executor,
|
|
@@ -551,7 +564,7 @@ export function jobRunToObservability(job) {
|
|
|
551
564
|
{ label: "Executor", value: agentLabelForJob(job) ?? "local executor" },
|
|
552
565
|
{ label: "Phases", value: `${job.steps.filter((step) => step.status === "succeeded").length}/${job.steps.length}` },
|
|
553
566
|
{ label: "Preparation", value: job.preparation ?? "-" },
|
|
554
|
-
{ label: "
|
|
567
|
+
{ label: "Build Plan", value: buildPlanId ?? "-" },
|
|
555
568
|
],
|
|
556
569
|
artifacts,
|
|
557
570
|
proof: [],
|
|
@@ -560,24 +573,24 @@ export function jobRunToObservability(job) {
|
|
|
560
573
|
runId: job.run_id,
|
|
561
574
|
status: traceStatus,
|
|
562
575
|
deploymentId: "local-interf",
|
|
563
|
-
|
|
576
|
+
traceName,
|
|
564
577
|
specVersion: 1,
|
|
565
578
|
executionContext: {
|
|
566
579
|
product: "Interf",
|
|
567
580
|
run_type: runType,
|
|
568
581
|
job_type: job.job_type,
|
|
569
582
|
preparation: job.preparation ?? null,
|
|
570
|
-
|
|
583
|
+
build_plan: buildPlanId,
|
|
571
584
|
executor,
|
|
572
585
|
},
|
|
573
586
|
input: {
|
|
574
587
|
job_type: job.job_type,
|
|
575
588
|
preparation: job.preparation ?? null,
|
|
576
|
-
|
|
589
|
+
build_plan: buildPlanId,
|
|
577
590
|
source_path: job.source_path ?? null,
|
|
578
591
|
},
|
|
579
592
|
...(traceStatus === "completed" ? { output: job.result ?? { output_path: outputPath } } : {}),
|
|
580
|
-
...(traceStatus === "failed" ? { error:
|
|
593
|
+
...(traceStatus === "failed" ? { error: structuredRunTraceError(job.error) } : {}),
|
|
581
594
|
...(job.started_at ? { startedAt: job.started_at } : {}),
|
|
582
595
|
...(completedAt ? { completedAt } : {}),
|
|
583
596
|
createdAt: job.created_at,
|
|
@@ -4,13 +4,13 @@
|
|
|
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
|
-
* (
|
|
8
|
-
* per second; on
|
|
7
|
+
* (Interf UI, CLI status loops) hit those endpoints multiple times
|
|
8
|
+
* per second; on instances with hundreds of build / test 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
|
|
13
|
-
* and each cache exposes both a read path (`get(...)`) and an explicit
|
|
12
|
+
* is keyed by Preparation data directory so independent Preparations do
|
|
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
16
|
* disk. Invalidation is intentionally broad (per-preparation, not
|
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
* lowering recompute cost.
|
|
20
20
|
*/
|
|
21
21
|
/**
|
|
22
|
-
* Per-(
|
|
23
|
-
* runId -> preparation index so `
|
|
22
|
+
* Per-(Preparation data directory, preparation) cache for Build run records, plus a
|
|
23
|
+
* runId -> preparation index so `getBuildRun(runId)` can resolve to
|
|
24
24
|
* the owning preparation without scanning every preparation's runs.
|
|
25
25
|
*/
|
|
26
26
|
export declare class RunListingCache<TRecord> {
|
|
27
27
|
/** prepDataDir -> preparation -> records (newest-first sorted). */
|
|
28
|
-
private
|
|
28
|
+
private byPreparationRoot;
|
|
29
29
|
/** prepDataDir -> runId -> preparation. */
|
|
30
30
|
private runIndex;
|
|
31
31
|
get(prepDataDir: string, preparation: string, fill: () => TRecord[], runIdOf: (record: TRecord) => string): TRecord[];
|
|
@@ -33,20 +33,20 @@ export declare class RunListingCache<TRecord> {
|
|
|
33
33
|
preparationFor(prepDataDir: string, runId: string): string | null;
|
|
34
34
|
/** Invalidate a single preparation's cached records and id index. */
|
|
35
35
|
invalidatePreparation(prepDataDir: string, preparation: string): void;
|
|
36
|
-
/** Drop everything for a
|
|
37
|
-
|
|
36
|
+
/** Drop everything for a Preparation data directory (e.g. after a reset). */
|
|
37
|
+
invalidatePreparationRoot(prepDataDir: string): void;
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
* Per-(
|
|
40
|
+
* Per-(Preparation data directory, preparation) readiness cache. Readiness joins build
|
|
41
41
|
* runs, test runs, readiness-check runs, and the preparation config; it
|
|
42
42
|
* is computed on every poll. The cache invalidates when the runtime
|
|
43
43
|
* writes any of those underlying objects for a given preparation.
|
|
44
44
|
*/
|
|
45
45
|
export declare class ReadinessCache<TReadiness> {
|
|
46
|
-
private
|
|
46
|
+
private byPreparationRoot;
|
|
47
47
|
get(prepDataDir: string, preparation: string, compute: () => TReadiness): TReadiness;
|
|
48
48
|
invalidatePreparation(prepDataDir: string, preparation: string): void;
|
|
49
|
-
|
|
49
|
+
invalidatePreparationRoot(prepDataDir: string): void;
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
52
|
* Source-folder listing cache keyed by `(cacheKey, folderRootMtime)`.
|
|
@@ -63,12 +63,12 @@ export declare class MtimeListingCache<TList> {
|
|
|
63
63
|
invalidateAll(): void;
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
* new local
|
|
66
|
+
* Build Plan listing cache keyed by the joined mtimes of the
|
|
67
|
+
* bundled / user-library / Preparation-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
69
|
* misses and we re-resolve.
|
|
70
70
|
*/
|
|
71
|
-
export declare class
|
|
71
|
+
export declare class BuildPlanListingCache<TList> {
|
|
72
72
|
private cache;
|
|
73
73
|
get(cacheKey: string, rootPaths: string[], fill: () => TList): TList;
|
|
74
74
|
invalidate(cacheKey: string): void;
|