wingfoil 0.2.2 → 0.3.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 +83 -43
- package/dist/agent/discovery.d.ts +72 -0
- package/dist/agent/discovery.d.ts.map +1 -0
- package/dist/agent/discovery.js +210 -0
- package/dist/agent/discovery.js.map +1 -0
- package/dist/agent/execute.d.ts +206 -0
- package/dist/agent/execute.d.ts.map +1 -0
- package/dist/agent/execute.js +581 -0
- package/dist/agent/execute.js.map +1 -0
- package/dist/agent/index.d.ts +23 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +85 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/launch.d.ts +133 -0
- package/dist/agent/launch.d.ts.map +1 -0
- package/dist/agent/launch.js +380 -0
- package/dist/agent/launch.js.map +1 -0
- package/dist/agent/manifest.d.ts +30 -0
- package/dist/agent/manifest.d.ts.map +1 -0
- package/dist/agent/manifest.js +93 -0
- package/dist/agent/manifest.js.map +1 -0
- package/dist/agent/placeholders.d.ts +49 -0
- package/dist/agent/placeholders.d.ts.map +1 -0
- package/dist/agent/placeholders.js +177 -0
- package/dist/agent/placeholders.js.map +1 -0
- package/dist/agent/run-log.d.ts +254 -0
- package/dist/agent/run-log.d.ts.map +1 -0
- package/dist/agent/run-log.js +612 -0
- package/dist/agent/run-log.js.map +1 -0
- package/dist/agent/schema.d.ts +100 -0
- package/dist/agent/schema.d.ts.map +1 -0
- package/dist/agent/schema.js +89 -0
- package/dist/agent/schema.js.map +1 -0
- package/dist/agent/step.d.ts +41 -0
- package/dist/agent/step.d.ts.map +1 -0
- package/dist/agent/step.js +95 -0
- package/dist/agent/step.js.map +1 -0
- package/dist/build-info.json +4 -0
- package/dist/cli/error.d.ts +11 -2
- package/dist/cli/error.d.ts.map +1 -1
- package/dist/cli/error.js +27 -6
- package/dist/cli/error.js.map +1 -1
- package/dist/cli/exit.d.ts +33 -3
- package/dist/cli/exit.d.ts.map +1 -1
- package/dist/cli/exit.js +54 -3
- package/dist/cli/exit.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init-command.d.ts.map +1 -1
- package/dist/cli/init-command.js +4 -2
- package/dist/cli/init-command.js.map +1 -1
- package/dist/cli/mcp-command.d.ts +13 -4
- package/dist/cli/mcp-command.d.ts.map +1 -1
- package/dist/cli/mcp-command.js +25 -8
- package/dist/cli/mcp-command.js.map +1 -1
- package/dist/cli/output.d.ts +12 -4
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js +15 -4
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/program.d.ts +1 -1
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +162 -40
- package/dist/cli/program.js.map +1 -1
- package/dist/cli/registrar.d.ts +1 -1
- package/dist/cli/registrar.d.ts.map +1 -1
- package/dist/cli/registrar.js +67 -6
- package/dist/cli/registrar.js.map +1 -1
- package/dist/cli/suggest.d.ts +20 -0
- package/dist/cli/suggest.d.ts.map +1 -0
- package/dist/cli/suggest.js +49 -0
- package/dist/cli/suggest.js.map +1 -0
- package/dist/cli/warning.d.ts +26 -0
- package/dist/cli/warning.d.ts.map +1 -0
- package/dist/cli/warning.js +66 -0
- package/dist/cli/warning.js.map +1 -0
- package/dist/cli.js +11 -2
- package/dist/cli.js.map +1 -1
- package/dist/core/agent-execute.d.ts +44 -0
- package/dist/core/agent-execute.d.ts.map +1 -0
- package/dist/core/agent-execute.js +71 -0
- package/dist/core/agent-execute.js.map +1 -0
- package/dist/core/agent-list.d.ts +95 -0
- package/dist/core/agent-list.d.ts.map +1 -0
- package/dist/core/agent-list.js +207 -0
- package/dist/core/agent-list.js.map +1 -0
- package/dist/core/agent-show.d.ts +44 -0
- package/dist/core/agent-show.d.ts.map +1 -0
- package/dist/core/agent-show.js +188 -0
- package/dist/core/agent-show.js.map +1 -0
- package/dist/core/approval-authority.d.ts +17 -14
- package/dist/core/approval-authority.d.ts.map +1 -1
- package/dist/core/approval-authority.js +9 -9
- package/dist/core/approval-authority.js.map +1 -1
- package/dist/core/builtin-asset.d.ts +18 -15
- package/dist/core/builtin-asset.d.ts.map +1 -1
- package/dist/core/builtin-asset.js +17 -14
- package/dist/core/builtin-asset.js.map +1 -1
- package/dist/core/builtin-integrity.d.ts +12 -2
- package/dist/core/builtin-integrity.d.ts.map +1 -1
- package/dist/core/builtin-integrity.js +85 -9
- package/dist/core/builtin-integrity.js.map +1 -1
- package/dist/core/confinement.d.ts +3 -1
- package/dist/core/confinement.d.ts.map +1 -1
- package/dist/core/confinement.js +7 -4
- package/dist/core/confinement.js.map +1 -1
- package/dist/core/context.d.ts +150 -98
- package/dist/core/context.d.ts.map +1 -1
- package/dist/core/context.js +602 -66
- package/dist/core/context.js.map +1 -1
- package/dist/core/directive-assign.d.ts +33 -7
- package/dist/core/directive-assign.d.ts.map +1 -1
- package/dist/core/directive-assign.js +67 -27
- package/dist/core/directive-assign.js.map +1 -1
- package/dist/core/directive-scope.d.ts +36 -0
- package/dist/core/directive-scope.d.ts.map +1 -0
- package/dist/core/directive-scope.js +34 -0
- package/dist/core/directive-scope.js.map +1 -0
- package/dist/core/directives-list.d.ts +13 -3
- package/dist/core/directives-list.d.ts.map +1 -1
- package/dist/core/directives-list.js +18 -6
- package/dist/core/directives-list.js.map +1 -1
- package/dist/core/dry-run.d.ts +33 -0
- package/dist/core/dry-run.d.ts.map +1 -0
- package/dist/core/dry-run.js +45 -0
- package/dist/core/dry-run.js.map +1 -0
- package/dist/core/element-ref.d.ts +23 -0
- package/dist/core/element-ref.d.ts.map +1 -0
- package/dist/core/element-ref.js +24 -0
- package/dist/core/element-ref.js.map +1 -0
- package/dist/core/error-details.d.ts +20 -0
- package/dist/core/error-details.d.ts.map +1 -0
- package/dist/core/error-details.js +65 -0
- package/dist/core/error-details.js.map +1 -0
- package/dist/core/exit-code.d.ts.map +1 -1
- package/dist/core/exit-code.js +6 -7
- package/dist/core/exit-code.js.map +1 -1
- package/dist/core/git-identity.d.ts +46 -11
- package/dist/core/git-identity.d.ts.map +1 -1
- package/dist/core/git-identity.js +140 -27
- package/dist/core/git-identity.js.map +1 -1
- package/dist/core/index.d.ts +184 -10
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1045 -185
- package/dist/core/index.js.map +1 -1
- package/dist/core/init.d.ts +45 -5
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +134 -24
- package/dist/core/init.js.map +1 -1
- package/dist/core/loaders.d.ts +170 -14
- package/dist/core/loaders.d.ts.map +1 -1
- package/dist/core/loaders.js +570 -89
- package/dist/core/loaders.js.map +1 -1
- package/dist/core/memory-add-link.d.ts +28 -0
- package/dist/core/memory-add-link.d.ts.map +1 -0
- package/dist/core/memory-add-link.js +67 -0
- package/dist/core/memory-add-link.js.map +1 -0
- package/dist/core/memory-add-type.d.ts +25 -1
- package/dist/core/memory-add-type.d.ts.map +1 -1
- package/dist/core/memory-add-type.js +59 -1
- package/dist/core/memory-add-type.js.map +1 -1
- package/dist/core/memory-amend.d.ts +80 -0
- package/dist/core/memory-amend.d.ts.map +1 -0
- package/dist/core/memory-amend.js +160 -0
- package/dist/core/memory-amend.js.map +1 -0
- package/dist/core/memory-supersede.d.ts +28 -0
- package/dist/core/memory-supersede.d.ts.map +1 -0
- package/dist/core/memory-supersede.js +79 -0
- package/dist/core/memory-supersede.js.map +1 -0
- package/dist/core/memory-transition.d.ts +190 -30
- package/dist/core/memory-transition.d.ts.map +1 -1
- package/dist/core/memory-transition.js +480 -59
- package/dist/core/memory-transition.js.map +1 -1
- package/dist/core/registry.d.ts +82 -10
- package/dist/core/registry.d.ts.map +1 -1
- package/dist/core/registry.js +50 -0
- package/dist/core/registry.js.map +1 -1
- package/dist/core/relevance.d.ts +74 -12
- package/dist/core/relevance.d.ts.map +1 -1
- package/dist/core/relevance.js +45 -27
- package/dist/core/relevance.js.map +1 -1
- package/dist/core/require-reason.d.ts.map +1 -1
- package/dist/core/require-reason.js +6 -5
- package/dist/core/require-reason.js.map +1 -1
- package/dist/core/required-fields.d.ts +28 -0
- package/dist/core/required-fields.d.ts.map +1 -0
- package/dist/core/required-fields.js +60 -0
- package/dist/core/required-fields.js.map +1 -0
- package/dist/core/revision.d.ts +82 -0
- package/dist/core/revision.d.ts.map +1 -0
- package/dist/core/revision.js +144 -0
- package/dist/core/revision.js.map +1 -0
- package/dist/core/types.d.ts +28 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +12 -3
- package/dist/core/types.js.map +1 -1
- package/dist/core/workflow-core-checks.d.ts +34 -0
- package/dist/core/workflow-core-checks.d.ts.map +1 -0
- package/dist/core/workflow-core-checks.js +403 -0
- package/dist/core/workflow-core-checks.js.map +1 -0
- package/dist/core/workflow-create-remove.d.ts +65 -0
- package/dist/core/workflow-create-remove.d.ts.map +1 -0
- package/dist/core/workflow-create-remove.js +277 -0
- package/dist/core/workflow-create-remove.js.map +1 -0
- package/dist/core/workflow-deduction.d.ts +48 -0
- package/dist/core/workflow-deduction.d.ts.map +1 -0
- package/dist/core/workflow-deduction.js +523 -0
- package/dist/core/workflow-deduction.js.map +1 -0
- package/dist/core/workflow-diagnostics.d.ts +83 -0
- package/dist/core/workflow-diagnostics.d.ts.map +1 -0
- package/dist/core/workflow-diagnostics.js +375 -0
- package/dist/core/workflow-diagnostics.js.map +1 -0
- package/dist/core/workflow-exit-state.d.ts +125 -0
- package/dist/core/workflow-exit-state.d.ts.map +1 -0
- package/dist/core/workflow-exit-state.js +243 -0
- package/dist/core/workflow-exit-state.js.map +1 -0
- package/dist/core/workflow-finalize.d.ts +37 -0
- package/dist/core/workflow-finalize.d.ts.map +1 -0
- package/dist/core/workflow-finalize.js +153 -0
- package/dist/core/workflow-finalize.js.map +1 -0
- package/dist/core/workflow-list-show.d.ts +176 -0
- package/dist/core/workflow-list-show.d.ts.map +1 -0
- package/dist/core/workflow-list-show.js +268 -0
- package/dist/core/workflow-list-show.js.map +1 -0
- package/dist/core/workflow-next.d.ts +268 -0
- package/dist/core/workflow-next.d.ts.map +1 -0
- package/dist/core/workflow-next.js +503 -0
- package/dist/core/workflow-next.js.map +1 -0
- package/dist/core/workflow-registry.d.ts +52 -0
- package/dist/core/workflow-registry.d.ts.map +1 -0
- package/dist/core/workflow-registry.js +158 -0
- package/dist/core/workflow-registry.js.map +1 -0
- package/dist/core/workflow-start-end.d.ts +71 -0
- package/dist/core/workflow-start-end.d.ts.map +1 -0
- package/dist/core/workflow-start-end.js +298 -0
- package/dist/core/workflow-start-end.js.map +1 -0
- package/dist/core/workflow-status.d.ts +83 -0
- package/dist/core/workflow-status.d.ts.map +1 -0
- package/dist/core/workflow-status.js +125 -0
- package/dist/core/workflow-status.js.map +1 -0
- package/dist/core/write-guard.d.ts +51 -8
- package/dist/core/write-guard.d.ts.map +1 -1
- package/dist/core/write-guard.js +139 -9
- package/dist/core/write-guard.js.map +1 -1
- package/dist/directives/index.d.ts +3 -2
- package/dist/directives/index.d.ts.map +1 -1
- package/dist/directives/index.js +5 -3
- package/dist/directives/index.js.map +1 -1
- package/dist/directives/schema.d.ts +34 -29
- package/dist/directives/schema.d.ts.map +1 -1
- package/dist/directives/schema.js +35 -29
- package/dist/directives/schema.js.map +1 -1
- package/dist/directives/version.d.ts +28 -0
- package/dist/directives/version.d.ts.map +1 -0
- package/dist/directives/version.js +51 -0
- package/dist/directives/version.js.map +1 -0
- package/dist/dna/edit.d.ts +7 -6
- package/dist/dna/edit.d.ts.map +1 -1
- package/dist/dna/edit.js +96 -41
- package/dist/dna/edit.js.map +1 -1
- package/dist/dna/mutate.js +18 -3
- package/dist/dna/mutate.js.map +1 -1
- package/dist/dna/path.d.ts +2 -2
- package/dist/dna/roles.d.ts +1 -1
- package/dist/dna/schema.d.ts +61 -3
- package/dist/dna/schema.d.ts.map +1 -1
- package/dist/dna/schema.js +121 -6
- package/dist/dna/schema.js.map +1 -1
- package/dist/mcp/dna-resource.d.ts.map +1 -1
- package/dist/mcp/dna-resource.js +4 -4
- package/dist/mcp/dna-resource.js.map +1 -1
- package/dist/mcp/index.d.ts +8 -4
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +13 -2
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/memory-resource.d.ts.map +1 -1
- package/dist/mcp/memory-resource.js +30 -19
- package/dist/mcp/memory-resource.js.map +1 -1
- package/dist/mcp/prompt.d.ts +61 -24
- package/dist/mcp/prompt.d.ts.map +1 -1
- package/dist/mcp/prompt.js +176 -47
- package/dist/mcp/prompt.js.map +1 -1
- package/dist/mcp/read-only.d.ts +39 -0
- package/dist/mcp/read-only.d.ts.map +1 -1
- package/dist/mcp/read-only.js +61 -0
- package/dist/mcp/read-only.js.map +1 -1
- package/dist/mcp/registrar.d.ts +10 -0
- package/dist/mcp/registrar.d.ts.map +1 -1
- package/dist/mcp/registrar.js +48 -12
- package/dist/mcp/registrar.js.map +1 -1
- package/dist/mcp/server.d.ts +21 -14
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +41 -15
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session-resource.d.ts +13 -0
- package/dist/mcp/session-resource.d.ts.map +1 -0
- package/dist/mcp/session-resource.js +65 -0
- package/dist/mcp/session-resource.js.map +1 -0
- package/dist/mcp/workflow-resource.d.ts +18 -0
- package/dist/mcp/workflow-resource.d.ts.map +1 -1
- package/dist/mcp/workflow-resource.js +37 -8
- package/dist/mcp/workflow-resource.js.map +1 -1
- package/dist/memory/add.d.ts +110 -24
- package/dist/memory/add.d.ts.map +1 -1
- package/dist/memory/add.js +251 -64
- package/dist/memory/add.js.map +1 -1
- package/dist/memory/audit.d.ts +152 -39
- package/dist/memory/audit.d.ts.map +1 -1
- package/dist/memory/audit.js +257 -103
- package/dist/memory/audit.js.map +1 -1
- package/dist/memory/commit-message.d.ts +60 -38
- package/dist/memory/commit-message.d.ts.map +1 -1
- package/dist/memory/commit-message.js +167 -21
- package/dist/memory/commit-message.js.map +1 -1
- package/dist/memory/entry.d.ts.map +1 -1
- package/dist/memory/entry.js +1 -2
- package/dist/memory/entry.js.map +1 -1
- package/dist/memory/frontmatter-edit.d.ts +16 -4
- package/dist/memory/frontmatter-edit.d.ts.map +1 -1
- package/dist/memory/frontmatter-edit.js +13 -1
- package/dist/memory/frontmatter-edit.js.map +1 -1
- package/dist/memory/git-log.d.ts +18 -6
- package/dist/memory/git-log.d.ts.map +1 -1
- package/dist/memory/git-log.js +40 -13
- package/dist/memory/git-log.js.map +1 -1
- package/dist/memory/history.d.ts +73 -12
- package/dist/memory/history.d.ts.map +1 -1
- package/dist/memory/history.js +128 -44
- package/dist/memory/history.js.map +1 -1
- package/dist/memory/index.d.ts +13 -11
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +34 -3
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/query.d.ts +161 -19
- package/dist/memory/query.d.ts.map +1 -1
- package/dist/memory/query.js +435 -55
- package/dist/memory/query.js.map +1 -1
- package/dist/memory/schema.d.ts +52 -3
- package/dist/memory/schema.d.ts.map +1 -1
- package/dist/memory/schema.js +132 -8
- package/dist/memory/schema.js.map +1 -1
- package/dist/memory/state-machine.d.ts +65 -10
- package/dist/memory/state-machine.d.ts.map +1 -1
- package/dist/memory/state-machine.js +134 -46
- package/dist/memory/state-machine.js.map +1 -1
- package/dist/memory/submit.d.ts +52 -3
- package/dist/memory/submit.d.ts.map +1 -1
- package/dist/memory/submit.js +118 -11
- package/dist/memory/submit.js.map +1 -1
- package/dist/storage/build-stamp.d.ts +18 -0
- package/dist/storage/build-stamp.d.ts.map +1 -0
- package/dist/storage/build-stamp.js +68 -0
- package/dist/storage/build-stamp.js.map +1 -0
- package/dist/storage/builtin-adapters.d.ts +32 -0
- package/dist/storage/builtin-adapters.d.ts.map +1 -0
- package/dist/storage/builtin-adapters.js +100 -0
- package/dist/storage/builtin-adapters.js.map +1 -0
- package/dist/storage/builtin-directives.d.ts +0 -29
- package/dist/storage/builtin-directives.d.ts.map +1 -1
- package/dist/storage/builtin-directives.js +9 -4
- package/dist/storage/builtin-directives.js.map +1 -1
- package/dist/storage/commit.d.ts +310 -3
- package/dist/storage/commit.d.ts.map +1 -1
- package/dist/storage/commit.js +807 -33
- package/dist/storage/commit.js.map +1 -1
- package/dist/storage/document.d.ts +6 -0
- package/dist/storage/document.d.ts.map +1 -1
- package/dist/storage/document.js +10 -1
- package/dist/storage/document.js.map +1 -1
- package/dist/storage/dry-run.d.ts +65 -0
- package/dist/storage/dry-run.d.ts.map +1 -0
- package/dist/storage/dry-run.js +150 -0
- package/dist/storage/dry-run.js.map +1 -0
- package/dist/storage/errors.d.ts +26 -0
- package/dist/storage/errors.d.ts.map +1 -1
- package/dist/storage/errors.js +27 -1
- package/dist/storage/errors.js.map +1 -1
- package/dist/storage/frontmatter.d.ts +1 -1
- package/dist/storage/frontmatter.js +1 -1
- package/dist/storage/git-read.d.ts +64 -0
- package/dist/storage/git-read.d.ts.map +1 -0
- package/dist/storage/git-read.js +107 -0
- package/dist/storage/git-read.js.map +1 -0
- package/dist/storage/index.d.ts +13 -5
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +39 -2
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/layout.d.ts +2 -2
- package/dist/storage/layout.d.ts.map +1 -1
- package/dist/storage/layout.js +2 -7
- package/dist/storage/layout.js.map +1 -1
- package/dist/storage/memory-path.d.ts +18 -5
- package/dist/storage/memory-path.d.ts.map +1 -1
- package/dist/storage/memory-path.js +41 -5
- package/dist/storage/memory-path.js.map +1 -1
- package/dist/storage/snapshot.js +1 -1
- package/dist/storage/templates.d.ts +33 -6
- package/dist/storage/templates.d.ts.map +1 -1
- package/dist/storage/templates.js +170 -16
- package/dist/storage/templates.js.map +1 -1
- package/dist/validation/config-version.d.ts +19 -0
- package/dist/validation/config-version.d.ts.map +1 -0
- package/dist/validation/config-version.js +53 -0
- package/dist/validation/config-version.js.map +1 -0
- package/dist/validation/diagnostic.d.ts +40 -0
- package/dist/validation/diagnostic.d.ts.map +1 -0
- package/dist/validation/diagnostic.js +41 -0
- package/dist/validation/diagnostic.js.map +1 -0
- package/dist/validation/format.d.ts +74 -0
- package/dist/validation/format.d.ts.map +1 -0
- package/dist/validation/format.js +104 -0
- package/dist/validation/format.js.map +1 -0
- package/dist/validation/id.d.ts +14 -0
- package/dist/validation/id.d.ts.map +1 -1
- package/dist/validation/id.js +35 -11
- package/dist/validation/id.js.map +1 -1
- package/dist/validation/identity.d.ts +40 -0
- package/dist/validation/identity.d.ts.map +1 -0
- package/dist/validation/identity.js +78 -0
- package/dist/validation/identity.js.map +1 -0
- package/dist/validation/index.d.ts +9 -3
- package/dist/validation/index.d.ts.map +1 -1
- package/dist/validation/index.js +30 -1
- package/dist/validation/index.js.map +1 -1
- package/dist/validation/secret-scan.d.ts +3 -2
- package/dist/validation/secret-scan.d.ts.map +1 -1
- package/dist/validation/secret-scan.js +32 -11
- package/dist/validation/secret-scan.js.map +1 -1
- package/dist/validation/warning.d.ts +30 -16
- package/dist/validation/warning.d.ts.map +1 -1
- package/dist/validation/warning.js +74 -7
- package/dist/validation/warning.js.map +1 -1
- package/dist/workflow/bindings.d.ts +152 -0
- package/dist/workflow/bindings.d.ts.map +1 -0
- package/dist/workflow/bindings.js +249 -0
- package/dist/workflow/bindings.js.map +1 -0
- package/dist/workflow/create.d.ts +13 -0
- package/dist/workflow/create.d.ts.map +1 -0
- package/dist/workflow/create.js +41 -0
- package/dist/workflow/create.js.map +1 -0
- package/dist/workflow/deduce.d.ts +400 -0
- package/dist/workflow/deduce.d.ts.map +1 -0
- package/dist/workflow/deduce.js +1109 -0
- package/dist/workflow/deduce.js.map +1 -0
- package/dist/workflow/manifest-edit.d.ts +19 -0
- package/dist/workflow/manifest-edit.d.ts.map +1 -0
- package/dist/workflow/manifest-edit.js +124 -0
- package/dist/workflow/manifest-edit.js.map +1 -0
- package/dist/workflow/schema.d.ts +158 -19
- package/dist/workflow/schema.d.ts.map +1 -1
- package/dist/workflow/schema.js +163 -15
- package/dist/workflow/schema.js.map +1 -1
- package/package.json +18 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-transition.js","sourceRoot":"","sources":["../../src/core/memory-transition.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory-transition.js","sourceRoot":"","sources":["../../src/core/memory-transition.ts"],"names":[],"mappings":"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"}
|
package/dist/core/registry.d.ts
CHANGED
|
@@ -65,10 +65,13 @@ export interface CoreFlag {
|
|
|
65
65
|
* a positional identifies the target, an option carries an attribute), declared so `--help` can name
|
|
66
66
|
* it (`<id>`, `<path>`, `[section]`) instead of describing a generic list (task-120, `bug-128`).
|
|
67
67
|
*
|
|
68
|
-
* `required` is
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
68
|
+
* `required` is enforced by the CLI registrar (`src/cli/registrar.ts`, task-179, `bug-168`): an
|
|
69
|
+
* invocation that omits it is refused at exit `2` with {@link missingOperandReason}'s one wording and the
|
|
70
|
+
* command's {@link commandUsage} as the hint, before the project root is resolved. The operation's own
|
|
71
|
+
* `CoreFn` refuses it too, in the same words, for a caller that reaches core without the registrar.
|
|
72
|
+
* `src/cli/program.ts` only renders it — Commander is never told to enforce it, so the refusal keeps
|
|
73
|
+
* WingFoil's message. `test/cli/operand-error-shape.integration.test.ts` drives every command that
|
|
74
|
+
* declares a required positional without it.
|
|
72
75
|
*/
|
|
73
76
|
export interface CorePositional {
|
|
74
77
|
/** The name `--help` shows, in the placeholder form the CLI reference uses — `id`, `path`, `name`, `section`. */
|
|
@@ -77,14 +80,61 @@ export interface CorePositional {
|
|
|
77
80
|
readonly required?: boolean;
|
|
78
81
|
/** What `--help` says the argument is. */
|
|
79
82
|
readonly description: string;
|
|
83
|
+
/**
|
|
84
|
+
* A clause the surplus-operand refusal adds after what the command takes, naming what the extra
|
|
85
|
+
* operand should have been (task-179, `bug-180`): the DNA path verbs' `the value travels in --value`,
|
|
86
|
+
* the migration hint of `dl-082`'s move of the value out of a second positional. The registrar refuses
|
|
87
|
+
* a surplus operand for every command alike, before the project root is resolved
|
|
88
|
+
* (`src/cli/registrar.ts`), and appends this through {@link extraOperandsReason}. Absent means none.
|
|
89
|
+
*/
|
|
90
|
+
readonly surplusHint?: string;
|
|
80
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* The usage error for an invocation carrying more operands than its command declares
|
|
94
|
+
* (`dl-082-cli-parameter-shape`: at most one positional per command; task-129, `bug-171`, `bug-131`):
|
|
95
|
+
* it names the command, what it takes, and how many operands it got —
|
|
96
|
+
* `wingfoil memory approve takes one positional <id> (got 2 positionals)`,
|
|
97
|
+
* `wingfoil workflow list takes no positional (got 1 positional)`. `hint`, when given, follows what the
|
|
98
|
+
* command takes: `dna set`'s migration message is this sentence with `the value travels in --value`
|
|
99
|
+
* (task-093), so the two refusals share one wording. Deterministic — a pure function of its arguments
|
|
100
|
+
* (REQ-SYS-07).
|
|
101
|
+
*
|
|
102
|
+
* @param command - the command as typed after `wingfoil`: `memory approve`, or a flat noun (`paths`).
|
|
103
|
+
* @param positionalName - the declared positional's name, or `undefined` when the command declares none.
|
|
104
|
+
* @param given - how many operands the invocation carried.
|
|
105
|
+
* @param hint - an optional clause naming what the surplus operand should have been.
|
|
106
|
+
*/
|
|
107
|
+
export declare function extraOperandsReason(command: string, positionalName: string | undefined, given: number, hint?: string): string;
|
|
108
|
+
/**
|
|
109
|
+
* The usage error for an invocation that omits a required operand (`spec-008-cli-grammar` §4; task-179,
|
|
110
|
+
* `bug-168`): `missing required argument: <id>` — the positional's placeholder, as `--help` writes it,
|
|
111
|
+
* beside `missing required argument: --<name>` for an option. One wording for every command; the
|
|
112
|
+
* registrar adds the command's usage as the `hint:` line ({@link commandUsage}). Deterministic.
|
|
113
|
+
*
|
|
114
|
+
* @param positionalName - the declared positional's name (`id`, `path`, `name`).
|
|
115
|
+
*/
|
|
116
|
+
export declare function missingOperandReason(positionalName: string): string;
|
|
117
|
+
/**
|
|
118
|
+
* The usage line of a command, as the missing-operand refusal's `hint:` shows it (task-179, `bug-168`):
|
|
119
|
+
* `wingfoil <command>`, the declared positional (`<id>` when required, `[section]` when not), then every
|
|
120
|
+
* REQUIRED option with its placeholder — `wingfoil memory approve <id> --reason <text>`. Optional
|
|
121
|
+
* options are left to `--help`. A pure function of the declaration (REQ-SYS-07).
|
|
122
|
+
*
|
|
123
|
+
* @param command - the command as typed after `wingfoil`: `memory approve`, or a flat noun (`paths`).
|
|
124
|
+
* @param operation - the operation whose declaration the line is read from.
|
|
125
|
+
*/
|
|
126
|
+
export declare function commandUsage(command: string, operation: Pick<CoreOperation, 'positional' | 'options'>): string;
|
|
81
127
|
/**
|
|
82
128
|
* One domain operation both surfaces derive from (spec-006 §2): its camelCase `name`, whether it
|
|
83
129
|
* `mutates` (Tool vs Resource / write vs read), its `fn`, and its optional declarative CLI `flags`
|
|
84
130
|
* and value-bearing `options`. The single source of truth `src/cli` and `src/mcp` register from.
|
|
85
131
|
*/
|
|
86
132
|
export interface CoreOperation<P = unknown, R = unknown> {
|
|
87
|
-
/**
|
|
133
|
+
/**
|
|
134
|
+
* camelCase, `{module}{Verb}` (spec-006 §5) — e.g. `memoryApprove`, `dnaShow` — or, for a self-named
|
|
135
|
+
* flat operation, exactly the module's name (`paths`; `dl-046` C), from which {@link deriveVerb}
|
|
136
|
+
* derives no verb, so the command is the bare `wingfoil <module>`.
|
|
137
|
+
*/
|
|
88
138
|
readonly name: string;
|
|
89
139
|
/** `true` => MCP Tool only; `false` => MCP Resource only. CLI exposes both regardless (§2). */
|
|
90
140
|
readonly mutates: boolean;
|
|
@@ -118,6 +168,28 @@ export interface CoreOperation<P = unknown, R = unknown> {
|
|
|
118
168
|
readonly positional?: CorePositional;
|
|
119
169
|
/** One complete invocation `--help` shows under `Example:` (`spec-008-cli-grammar` §8), `wingfoil …` included. */
|
|
120
170
|
readonly example?: string;
|
|
171
|
+
/**
|
|
172
|
+
* The command's own `--format console` rendering of a successful `value`, for an operation whose
|
|
173
|
+
* spec defines one (task-220: `agent show`'s `key: value` lines, `spec-016` §6). Absent, `console`
|
|
174
|
+
* prints the indented JSON `spec-008` §2 declares for every other command until P5.1.4. `json` and
|
|
175
|
+
* `yaml` never use it, and the MCP surface never calls it. Pure: the same value renders the same text.
|
|
176
|
+
*/
|
|
177
|
+
readonly renderConsole?: (value: R) => string;
|
|
178
|
+
/**
|
|
179
|
+
* For a command that hands its stdout to a child process (`agent execute`, `spec-016` §3.4, task-228):
|
|
180
|
+
* the report its success prints **on stderr**, with nothing on stdout (`spec-005` §2). `document` is
|
|
181
|
+
* the `json`/`yaml` message (`{ "run": <record> }`), `console` the line `console` prints. `undefined`
|
|
182
|
+
* for a value that is an ordinary stdout payload (the `--dry-run` launch plan). The MCP surface never
|
|
183
|
+
* calls it.
|
|
184
|
+
*/
|
|
185
|
+
readonly renderToStderr?: (value: R) => StderrReport | undefined;
|
|
186
|
+
}
|
|
187
|
+
/** A success report written on stderr instead of a stdout payload ({@link CoreOperation.renderToStderr}). */
|
|
188
|
+
export interface StderrReport {
|
|
189
|
+
/** The `json`/`yaml` message: one document. */
|
|
190
|
+
readonly document: Readonly<Record<string, unknown>>;
|
|
191
|
+
/** The `console` line, without its newline. */
|
|
192
|
+
readonly console: string;
|
|
121
193
|
}
|
|
122
194
|
/** One pillar's operation group (spec-006 §2) — a `name` (the `wingfoil <noun>` segment) and its operations. */
|
|
123
195
|
export interface CoreModule {
|
|
@@ -190,13 +262,13 @@ export interface ParamsContext {
|
|
|
190
262
|
* by the first operation taking two data inputs (`dna set <key> <value>` -> `['<key>', '<value>']`).
|
|
191
263
|
* Since `dl-082-cli-parameter-shape` (task-093) every command reads at most ONE positional — the
|
|
192
264
|
* identity of its target — and `dna set`'s value travels in `--value`, so the list is now a
|
|
193
|
-
* uniform seam rather than one shaped by a single two-input verb
|
|
194
|
-
* operation
|
|
265
|
+
* uniform seam rather than one shaped by a single two-input verb. The registrar refuses a surplus
|
|
266
|
+
* for every operation before `buildParams` is called (task-129; the DNA path verbs too since
|
|
267
|
+
* task-179, `bug-180`), so the list it sees never exceeds the declared count.
|
|
195
268
|
* {@link positional} is exactly `positionals?.[0]` and is kept unchanged for the single-positional
|
|
196
269
|
* read ops that predate this (`dna show [section]`, `paths [category]`), so their `buildParams` and
|
|
197
|
-
* `CoreFn`s are untouched;
|
|
198
|
-
*
|
|
199
|
-
* instead. Same additive contract as {@link positional}/{@link flags}: the MCP surface never
|
|
270
|
+
* `CoreFn`s are untouched; the four DNA path verbs (`dnaSet` and the three mutation verbs) read
|
|
271
|
+
* `positionals` instead. Same additive contract as {@link positional}/{@link flags}: the MCP surface never
|
|
200
272
|
* populates it (a zero-argument Tool/Resource template carries no positional — see {@link positional}),
|
|
201
273
|
* so an MCP `buildParams` simply never sets it.
|
|
202
274
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;;OASG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/core/registry.js
CHANGED
|
@@ -1,8 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extraOperandsReason = extraOperandsReason;
|
|
4
|
+
exports.missingOperandReason = missingOperandReason;
|
|
5
|
+
exports.commandUsage = commandUsage;
|
|
3
6
|
exports.enumerateOperations = enumerateOperations;
|
|
4
7
|
exports.deriveVerb = deriveVerb;
|
|
5
8
|
exports.computeParityDiff = computeParityDiff;
|
|
9
|
+
/**
|
|
10
|
+
* The usage error for an invocation carrying more operands than its command declares
|
|
11
|
+
* (`dl-082-cli-parameter-shape`: at most one positional per command; task-129, `bug-171`, `bug-131`):
|
|
12
|
+
* it names the command, what it takes, and how many operands it got —
|
|
13
|
+
* `wingfoil memory approve takes one positional <id> (got 2 positionals)`,
|
|
14
|
+
* `wingfoil workflow list takes no positional (got 1 positional)`. `hint`, when given, follows what the
|
|
15
|
+
* command takes: `dna set`'s migration message is this sentence with `the value travels in --value`
|
|
16
|
+
* (task-093), so the two refusals share one wording. Deterministic — a pure function of its arguments
|
|
17
|
+
* (REQ-SYS-07).
|
|
18
|
+
*
|
|
19
|
+
* @param command - the command as typed after `wingfoil`: `memory approve`, or a flat noun (`paths`).
|
|
20
|
+
* @param positionalName - the declared positional's name, or `undefined` when the command declares none.
|
|
21
|
+
* @param given - how many operands the invocation carried.
|
|
22
|
+
* @param hint - an optional clause naming what the surplus operand should have been.
|
|
23
|
+
*/
|
|
24
|
+
function extraOperandsReason(command, positionalName, given, hint) {
|
|
25
|
+
const takes = positionalName === undefined ? 'takes no positional' : `takes one positional <${positionalName}>`;
|
|
26
|
+
return `wingfoil ${command} ${takes}${hint === undefined ? '' : `; ${hint}`} (got ${given} positional${given === 1 ? '' : 's'})`;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The usage error for an invocation that omits a required operand (`spec-008-cli-grammar` §4; task-179,
|
|
30
|
+
* `bug-168`): `missing required argument: <id>` — the positional's placeholder, as `--help` writes it,
|
|
31
|
+
* beside `missing required argument: --<name>` for an option. One wording for every command; the
|
|
32
|
+
* registrar adds the command's usage as the `hint:` line ({@link commandUsage}). Deterministic.
|
|
33
|
+
*
|
|
34
|
+
* @param positionalName - the declared positional's name (`id`, `path`, `name`).
|
|
35
|
+
*/
|
|
36
|
+
function missingOperandReason(positionalName) {
|
|
37
|
+
return `missing required argument: <${positionalName}>`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The usage line of a command, as the missing-operand refusal's `hint:` shows it (task-179, `bug-168`):
|
|
41
|
+
* `wingfoil <command>`, the declared positional (`<id>` when required, `[section]` when not), then every
|
|
42
|
+
* REQUIRED option with its placeholder — `wingfoil memory approve <id> --reason <text>`. Optional
|
|
43
|
+
* options are left to `--help`. A pure function of the declaration (REQ-SYS-07).
|
|
44
|
+
*
|
|
45
|
+
* @param command - the command as typed after `wingfoil`: `memory approve`, or a flat noun (`paths`).
|
|
46
|
+
* @param operation - the operation whose declaration the line is read from.
|
|
47
|
+
*/
|
|
48
|
+
function commandUsage(command, operation) {
|
|
49
|
+
const positional = operation.positional;
|
|
50
|
+
const operand = positional === undefined ? [] : [positional.required === true ? `<${positional.name}>` : `[${positional.name}]`];
|
|
51
|
+
const options = (operation.options ?? [])
|
|
52
|
+
.filter((option) => option.required === true)
|
|
53
|
+
.map((option) => `--${option.name} <${option.valueName ?? 'value'}>`);
|
|
54
|
+
return ['wingfoil', command, ...operand, ...options].join(' ');
|
|
55
|
+
}
|
|
6
56
|
/**
|
|
7
57
|
* Flatten `modules` into every declared operation, sorted deterministically by `(module.name,
|
|
8
58
|
* operation.name)` (REQ-SYS-07 — no unordered `Object.values`/iteration in a context-building
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/core/relevance.d.ts
CHANGED
|
@@ -1,4 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `relevance-filter` (task-035-bounded-context-relevance, REQ-PERF-05) —
|
|
3
|
+
* spec-012-context-loader-relevance-filtering §6's deterministic Memory-document selection unit:
|
|
4
|
+
* rank and bound the set of Memory documents relevant to an active element (usually a `task`), so an
|
|
5
|
+
* assembled agent context stays "curated, not full dump" (Product Brief) and satisfies REQ-PERF-05's
|
|
6
|
+
* Fit Criterion verbatim — "given 1,000 Memory documents of which K are relevant to the task, the
|
|
7
|
+
* assembled context contains exactly the K relevant (non-deprecated) documents and 0 others."
|
|
8
|
+
*
|
|
9
|
+
* This module implements ONLY spec-012 §6 (`relevance-filter`), one of the four cooperating units
|
|
10
|
+
* spec-012 defines (`dna-loader`, `directive-loader`, `relevance-filter`, `context-builder`) — the
|
|
11
|
+
* other three, and the canonical serialized envelope (§7), live in `./context.ts`
|
|
12
|
+
* (`assembleExecutionContext`, task-176), which calls this unit at its `stateRef`. For the
|
|
13
|
+
* document scan itself it wraps, not reimplements, `src/memory/query.ts`'s scan primitives
|
|
14
|
+
* (task-008) — no second directory walk or frontmatter parser — and is placed in `src/core` per
|
|
15
|
+
* spec-012 §1 ("folded into the `core` module"). It is re-exported from `src/core`'s barrel, so
|
|
16
|
+
* `src/core` is the import surface for every consumer.
|
|
17
|
+
*
|
|
18
|
+
* **Exclusion set (`dl-028-archived-states-excluded-from-context`, `ready`).** Candidates are dropped
|
|
19
|
+
* when their `status` is archived — `{deprecated, superseded}`, via `src/memory/state-machine.ts`'s
|
|
20
|
+
* shared {@link isArchivedStatus} (the one predicate the default-search path, REQ-STATE-06, consumes
|
|
21
|
+
* too) — **or** `draft`. That `draft` clause is context-only and deliberately NOT mirrored into
|
|
22
|
+
* `memory search`: spec-012 §6 admits only "stable, decided and still-current content" into an
|
|
23
|
+
* execution context, whereas REQ-STATE-06 scopes default-search exclusion to archived content so a
|
|
24
|
+
* draft under active work stays findable. Two different sets, on purpose — see
|
|
25
|
+
* {@link DRAFT_STATUS}. dl-028 also dropped spec-012 §6's former `rejected` entry, a status
|
|
26
|
+
* `spec-001-memory-yaml-schema` removed from every type's machine.
|
|
27
|
+
*
|
|
28
|
+
* Determinism (REQ-SYS-07): no wall-clock, no randomness, no unordered map/set iteration in any
|
|
29
|
+
* output-affecting path. The ranking itself, {@link selectRelevantMemoryDocuments}, is a pure function
|
|
30
|
+
* of `(documents, element, limits)` and reads nothing. Where the documents come from is the caller's
|
|
31
|
+
* choice: the execution-context builder (`./context.ts`, task-176) feeds it the snapshot
|
|
32
|
+
* `loadMemoryDocumentsAtRev` reads at `spec-012` §2's `stateRef`, so a context is pinned to one commit;
|
|
33
|
+
* {@link filterRelevantMemoryDocuments} feeds it the live working tree under `root`, whose content is
|
|
34
|
+
* then part of its input. See {@link selectRelevantMemoryDocuments} for the exact ordering/bounding
|
|
35
|
+
* contract.
|
|
36
|
+
*/
|
|
37
|
+
import { type MemoryDocumentSummary } from '../memory/query';
|
|
1
38
|
import type { MemoryYaml } from '../memory/schema';
|
|
39
|
+
import type { Diagnostic } from '../validation';
|
|
2
40
|
/**
|
|
3
41
|
* Caps that keep an assembled context "bounded, not a full dump" (spec-012 §6) — the defaults match
|
|
4
42
|
* spec-012's own defaults verbatim: `maxDocs: 40`, `maxBytes: 262144` (256 KiB).
|
|
@@ -56,31 +94,55 @@ export interface RelevantMemoryResult {
|
|
|
56
94
|
readonly note?: string;
|
|
57
95
|
}
|
|
58
96
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
97
|
+
* {@link filterRelevantMemoryDocuments}'s result: the ranking of {@link RelevantMemoryResult}, plus the
|
|
98
|
+
* files the working-tree read left out (task-253, `bug-230`, `spec-017` §1.4). Each entry is a
|
|
99
|
+
* `W_MEMORY_UNREADABLE` diagnostic naming a repository-relative path — a document whose frontmatter
|
|
100
|
+
* does not parse, or a symbolic link — in path order; empty when every document was read. The
|
|
101
|
+
* diagnostics are about the read, not part of the ranking, which is why
|
|
102
|
+
* {@link selectRelevantMemoryDocuments}, reading nothing, returns none.
|
|
103
|
+
*/
|
|
104
|
+
export interface WorkingTreeRelevantMemoryResult extends RelevantMemoryResult {
|
|
105
|
+
readonly diagnostics: readonly Diagnostic[];
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Rank and bound the Memory documents relevant to `element` (spec-012 §6, REQ-PERF-05), scanning the
|
|
109
|
+
* **working tree** under `root`: every document `memoryYaml` declares, in sorted path order
|
|
110
|
+
* (`loadMemoryDocuments`, task-008), handed to {@link selectRelevantMemoryDocuments}. An execution
|
|
111
|
+
* context does not use this reader: it ranks the snapshot read at its `stateRef` (`./context.ts`).
|
|
112
|
+
*
|
|
113
|
+
* The read is tolerant like every other Memory scan (task-171; task-253, `bug-230`; `spec-017` §1.4):
|
|
114
|
+
* a document whose frontmatter does not parse, and a symbolic link, are left out of the ranking and
|
|
115
|
+
* reported in the result's `diagnostics` as `W_MEMORY_UNREADABLE`, so one malformed document never
|
|
116
|
+
* fails the filter for every element.
|
|
117
|
+
*/
|
|
118
|
+
export declare function filterRelevantMemoryDocuments(root: string, memoryYaml: MemoryYaml, element: RelevanceElementRef, limits?: ContextLimits): WorkingTreeRelevantMemoryResult;
|
|
119
|
+
/**
|
|
120
|
+
* Rank and bound `documents` by their relevance to `element` (spec-012 §6, REQ-PERF-05). A pure
|
|
121
|
+
* function of its arguments: it reads nothing, so the caller decides which state is ranked — the
|
|
122
|
+
* working tree ({@link filterRelevantMemoryDocuments}) or one commit (`./context.ts`, `stateRef`).
|
|
123
|
+
* Deterministic end to end (REQ-SYS-07):
|
|
61
124
|
*
|
|
62
|
-
* 1. **
|
|
63
|
-
* already-sorted order, task-008) — no second directory walk.
|
|
64
|
-
* 2. **Exclude** the element's own document (never relevant to itself) and any document
|
|
125
|
+
* 1. **Exclude** the element's own document (never relevant to itself) and any document
|
|
65
126
|
* {@link isExcludedFromContext} bars — `draft` plus the shared archived set `{deprecated,
|
|
66
127
|
* superseded}` (`dl-028`; the archived half is the same predicate REQ-STATE-06 applies to default
|
|
67
128
|
* `memory search`, the `draft` half is context-only).
|
|
68
|
-
*
|
|
129
|
+
* 2. **Score** each remaining document: `1000*T1 + 100*T2 + 10*T3 + overlapCount(T4)` — T1 explicit
|
|
69
130
|
* link, T2 same release scope, T3 shared traceability key, T4 keyword/tag overlap count
|
|
70
131
|
* (spec-012 §6's exact formula). A document scoring `0` (no tier hit at all) is **not relevant**
|
|
71
132
|
* and is dropped — this is the relevance threshold P5.3.3-relevance-filtering.feature's "Edge - no
|
|
72
133
|
* documents pass the relevance threshold" scenario exercises.
|
|
73
|
-
*
|
|
74
|
-
* no `id`) — a total, deterministic tie-break (spec-012 §6/REQ-SYS-07).
|
|
75
|
-
*
|
|
134
|
+
* 3. **Order**: score DESC, then `type` ASC, then `id` ASC (falling back to `path` when a document has
|
|
135
|
+
* no `id`) — a total, deterministic tie-break (spec-012 §6/REQ-SYS-07). The input order therefore
|
|
136
|
+
* never reaches the output.
|
|
137
|
+
* 4. **Bound**: walk in that order, including documents until either `limits.maxDocs` or
|
|
76
138
|
* `limits.maxBytes` (summed UTF-8 body bytes) would be exceeded, then **stop** — never skip a
|
|
77
139
|
* lower-ranked document to fit under a cap while a higher-ranked one was excluded, and never
|
|
78
140
|
* partially include a document (spec-012 §6's "deterministic truncation").
|
|
79
141
|
*
|
|
80
|
-
* Returns {@link NO_RELEVANT_MEMORY_NOTE} in `note` only when **step
|
|
142
|
+
* Returns {@link NO_RELEVANT_MEMORY_NOTE} in `note` only when **step 2 left nothing** — i.e. no
|
|
81
143
|
* document passed the relevance threshold at all (P5.3.3's edge-case scenario, verbatim wording).
|
|
82
|
-
* When documents scored as relevant but step
|
|
144
|
+
* When documents scored as relevant but step 4's caps admitted none of them, `documents` is empty and
|
|
83
145
|
* `note` is omitted: relevant Memory *was* found, so the note would assert something false.
|
|
84
146
|
*/
|
|
85
|
-
export declare function
|
|
147
|
+
export declare function selectRelevantMemoryDocuments(documents: readonly MemoryDocumentSummary[], element: RelevanceElementRef, limits: ContextLimits): RelevantMemoryResult;
|
|
86
148
|
//# sourceMappingURL=relevance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relevance.d.ts","sourceRoot":"","sources":["../../src/core/relevance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relevance.d.ts","sourceRoot":"","sources":["../../src/core/relevance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,EAAE,aAAiD,CAAC;AAEvF;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;qGACiG;IACjG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAED;qGACqG;AACrG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sGAAsG;IACtG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;2EAC2E;AAC3E,eAAO,MAAM,uBAAuB,sCAAsC,CAAC;AAE3E;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACtD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,+BAAgC,SAAQ,oBAAoB;IAC3E,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;CAC7C;AAoID;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,mBAAmB,EAC5B,MAAM,GAAE,aAAsC,GAC7C,+BAA+B,CAIjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,SAAS,qBAAqB,EAAE,EAC3C,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,aAAa,GACpB,oBAAoB,CAqDtB"}
|
package/dist/core/relevance.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NO_RELEVANT_MEMORY_NOTE = exports.DEFAULT_CONTEXT_LIMITS = void 0;
|
|
4
4
|
exports.filterRelevantMemoryDocuments = filterRelevantMemoryDocuments;
|
|
5
|
+
exports.selectRelevantMemoryDocuments = selectRelevantMemoryDocuments;
|
|
5
6
|
/**
|
|
6
7
|
* `relevance-filter` (task-035-bounded-context-relevance, REQ-PERF-05) —
|
|
7
8
|
* spec-012-context-loader-relevance-filtering §6's deterministic Memory-document selection unit:
|
|
@@ -12,8 +13,8 @@ exports.filterRelevantMemoryDocuments = filterRelevantMemoryDocuments;
|
|
|
12
13
|
*
|
|
13
14
|
* This module implements ONLY spec-012 §6 (`relevance-filter`), one of the four cooperating units
|
|
14
15
|
* spec-012 defines (`dna-loader`, `directive-loader`, `relevance-filter`, `context-builder`) — the
|
|
15
|
-
* other three, and the canonical serialized envelope (§7),
|
|
16
|
-
* task-
|
|
16
|
+
* other three, and the canonical serialized envelope (§7), live in `./context.ts`
|
|
17
|
+
* (`assembleExecutionContext`, task-176), which calls this unit at its `stateRef`. For the
|
|
17
18
|
* document scan itself it wraps, not reimplements, `src/memory/query.ts`'s scan primitives
|
|
18
19
|
* (task-008) — no second directory walk or frontmatter parser — and is placed in `src/core` per
|
|
19
20
|
* spec-012 §1 ("folded into the `core` module"). It is re-exported from `src/core`'s barrel, so
|
|
@@ -30,12 +31,13 @@ exports.filterRelevantMemoryDocuments = filterRelevantMemoryDocuments;
|
|
|
30
31
|
* `spec-001-memory-yaml-schema` removed from every type's machine.
|
|
31
32
|
*
|
|
32
33
|
* Determinism (REQ-SYS-07): no wall-clock, no randomness, no unordered map/set iteration in any
|
|
33
|
-
* output-affecting path.
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* {@link
|
|
34
|
+
* output-affecting path. The ranking itself, {@link selectRelevantMemoryDocuments}, is a pure function
|
|
35
|
+
* of `(documents, element, limits)` and reads nothing. Where the documents come from is the caller's
|
|
36
|
+
* choice: the execution-context builder (`./context.ts`, task-176) feeds it the snapshot
|
|
37
|
+
* `loadMemoryDocumentsAtRev` reads at `spec-012` §2's `stateRef`, so a context is pinned to one commit;
|
|
38
|
+
* {@link filterRelevantMemoryDocuments} feeds it the live working tree under `root`, whose content is
|
|
39
|
+
* then part of its input. See {@link selectRelevantMemoryDocuments} for the exact ordering/bounding
|
|
40
|
+
* contract.
|
|
39
41
|
*/
|
|
40
42
|
const query_1 = require("../memory/query");
|
|
41
43
|
const state_machine_1 = require("../memory/state-machine");
|
|
@@ -176,40 +178,56 @@ function isSameReleaseScope(elementRelease, documentPath, documentFrontmatter) {
|
|
|
176
178
|
return documentPath.includes(`/${elementRelease}/`) || asString(documentFrontmatter.release) === elementRelease;
|
|
177
179
|
}
|
|
178
180
|
/**
|
|
179
|
-
* Rank and bound the Memory documents relevant to `element` (spec-012 §6, REQ-PERF-05)
|
|
180
|
-
*
|
|
181
|
+
* Rank and bound the Memory documents relevant to `element` (spec-012 §6, REQ-PERF-05), scanning the
|
|
182
|
+
* **working tree** under `root`: every document `memoryYaml` declares, in sorted path order
|
|
183
|
+
* (`loadMemoryDocuments`, task-008), handed to {@link selectRelevantMemoryDocuments}. An execution
|
|
184
|
+
* context does not use this reader: it ranks the snapshot read at its `stateRef` (`./context.ts`).
|
|
181
185
|
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
186
|
+
* The read is tolerant like every other Memory scan (task-171; task-253, `bug-230`; `spec-017` §1.4):
|
|
187
|
+
* a document whose frontmatter does not parse, and a symbolic link, are left out of the ranking and
|
|
188
|
+
* reported in the result's `diagnostics` as `W_MEMORY_UNREADABLE`, so one malformed document never
|
|
189
|
+
* fails the filter for every element.
|
|
190
|
+
*/
|
|
191
|
+
function filterRelevantMemoryDocuments(root, memoryYaml, element, limits = exports.DEFAULT_CONTEXT_LIMITS) {
|
|
192
|
+
const diagnostics = [];
|
|
193
|
+
const documents = (0, query_1.loadMemoryDocuments)(root, memoryYaml, { onDiagnostic: (diagnostic) => diagnostics.push(diagnostic) });
|
|
194
|
+
return { ...selectRelevantMemoryDocuments(documents, element, limits), diagnostics };
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Rank and bound `documents` by their relevance to `element` (spec-012 §6, REQ-PERF-05). A pure
|
|
198
|
+
* function of its arguments: it reads nothing, so the caller decides which state is ranked — the
|
|
199
|
+
* working tree ({@link filterRelevantMemoryDocuments}) or one commit (`./context.ts`, `stateRef`).
|
|
200
|
+
* Deterministic end to end (REQ-SYS-07):
|
|
201
|
+
*
|
|
202
|
+
* 1. **Exclude** the element's own document (never relevant to itself) and any document
|
|
185
203
|
* {@link isExcludedFromContext} bars — `draft` plus the shared archived set `{deprecated,
|
|
186
204
|
* superseded}` (`dl-028`; the archived half is the same predicate REQ-STATE-06 applies to default
|
|
187
205
|
* `memory search`, the `draft` half is context-only).
|
|
188
|
-
*
|
|
206
|
+
* 2. **Score** each remaining document: `1000*T1 + 100*T2 + 10*T3 + overlapCount(T4)` — T1 explicit
|
|
189
207
|
* link, T2 same release scope, T3 shared traceability key, T4 keyword/tag overlap count
|
|
190
208
|
* (spec-012 §6's exact formula). A document scoring `0` (no tier hit at all) is **not relevant**
|
|
191
209
|
* and is dropped — this is the relevance threshold P5.3.3-relevance-filtering.feature's "Edge - no
|
|
192
210
|
* documents pass the relevance threshold" scenario exercises.
|
|
193
|
-
*
|
|
194
|
-
* no `id`) — a total, deterministic tie-break (spec-012 §6/REQ-SYS-07).
|
|
195
|
-
*
|
|
211
|
+
* 3. **Order**: score DESC, then `type` ASC, then `id` ASC (falling back to `path` when a document has
|
|
212
|
+
* no `id`) — a total, deterministic tie-break (spec-012 §6/REQ-SYS-07). The input order therefore
|
|
213
|
+
* never reaches the output.
|
|
214
|
+
* 4. **Bound**: walk in that order, including documents until either `limits.maxDocs` or
|
|
196
215
|
* `limits.maxBytes` (summed UTF-8 body bytes) would be exceeded, then **stop** — never skip a
|
|
197
216
|
* lower-ranked document to fit under a cap while a higher-ranked one was excluded, and never
|
|
198
217
|
* partially include a document (spec-012 §6's "deterministic truncation").
|
|
199
218
|
*
|
|
200
|
-
* Returns {@link NO_RELEVANT_MEMORY_NOTE} in `note` only when **step
|
|
219
|
+
* Returns {@link NO_RELEVANT_MEMORY_NOTE} in `note` only when **step 2 left nothing** — i.e. no
|
|
201
220
|
* document passed the relevance threshold at all (P5.3.3's edge-case scenario, verbatim wording).
|
|
202
|
-
* When documents scored as relevant but step
|
|
221
|
+
* When documents scored as relevant but step 4's caps admitted none of them, `documents` is empty and
|
|
203
222
|
* `note` is omitted: relevant Memory *was* found, so the note would assert something false.
|
|
204
223
|
*/
|
|
205
|
-
function
|
|
224
|
+
function selectRelevantMemoryDocuments(documents, element, limits) {
|
|
206
225
|
const linkedIds = collectLinkedIds(element.frontmatter);
|
|
207
226
|
const elementRelease = asString(element.frontmatter.release);
|
|
208
227
|
const elementTraceability = collectTraceabilityKeys(element.frontmatter);
|
|
209
228
|
const elementKeywords = collectKeywords(element.frontmatter);
|
|
210
229
|
const scored = [];
|
|
211
|
-
for (const path
|
|
212
|
-
const { frontmatter, body } = (0, query_1.loadMemoryDocumentSummary)(root, path);
|
|
230
|
+
for (const { path, frontmatter, body } of documents) {
|
|
213
231
|
const type = asString(frontmatter.type);
|
|
214
232
|
const id = asString(frontmatter.id);
|
|
215
233
|
const status = asString(frontmatter.status);
|
|
@@ -240,19 +258,19 @@ function filterRelevantMemoryDocuments(root, memoryYaml, element, limits = expor
|
|
|
240
258
|
const idB = b.id ?? b.path;
|
|
241
259
|
return idA < idB ? -1 : idA > idB ? 1 : 0;
|
|
242
260
|
});
|
|
243
|
-
const
|
|
261
|
+
const included = [];
|
|
244
262
|
let totalBytes = 0;
|
|
245
263
|
for (const doc of scored) {
|
|
246
|
-
if (
|
|
264
|
+
if (included.length >= limits.maxDocs)
|
|
247
265
|
break;
|
|
248
266
|
const docBytes = Buffer.byteLength(doc.body, 'utf-8');
|
|
249
267
|
if (totalBytes + docBytes > limits.maxBytes)
|
|
250
268
|
break;
|
|
251
|
-
|
|
269
|
+
included.push(doc);
|
|
252
270
|
totalBytes += docBytes;
|
|
253
271
|
}
|
|
254
|
-
// The note is keyed to `scored`, NOT to `
|
|
272
|
+
// The note is keyed to `scored`, NOT to `included`: an empty `included` with a non-empty `scored`
|
|
255
273
|
// means relevant Memory existed and was bounded out, which the note must not claim away.
|
|
256
|
-
return scored.length === 0 ? { documents, note: exports.NO_RELEVANT_MEMORY_NOTE } : { documents };
|
|
274
|
+
return scored.length === 0 ? { documents: included, note: exports.NO_RELEVANT_MEMORY_NOTE } : { documents: included };
|
|
257
275
|
}
|
|
258
276
|
//# sourceMappingURL=relevance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relevance.js","sourceRoot":"","sources":["../../src/core/relevance.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"relevance.js","sourceRoot":"","sources":["../../src/core/relevance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-reason.d.ts","sourceRoot":"","sources":["../../src/core/require-reason.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-reason.d.ts","sourceRoot":"","sources":["../../src/core/require-reason.ts"],"names":[],"mappings":"AA4DA;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,CAM3F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGxG"}
|
|
@@ -42,8 +42,9 @@ const usage_error_1 = require("./usage-error");
|
|
|
42
42
|
const MISSING_REASON_ERROR = 'missing required argument: --reason';
|
|
43
43
|
/**
|
|
44
44
|
* The given reason in its declared normal form, or a `UsageError` (exit 2) naming the defect that
|
|
45
|
-
* makes it unrecordable — blank, carrying a
|
|
46
|
-
* (`
|
|
45
|
+
* makes it unrecordable — blank, carrying a control character other than tab or newline, carrying a
|
|
46
|
+
* reserved trailer line, or ending in a paragraph shaped like one (`reasonRefusalMessage`,
|
|
47
|
+
* `src/memory/commit-message.ts`).
|
|
47
48
|
*
|
|
48
49
|
* The message is deliberately NOT {@link MISSING_REASON_ERROR}: that string answers the *omitted*
|
|
49
50
|
* case, and `spec-008-cli-grammar` §2 plus the `P1.7`/`P1.8` BDD features quote it verbatim for that
|
|
@@ -51,9 +52,9 @@ const MISSING_REASON_ERROR = 'missing required argument: --reason';
|
|
|
51
52
|
* (dl-067 S1).
|
|
52
53
|
*/
|
|
53
54
|
function recordableReason(reason) {
|
|
54
|
-
const
|
|
55
|
-
if (
|
|
56
|
-
throw new usage_error_1.UsageError(
|
|
55
|
+
const refusal = (0, commit_message_1.reasonRefusalMessage)(reason);
|
|
56
|
+
if (refusal !== null) {
|
|
57
|
+
throw new usage_error_1.UsageError(refusal);
|
|
57
58
|
}
|
|
58
59
|
return (0, commit_message_1.normalizeReason)(reason);
|
|
59
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-reason.js","sourceRoot":"","sources":["../../src/core/require-reason.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"require-reason.js","sourceRoot":"","sources":["../../src/core/require-reason.ts"],"names":[],"mappings":";;AAwEA,sCAMC;AAcD,wCAGC;AA/FD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,6DAAiF;AAEjF,+CAA2C;AAE3C,qIAAqI;AACrI,MAAM,oBAAoB,GAAG,qCAAqC,CAAC;AAEnE;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,MAAM,OAAO,GAAG,IAAA,qCAAoB,EAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,wBAAU,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,IAAA,gCAAe,EAAC,MAAM,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,aAAa,CAAC,OAAqD;IACjF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,wBAAU,CAAC,oBAAoB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,cAAc,CAAC,OAAqD;IAClF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACrE,CAAC"}
|