akm-cli 0.9.31 → 0.10.261002-beta
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/CHANGELOG.md +420 -0
- package/STABILITY.md +99 -57
- package/dist/api-node.mjs +20 -0
- package/dist/api.d.ts +23 -0
- package/dist/api.js +45 -0
- package/dist/assets/hints/cli-hints-full.md +15 -29
- package/dist/assets/hints/cli-hints-short.md +2 -2
- package/dist/assets/improve-strategies/default.json +3 -3
- package/dist/assets/prompts/consolidate-pair.md +9 -7
- package/dist/assets/stash-skeleton/README.md +1 -1
- package/dist/assets/tasks/improve/akm-improve-consolidate.yml +1 -1
- package/dist/cli/shared.js +31 -48
- package/dist/cli/unknown-flags.js +6 -43
- package/dist/cli.js +8 -34
- package/dist/commands/agent/contribute-cli.js +1 -1
- package/dist/commands/completions.js +1 -2
- package/dist/commands/config-cli.js +5 -28
- package/dist/commands/env/env-cli.js +5 -5
- package/dist/commands/env/secret-cli.js +2 -2
- package/dist/commands/feedback-cli.js +75 -49
- package/dist/commands/health/checks.js +41 -16
- package/dist/commands/health/plugin-staleness.js +52 -22
- package/dist/commands/improve/autonomy-gate.js +5 -3
- package/dist/commands/improve/consolidate/chunking.js +3 -10
- package/dist/commands/improve/consolidate/continuity-check.js +4 -4
- package/dist/commands/improve/consolidate/pair-pass.js +29 -10
- package/dist/commands/improve/consolidate.js +10 -65
- package/dist/commands/improve/distill/lesson-update.js +91 -0
- package/dist/commands/improve/distill-guards.js +1 -43
- package/dist/commands/improve/distill.js +148 -21
- package/dist/commands/improve/eligibility.js +14 -1
- package/dist/commands/improve/extract-cli.js +1 -1
- package/dist/commands/improve/extract-prompt.js +17 -7
- package/dist/commands/improve/extract.js +5 -7
- package/dist/commands/improve/improve-cli.js +92 -106
- package/dist/commands/improve/improve-strategies.js +8 -12
- package/dist/commands/improve/improve.js +134 -52
- package/dist/commands/improve/loop-stages.js +18 -5
- package/dist/commands/improve/planner.js +0 -1
- package/dist/commands/improve/preparation.js +40 -99
- package/dist/commands/improve/proactive-maintenance.js +2 -2
- package/dist/commands/improve/reflect-noise.js +3 -55
- package/dist/commands/improve/reflect.js +29 -34
- package/dist/commands/improve/retrieval-queries.js +37 -0
- package/dist/commands/improve/retrieval-scope.js +2 -2
- package/dist/commands/improve/salience.js +2 -9
- package/dist/commands/improve/session-asset.js +4 -1
- package/dist/commands/improve/stage.js +23 -12
- package/dist/commands/lint/index.js +5 -20
- package/dist/commands/observability-cli.js +3 -9
- package/dist/commands/proposal/drain.js +43 -6
- package/dist/commands/proposal/proposal-cli.js +11 -31
- package/dist/commands/proposal/repository.js +20 -14
- package/dist/commands/proposal/validators/proposal-quality-validators.js +0 -3
- package/dist/commands/read/knowledge.js +3 -3
- package/dist/commands/read/remember-cli.js +0 -13
- package/dist/commands/read/search-cli.js +29 -97
- package/dist/commands/read/search.js +0 -11
- package/dist/commands/read/show.js +0 -19
- package/dist/commands/sources/plugin-upgrade.js +164 -101
- package/dist/commands/sources/sources-cli.js +1 -15
- package/dist/commands/sources/stash-cli.js +6 -14
- package/dist/commands/tasks/tasks-cli.js +4 -115
- package/dist/commands/workflow/plan.js +11 -33
- package/dist/commands/workflow-cli.js +2 -7
- package/dist/core/adapter/adapter-ids.js +1 -2
- package/dist/core/adapter/adapters/agent-skills-adapter.js +0 -4
- package/dist/core/adapter/adapters/akm-adapter.js +9 -48
- package/dist/core/adapter/adapters/akm-lint.js +10 -26
- package/dist/core/adapter/adapters/akm-metadata.js +2 -72
- package/dist/core/adapter/adapters/akm-task-adapter.js +0 -5
- package/dist/core/adapter/adapters/akm-workflow-adapter.js +9 -28
- package/dist/core/adapter/adapters/dotenv-adapter.js +1 -20
- package/dist/core/adapter/adapters/generic-files-adapter.js +0 -10
- package/dist/core/adapter/adapters/llm-wiki-adapter.js +0 -4
- package/dist/core/adapter/adapters/tool-dir-shared.js +0 -24
- package/dist/core/adapter/adapters/website-snapshot-adapter.js +4 -4
- package/dist/core/adapter/recognize-match.js +3 -4
- package/dist/core/common.js +18 -2
- package/dist/core/config/config-schema.js +12 -15
- package/dist/core/config/config-types.js +6 -15
- package/dist/core/config/config-walker.js +6 -23
- package/dist/core/config/config.js +17 -80
- package/dist/core/config/engine-semantics.js +7 -3
- package/dist/core/config/schema/engines.js +7 -7
- package/dist/core/config/schema/improve-processes.js +10 -63
- package/dist/core/config/schema/improve.js +2 -21
- package/dist/core/config/schema/index-config.js +6 -39
- package/dist/core/env-secret-ref.js +2 -45
- package/dist/core/errors.js +1 -2
- package/dist/core/extra-params.js +2 -86
- package/dist/core/file-lock.js +2 -6
- package/dist/core/improve-result.js +13 -1
- package/dist/core/mutation-target.js +2 -2
- package/dist/core/paths.js +4 -0
- package/dist/core/recognition-util.js +4 -5
- package/dist/core/run-lock.js +1 -1
- package/dist/core/subprocess.js +49 -0
- package/dist/core/warn.js +21 -4
- package/dist/core/write-source.js +3 -3
- package/dist/execution/target-ref.js +1 -2
- package/dist/indexer/indexer.js +15 -6
- package/dist/indexer/passes/memory-inference.js +15 -6
- package/dist/indexer/search/db-search.js +49 -36
- package/dist/indexer/search/fts-query.js +0 -19
- package/dist/indexer/search/ranking.js +29 -1
- package/dist/indexer/usage/usage-events.js +21 -16
- package/dist/integrations/agent/engine-resolution.js +5 -2
- package/dist/integrations/agent/index.js +1 -1
- package/dist/integrations/agent/profiles.js +41 -98
- package/dist/integrations/agent/request-lowering.js +3 -3
- package/dist/integrations/harnesses/aider/index.js +5 -0
- package/dist/integrations/harnesses/amazonq/index.js +1 -0
- package/dist/integrations/harnesses/claude/config-import.js +2 -3
- package/dist/integrations/harnesses/claude/index.js +5 -0
- package/dist/integrations/harnesses/codex/index.js +1 -0
- package/dist/integrations/harnesses/copilot/index.js +1 -0
- package/dist/integrations/harnesses/gemini/index.js +1 -0
- package/dist/integrations/harnesses/index.js +18 -39
- package/dist/integrations/harnesses/opencode/agent-builder.js +60 -35
- package/dist/integrations/harnesses/opencode/config-import.js +121 -52
- package/dist/integrations/harnesses/opencode/index.js +22 -0
- package/dist/integrations/harnesses/opencode/plugin-layout.js +68 -0
- package/dist/integrations/harnesses/opencode/session-log-types.js +12 -0
- package/dist/integrations/harnesses/opencode/session-log-v1.js +72 -0
- package/dist/integrations/harnesses/opencode/session-log-v2.js +140 -0
- package/dist/integrations/harnesses/opencode/session-log.js +104 -115
- package/dist/integrations/harnesses/opencode/version.js +98 -0
- package/dist/integrations/harnesses/opencode-sdk/{harness.js → index.js} +5 -17
- package/dist/integrations/harnesses/opencode-sdk/sdk-runner.js +105 -206
- package/dist/integrations/harnesses/opencode-sdk/v1-adapter.js +199 -0
- package/dist/integrations/harnesses/opencode-sdk/v2-adapter.js +254 -0
- package/dist/integrations/harnesses/opencode-sdk/wire.js +66 -0
- package/dist/integrations/harnesses/openhands/index.js +1 -0
- package/dist/integrations/harnesses/pi/index.js +1 -0
- package/dist/integrations/harnesses/shared.js +2 -0
- package/dist/integrations/harnesses/types.js +2 -0
- package/dist/llm/client.js +41 -11
- package/dist/output/cli-hints.js +1 -1
- package/dist/output/context.js +10 -19
- package/dist/output/format-exempt.js +5 -8
- package/dist/output/shapes/helpers.js +1 -22
- package/dist/output/shapes/passthrough.js +0 -1
- package/dist/output/shapes.js +3 -31
- package/dist/output/stdout.js +5 -1
- package/dist/output/text/command-format.js +6 -1
- package/dist/output/text/workflow-format.js +4 -22
- package/dist/scripts/akm-migrate-node.js +15745 -16711
- package/dist/scripts/akm-migrate.js +16318 -17280
- package/dist/setup/detect.js +10 -4
- package/dist/setup/harness-config-import.js +5 -14
- package/dist/setup/setup.js +1 -1
- package/dist/setup/steps/tasks.js +12 -13
- package/dist/sources/providers/git-stash.js +113 -16
- package/dist/storage/repositories/index-utility-repository.js +2 -32
- package/dist/storage/repositories/index-vec-repository.js +4 -0
- package/dist/storage/repositories/task-history-repository.js +0 -5
- package/dist/storage/repositories/workflow-runs-repository.js +5 -15
- package/dist/tasks/embedded.js +2 -1
- package/dist/tasks/run/run-command-task.js +9 -1
- package/dist/tasks/run/run-workflow-task.js +4 -3
- package/dist/tasks/run/task-history.js +0 -2
- package/dist/tasks/run/task-log.js +38 -1
- package/dist/tasks/schedule-gates.js +39 -0
- package/dist/tasks/scheduler-binding.js +0 -16
- package/dist/tasks/scheduler-sync.js +3 -97
- package/dist/tasks/source/bounded-document.js +1 -1
- package/dist/tasks/source/task-source-v4.js +2 -12
- package/dist/tasks/task-run-reserved-flags.js +2 -31
- package/dist/workflows/authoring/authoring.js +6 -6
- package/dist/workflows/compile.js +8 -65
- package/dist/workflows/exec/child-workflow.js +22 -3
- package/dist/workflows/exec/native-executor.js +12 -147
- package/dist/workflows/exec/run-workflow.js +31 -103
- package/dist/workflows/exec/step-work.js +9 -178
- package/dist/workflows/exec/unit-dispatch.js +0 -10
- package/dist/workflows/freeze/environment.js +3 -44
- package/dist/workflows/freeze/freeze.js +8 -41
- package/dist/workflows/freeze/targets/child-workflow.js +27 -63
- package/dist/workflows/freeze/targets/command.js +2 -16
- package/dist/workflows/freeze/targets/shell.js +0 -2
- package/dist/workflows/freeze/task-bindings.js +2 -28
- package/dist/workflows/ir/params.js +12 -2
- package/dist/workflows/parser.js +82 -232
- package/dist/workflows/plan.js +1 -1
- package/dist/workflows/renderer.js +10 -19
- package/dist/workflows/runtime/run-plan.js +11 -53
- package/dist/workflows/runtime/runs.js +4 -27
- package/dist/workflows/source-files.js +12 -16
- package/dist/workflows/source-semantics.js +1 -93
- package/docs/README.md +1 -1
- package/docs/agents/README.md +3 -3
- package/docs/agents/agent-install.md +1 -1
- package/docs/architecture/0.10-process-rules.md +827 -0
- package/docs/architecture/adapters.md +17 -31
- package/docs/architecture/architecture.md +4 -5
- package/docs/architecture/improvement.md +115 -76
- package/docs/architecture/internals/improve-workflow.md +22 -16
- package/docs/architecture/internals/indexing.md +1 -1
- package/docs/architecture/internals/search.md +1 -2
- package/docs/architecture/internals/storage-locations.md +6 -6
- package/docs/architecture/persisted-data-compat.md +13 -4
- package/docs/architecture/specs/0.9.0-decisions.md +6 -2
- package/docs/architecture/specs/improve-collapse-churn-detector-design.md +2 -2
- package/docs/architecture/specs/workflow-format-unification.md +1 -6
- package/docs/architecture/testing/manual-testing-checklist.md +21 -30
- package/docs/architecture/testing/task-workflow-manual-tests.md +106 -203
- package/docs/architecture/testing/testing-workflow.md +1 -1
- package/docs/architecture/workflow-engine.md +5 -56
- package/docs/guides/author-workflows.md +39 -69
- package/docs/guides/bundles.md +3 -1
- package/docs/guides/capture-knowledge.md +1 -1
- package/docs/guides/claude-code-vs-akm-workflows.md +1 -2
- package/docs/guides/discover-and-load.md +4 -4
- package/docs/guides/getting-started.md +1 -1
- package/docs/guides/improve-the-library.md +10 -9
- package/docs/guides/recipes/headless-install.md +2 -2
- package/docs/guides/run-workflows.md +1 -1
- package/docs/guides/scheduling.md +9 -1
- package/docs/guides/use-with-any-agent.md +49 -4
- package/docs/integration/bundling-akm.md +7 -6
- package/docs/maintainers/curate-workmap.md +1 -2
- package/docs/maintainers/release-checklist.md +33 -1
- package/docs/migration/README.md +2 -0
- package/docs/migration/release-notes/0.10.0.md +201 -0
- package/docs/migration/release-notes/README.md +1 -0
- package/docs/migration/v0.9-to-v0.10.md +507 -0
- package/docs/posts/akm-command-tour.md +3 -3
- package/docs/product-surface.md +1 -1
- package/docs/reference/README.md +1 -0
- package/docs/reference/api.md +65 -0
- package/docs/reference/asset-types.md +3 -5
- package/docs/reference/bundle-types.md +2 -4
- package/docs/reference/cli.md +160 -188
- package/docs/reference/configuration.md +101 -20
- package/docs/reference/data-and-telemetry.md +2 -2
- package/docs/reference/env-and-secrets.md +2 -2
- package/docs/reference/supported-formats.md +3 -4
- package/docs/reference/tasks.md +12 -19
- package/docs/reference/website-sources.md +1 -1
- package/docs/reference/workflow-schema.md +89 -317
- package/docs/reference/workflows.md +20 -48
- package/package.json +12 -2
- package/schemas/akm-config.json +2 -243
- package/schemas/akm-task.json +2 -3
- package/schemas/akm-workflow.json +47 -84
- package/dist/assets/improve-strategies/catchup.json +0 -41
- package/dist/assets/improve-strategies/proactive-maintenance.json +0 -24
- package/dist/assets/improve-strategies/quick.json +0 -17
- package/dist/assets/improve-strategies/reflect-distill.json +0 -29
- package/dist/assets/improve-strategies/thorough.json +0 -49
- package/dist/assets/prompts/retrieval-relevance-judge.md +0 -6
- package/dist/assets/tasks/improve/akm-improve-catchup.yml +0 -6
- package/dist/assets/tasks/improve/akm-improve-frequent.yml +0 -4
- package/dist/assets/tasks/improve/akm-improve-nightly.yml +0 -4
- package/dist/cli/retired-commands.js +0 -118
- package/dist/commands/improve/retrieval-gate.js +0 -132
- package/dist/commands/tasks/validate.js +0 -176
- package/dist/core/config/legacy-source-shape-shim.js +0 -117
- package/dist/indexer/feedback/utility-policy.js +0 -75
- package/dist/integrations/harnesses/ids.js +0 -28
- package/dist/tasks/source/task-source-v3-frozen.js +0 -424
- package/dist/tasks/source/task-to-v4.js +0 -863
- package/dist/workflows/exec/worktree.js +0 -372
- package/dist/workflows/freeze/child-output-references.js +0 -83
- package/dist/workflows/freeze/identity.js +0 -22
- package/dist/workflows/freeze/targets/script.js +0 -50
- package/dist/workflows/freeze/targets/task.js +0 -124
- package/dist/workflows/github-yaml.js +0 -506
- package/dist/workflows/runtime/run-outputs.js +0 -80
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"$id": "https://itlackey.github.io/akm/schemas/akm-workflow.json",
|
|
4
4
|
"title": "AKM Workflow",
|
|
5
|
-
"description": "This frontmatter schema
|
|
5
|
+
"description": "This frontmatter schema validates the Markdown (.md) workflow source, the only workflow format: the standard AKM asset envelope plus its orchestration graph, compiled to source IR v1. Per-step prose instructions and gate rubrics live in the Markdown body, joined to this graph by step id. Hand-authored alongside src/workflows/program/schema.ts; see docs/reference/workflow-schema.md.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"required": ["steps"],
|
|
8
8
|
"additionalProperties": false,
|
|
@@ -30,17 +30,6 @@
|
|
|
30
30
|
"$ref": "#/definitions/jsonSchemaObject"
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
|
-
"outputs": {
|
|
34
|
-
"type": "object",
|
|
35
|
-
"minProperties": 1,
|
|
36
|
-
"description": "Named, optionally schema-validated projections of step artifacts, exported when the run completes. Names must be steps.<child>.output.<name>-addressable identifiers. Each entry: { from: steps.<id>.output(.<seg>)*, schema?: <bounded JSON Schema> }. Markdown-frontmatter only.",
|
|
37
|
-
"propertyNames": {
|
|
38
|
-
"pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
|
|
39
|
-
},
|
|
40
|
-
"additionalProperties": {
|
|
41
|
-
"$ref": "#/definitions/outputDeclaration"
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
33
|
"defaults": {
|
|
45
34
|
"$ref": "#/definitions/defaults"
|
|
46
35
|
},
|
|
@@ -136,10 +125,6 @@
|
|
|
136
125
|
"description": "How a map step folds per-item unit results into the step artifact.",
|
|
137
126
|
"enum": ["collect", "vote"]
|
|
138
127
|
},
|
|
139
|
-
"isolation": {
|
|
140
|
-
"description": "Filesystem isolation for file-mutating units.",
|
|
141
|
-
"enum": ["none", "worktree"]
|
|
142
|
-
},
|
|
143
128
|
"failureReason": {
|
|
144
129
|
"description": "Persisted AgentFailureReason taxonomy (src/integrations/agent/spawn.ts).",
|
|
145
130
|
"enum": [
|
|
@@ -162,21 +147,6 @@
|
|
|
162
147
|
"type": "object",
|
|
163
148
|
"description": "A JSON Schema declaration. The parser validates it as a schema definition against the runtime's enforced subset (src/core/json-schema.ts checkJsonSchemaDefinition): typo'd type names and keywords outside the subset (e.g. $ref, const, format, patternProperties) are authoring-time errors, not silent no-ops."
|
|
164
149
|
},
|
|
165
|
-
"outputDeclaration": {
|
|
166
|
-
"type": "object",
|
|
167
|
-
"description": "One outputs: entry: a validated steps.<id>.output(.<seg>)* reference into a step artifact, plus an optional bounded JSON Schema.",
|
|
168
|
-
"required": ["from"],
|
|
169
|
-
"additionalProperties": false,
|
|
170
|
-
"properties": {
|
|
171
|
-
"from": {
|
|
172
|
-
"type": "string",
|
|
173
|
-
"description": "A steps.<id>.output(.<seg>)* reference into a step artifact. Never params.<name> — an output projects a step artifact, never a param."
|
|
174
|
-
},
|
|
175
|
-
"schema": {
|
|
176
|
-
"$ref": "#/definitions/jsonSchemaObject"
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
},
|
|
180
150
|
"retry": {
|
|
181
151
|
"type": "object",
|
|
182
152
|
"description": "Bounded retry on transient failures, keyed on the persisted failure_reason taxonomy.",
|
|
@@ -255,7 +225,7 @@
|
|
|
255
225
|
},
|
|
256
226
|
"cwd": {
|
|
257
227
|
"type": "string",
|
|
258
|
-
"description": "Optional RELATIVE working directory inside the unit's working directory
|
|
228
|
+
"description": "Optional RELATIVE working directory inside the unit's working directory. Absolute paths, Windows drive letters, \"~\", and \"..\" segments are rejected here, and containment is re-checked against the resolved base — symlinks included — before the command is spawned.",
|
|
259
229
|
"minLength": 1,
|
|
260
230
|
"pattern": "^(?!/|\\\\|~|[A-Za-z]:)(?!.*(?:^|[/\\\\])\\.\\.(?:[/\\\\]|$)).+$"
|
|
261
231
|
},
|
|
@@ -273,7 +243,7 @@
|
|
|
273
243
|
},
|
|
274
244
|
"unit": {
|
|
275
245
|
"type": "object",
|
|
276
|
-
"description": "Optional dispatch-override bag for a unit/map step. A step with none of these carries the run's engine/model/timeout defaults verbatim. Declaring `exec` turns the step into a shell-command unit: it names no engine, so `engine`, `model`, and `llm` are rejected alongside it.",
|
|
246
|
+
"description": "Optional dispatch-override bag for a unit/map step. A step with none of these carries the run's engine/model/timeout defaults verbatim. Declaring `exec` turns the step into a shell-command unit: it names no engine, so `engine`, `model`, and `llm` are rejected alongside it. Declaring `workflow` (Experimental, not allowed inside `map.unit`) makes the step start a child workflow run: it names no engine or env either, and the child's last step output is the step's result.",
|
|
277
247
|
"additionalProperties": false,
|
|
278
248
|
"allOf": [
|
|
279
249
|
{
|
|
@@ -295,12 +265,55 @@
|
|
|
295
265
|
]
|
|
296
266
|
}
|
|
297
267
|
}
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"if": {
|
|
271
|
+
"required": ["workflow"]
|
|
272
|
+
},
|
|
273
|
+
"then": {
|
|
274
|
+
"not": {
|
|
275
|
+
"anyOf": [
|
|
276
|
+
{
|
|
277
|
+
"required": ["exec"]
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"required": ["engine"]
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
"required": ["model"]
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"required": ["llm"]
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"required": ["env"]
|
|
290
|
+
}
|
|
291
|
+
]
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
"if": {
|
|
297
|
+
"required": ["with"]
|
|
298
|
+
},
|
|
299
|
+
"then": {
|
|
300
|
+
"required": ["workflow"]
|
|
301
|
+
}
|
|
298
302
|
}
|
|
299
303
|
],
|
|
300
304
|
"properties": {
|
|
301
305
|
"exec": {
|
|
302
306
|
"$ref": "#/definitions/exec"
|
|
303
307
|
},
|
|
308
|
+
"workflow": {
|
|
309
|
+
"type": "string",
|
|
310
|
+
"minLength": 1,
|
|
311
|
+
"description": "Experimental. Canonical ref of a child workflow (`workflows/<name>` or `<bundle>//workflows/<name>`) this step starts and drives to completion."
|
|
312
|
+
},
|
|
313
|
+
"with": {
|
|
314
|
+
"type": "object",
|
|
315
|
+
"description": "Experimental. Binds the child workflow's params: each key is a declared child param, each value a literal or `{ from: <reference> }`."
|
|
316
|
+
},
|
|
304
317
|
"engine": {
|
|
305
318
|
"$ref": "#/definitions/engineName",
|
|
306
319
|
"description": "Named engine selected when the workflow run is created."
|
|
@@ -332,9 +345,6 @@
|
|
|
332
345
|
"minLength": 1
|
|
333
346
|
},
|
|
334
347
|
"description": "Env asset refs injected into the dispatched unit env. Entries must be unique: the frozen-plan decoder rejects duplicates at run start."
|
|
335
|
-
},
|
|
336
|
-
"isolation": {
|
|
337
|
-
"$ref": "#/definitions/isolation"
|
|
338
348
|
}
|
|
339
349
|
}
|
|
340
350
|
},
|
|
@@ -362,43 +372,6 @@
|
|
|
362
372
|
}
|
|
363
373
|
}
|
|
364
374
|
},
|
|
365
|
-
"routeBranch": {
|
|
366
|
-
"type": "object",
|
|
367
|
-
"required": ["match", "step"],
|
|
368
|
-
"additionalProperties": false,
|
|
369
|
-
"properties": {
|
|
370
|
-
"match": {
|
|
371
|
-
"type": ["string", "number", "boolean"],
|
|
372
|
-
"minLength": 1,
|
|
373
|
-
"description": "Branch key. An empty string is rejected: the frozen-plan decoder requires every `when` key to be non-empty."
|
|
374
|
-
},
|
|
375
|
-
"step": {
|
|
376
|
-
"$ref": "#/definitions/identifier"
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
},
|
|
380
|
-
"route": {
|
|
381
|
-
"type": "object",
|
|
382
|
-
"description": "Route on an explicit reference input to a LATER step. Targets must come after the routing step.",
|
|
383
|
-
"required": ["input", "when"],
|
|
384
|
-
"additionalProperties": false,
|
|
385
|
-
"properties": {
|
|
386
|
-
"input": {
|
|
387
|
-
"$ref": "#/definitions/reference",
|
|
388
|
-
"description": "Reference naming the value to route on."
|
|
389
|
-
},
|
|
390
|
-
"when": {
|
|
391
|
-
"type": "array",
|
|
392
|
-
"minItems": 1,
|
|
393
|
-
"items": {
|
|
394
|
-
"$ref": "#/definitions/routeBranch"
|
|
395
|
-
}
|
|
396
|
-
},
|
|
397
|
-
"default": {
|
|
398
|
-
"$ref": "#/definitions/identifier"
|
|
399
|
-
}
|
|
400
|
-
}
|
|
401
|
-
},
|
|
402
375
|
"gate": {
|
|
403
376
|
"type": "object",
|
|
404
377
|
"description": "Optional validation-loop configuration. The rubric itself lives in the body under a `### gate` sub-heading inside the step's section; omitted or empty rubric text skips validation.",
|
|
@@ -422,7 +395,7 @@
|
|
|
422
395
|
},
|
|
423
396
|
"step": {
|
|
424
397
|
"type": "object",
|
|
425
|
-
"description": "One step of the gated spine. A step with no map
|
|
398
|
+
"description": "One step of the gated spine. A step with no map is a unit step (bare `{id: ...}` is the complete minimal declaration).",
|
|
426
399
|
"required": ["id"],
|
|
427
400
|
"additionalProperties": false,
|
|
428
401
|
"properties": {
|
|
@@ -435,9 +408,6 @@
|
|
|
435
408
|
"map": {
|
|
436
409
|
"$ref": "#/definitions/map"
|
|
437
410
|
},
|
|
438
|
-
"route": {
|
|
439
|
-
"$ref": "#/definitions/route"
|
|
440
|
-
},
|
|
441
411
|
"inputs": {
|
|
442
412
|
"$ref": "#/definitions/inputs"
|
|
443
413
|
},
|
|
@@ -449,13 +419,6 @@
|
|
|
449
419
|
}
|
|
450
420
|
},
|
|
451
421
|
"allOf": [
|
|
452
|
-
{
|
|
453
|
-
"not": { "required": ["map", "route"] }
|
|
454
|
-
},
|
|
455
|
-
{
|
|
456
|
-
"if": { "required": ["route"] },
|
|
457
|
-
"then": { "not": { "anyOf": [{ "required": ["unit"] }, { "required": ["map"] }, { "required": ["inputs"] }] } }
|
|
458
|
-
},
|
|
459
422
|
{
|
|
460
423
|
"if": { "required": ["map"] },
|
|
461
424
|
"then": { "not": { "required": ["unit"] } }
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"description": "Manual catch-up \u2014 consolidation plus a judged triage drain (up to 100 accepts) with no interval minimum. Auto-accepts only when improve autonomy is enabled; otherwise proposals queue for review.",
|
|
3
|
-
"processes": {
|
|
4
|
-
"reflect": {
|
|
5
|
-
"enabled": false
|
|
6
|
-
},
|
|
7
|
-
"distill": {
|
|
8
|
-
"enabled": false
|
|
9
|
-
},
|
|
10
|
-
"consolidate": {
|
|
11
|
-
"enabled": true,
|
|
12
|
-
"allowedTypes": ["memory"],
|
|
13
|
-
"maxChunkSize": 50,
|
|
14
|
-
"minPoolSize": 0
|
|
15
|
-
},
|
|
16
|
-
"memoryInference": {
|
|
17
|
-
"enabled": false
|
|
18
|
-
},
|
|
19
|
-
"extract": {
|
|
20
|
-
"enabled": false
|
|
21
|
-
},
|
|
22
|
-
"triage": {
|
|
23
|
-
"enabled": true,
|
|
24
|
-
"applyMode": "promote",
|
|
25
|
-
"policy": "personal-stash",
|
|
26
|
-
"maxAcceptsPerRun": 100,
|
|
27
|
-
"judgment": true,
|
|
28
|
-
"maxDiffLines": 200
|
|
29
|
-
},
|
|
30
|
-
"validation": {
|
|
31
|
-
"enabled": false
|
|
32
|
-
},
|
|
33
|
-
"proactiveMaintenance": {
|
|
34
|
-
"enabled": false
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
"sync": {
|
|
38
|
-
"enabled": true,
|
|
39
|
-
"push": true
|
|
40
|
-
}
|
|
41
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"description": "Opt-in proactive-maintenance pass — reflect (on negative feedback), distill, proposal triage (promote, high budget), and the proactive-maintenance lane (maxPerRun 100), which picks due assets for scoring but plans no rewrite; consolidate/memoryInference/extract off. Sync disabled: an interrupted run would otherwise leave an uncommitted backlog.",
|
|
3
|
-
"processes": {
|
|
4
|
-
"reflect": {
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"allowedTypes": ["agent", "command", "knowledge", "lesson", "memory", "skill", "workflow"]
|
|
7
|
-
},
|
|
8
|
-
"distill": { "enabled": true, "allowedTypes": ["memory"] },
|
|
9
|
-
"consolidate": { "enabled": false },
|
|
10
|
-
"memoryInference": { "enabled": false },
|
|
11
|
-
"extract": { "enabled": false },
|
|
12
|
-
"validation": { "enabled": false },
|
|
13
|
-
"triage": {
|
|
14
|
-
"enabled": true,
|
|
15
|
-
"applyMode": "promote",
|
|
16
|
-
"policy": "personal-stash",
|
|
17
|
-
"maxAcceptsPerRun": 100,
|
|
18
|
-
"maxDiffLines": 200,
|
|
19
|
-
"judgment": true
|
|
20
|
-
},
|
|
21
|
-
"proactiveMaintenance": { "enabled": true, "dueDays": 30, "maxPerRun": 100 }
|
|
22
|
-
},
|
|
23
|
-
"sync": { "enabled": false }
|
|
24
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"description": "Reflect-only pass — no extract, distill, consolidate, or memoryInference.",
|
|
3
|
-
"processes": {
|
|
4
|
-
"reflect": {
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"allowedTypes": ["agent", "command", "knowledge", "lesson", "memory", "skill", "workflow"]
|
|
7
|
-
},
|
|
8
|
-
"extract": { "enabled": false },
|
|
9
|
-
"distill": { "enabled": false },
|
|
10
|
-
"consolidate": { "enabled": false },
|
|
11
|
-
"memoryInference": { "enabled": false },
|
|
12
|
-
"triage": { "enabled": false },
|
|
13
|
-
"validation": { "enabled": false },
|
|
14
|
-
"proactiveMaintenance": { "enabled": false }
|
|
15
|
-
},
|
|
16
|
-
"sync": { "enabled": true, "push": true }
|
|
17
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"description": "Reflect + distill pass — reflect, distill, memoryInference, and proposal triage (promote); proactiveMaintenance/consolidate/extract off. Sync disabled: an interrupted run would otherwise leave an uncommitted backlog.",
|
|
3
|
-
"processes": {
|
|
4
|
-
"reflect": {
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"allowedTypes": ["agent", "command", "knowledge", "lesson", "memory", "skill", "workflow"]
|
|
7
|
-
},
|
|
8
|
-
"distill": { "enabled": true, "allowedTypes": ["memory"], "requirePlannedRefs": false },
|
|
9
|
-
"consolidate": { "enabled": false },
|
|
10
|
-
"memoryInference": { "enabled": true },
|
|
11
|
-
"extract": {
|
|
12
|
-
"enabled": false,
|
|
13
|
-
"timeoutMs": 300000,
|
|
14
|
-
"triage": { "enabled": true, "minScore": 2 },
|
|
15
|
-
"minNewSessions": 1
|
|
16
|
-
},
|
|
17
|
-
"validation": { "enabled": false },
|
|
18
|
-
"triage": {
|
|
19
|
-
"enabled": true,
|
|
20
|
-
"applyMode": "promote",
|
|
21
|
-
"policy": "personal-stash",
|
|
22
|
-
"maxAcceptsPerRun": 15,
|
|
23
|
-
"maxDiffLines": 200,
|
|
24
|
-
"judgment": true
|
|
25
|
-
},
|
|
26
|
-
"proactiveMaintenance": { "enabled": false, "dueDays": 30, "maxPerRun": 15 }
|
|
27
|
-
},
|
|
28
|
-
"sync": { "enabled": false }
|
|
29
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"description": "Everything default runs, plus a judged triage drain of the pending-proposal backlog (up to 25 accepts per run). Auto-accepts only when improve autonomy is enabled; otherwise proposals queue for review. Identical tuning to default; improve-stage extract and proactive maintenance stay off.",
|
|
3
|
-
"processes": {
|
|
4
|
-
"reflect": {
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"limit": 25,
|
|
7
|
-
"allowedTypes": ["agent", "command", "knowledge", "lesson", "memory", "skill", "workflow"]
|
|
8
|
-
},
|
|
9
|
-
"distill": {
|
|
10
|
-
"enabled": true,
|
|
11
|
-
"allowedTypes": ["memory"],
|
|
12
|
-
"requirePlannedRefs": false
|
|
13
|
-
},
|
|
14
|
-
"consolidate": {
|
|
15
|
-
"enabled": true,
|
|
16
|
-
"allowedTypes": ["memory"]
|
|
17
|
-
},
|
|
18
|
-
"memoryInference": {
|
|
19
|
-
"enabled": true
|
|
20
|
-
},
|
|
21
|
-
"extract": {
|
|
22
|
-
"enabled": false,
|
|
23
|
-
"triage": {
|
|
24
|
-
"enabled": true,
|
|
25
|
-
"minScore": 2
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
"validation": {
|
|
29
|
-
"enabled": true
|
|
30
|
-
},
|
|
31
|
-
"proactiveMaintenance": {
|
|
32
|
-
"enabled": false,
|
|
33
|
-
"dueDays": 30,
|
|
34
|
-
"maxPerRun": 15
|
|
35
|
-
},
|
|
36
|
-
"triage": {
|
|
37
|
-
"enabled": true,
|
|
38
|
-
"applyMode": "promote",
|
|
39
|
-
"policy": "personal-stash",
|
|
40
|
-
"maxAcceptsPerRun": 25,
|
|
41
|
-
"maxDiffLines": 200,
|
|
42
|
-
"judgment": true
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
"sync": {
|
|
46
|
-
"enabled": true,
|
|
47
|
-
"push": true
|
|
48
|
-
}
|
|
49
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
You are grading search-and-retrieval results for an AI coding agent's knowledge base (the akm tool). For the given query and ONE candidate asset, grade how useful loading this asset would be, on this scale:
|
|
2
|
-
3 = exactly the asset an agent should load for this query or task; it directly answers or performs the request.
|
|
3
|
-
2 = relevant and clearly useful, though not the single best asset for the query.
|
|
4
|
-
1 = same general topic as the query, but would not actually help complete this specific query or task.
|
|
5
|
-
0 = unrelated to the query.
|
|
6
|
-
Reply with ONLY a JSON object: {"grade": <integer 0-3>, "reason": "<=25 words"}.
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
version: 4
|
|
2
|
-
run: akm improve --strategy catchup --skip-if-locked --require-engines
|
|
3
|
-
description: Manual recovery — consolidation + triage drain (run on demand via `akm task run akm-improve-catchup`)
|
|
4
|
-
# Manual-recovery task: setup offers it disabled by default. `akm task run`
|
|
5
|
-
# still works manually; `akm task enable` opts this host into the schedule.
|
|
6
|
-
schedule: "0 4 * * *"
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
// This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
-
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
-
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
4
|
-
/**
|
|
5
|
-
* Replacement hints for command spellings retired by the 0.9 CLI overhaul
|
|
6
|
-
* (hard break — no aliases). Consulted by the unknown-command error path
|
|
7
|
-
* BEFORE the edit-distance did-you-mean: distance-based suggestions are
|
|
8
|
-
* actively misleading for retired spellings (`init` → "did you mean
|
|
9
|
-
* `info`?", `update` → "did you mean `upgrade`?" — the latter replaces the
|
|
10
|
-
* BINARY, not the sources), and an agent following them gets steered into
|
|
11
|
-
* the wrong command instead of the renamed one.
|
|
12
|
-
*
|
|
13
|
-
* Keys are either a bare retired top-level token (`"init"`) or a
|
|
14
|
-
* group-scoped `"<group> <sub>"` pair (`"env set"`). Keep entries one
|
|
15
|
-
* sentence; the migration pointer is appended by the caller.
|
|
16
|
-
*/
|
|
17
|
-
const RETIRED_COMMAND_HINTS = {
|
|
18
|
-
// Top-level verbs absorbed by the `bundle` group.
|
|
19
|
-
init: "`akm init` moved in 0.9 — use `akm bundle create`.",
|
|
20
|
-
add: "`akm add` moved in 0.9 — use `akm bundle add <source>`.",
|
|
21
|
-
list: "`akm list` moved in 0.9 — use `akm bundle list`.",
|
|
22
|
-
remove: "`akm remove` moved in 0.9 — use `akm bundle remove <source>`.",
|
|
23
|
-
update: "`akm update` moved in 0.9 — use `akm bundle update` (to update akm itself, use `akm upgrade`).",
|
|
24
|
-
// Group renamed to the singular.
|
|
25
|
-
tasks: "the `tasks` group was renamed in 0.9 — use `akm task <subcommand>`.",
|
|
26
|
-
// Verbs absorbed by the `proposal` group.
|
|
27
|
-
extract: "`akm extract` moved in 0.9 — use `akm proposal extract`.",
|
|
28
|
-
propose: "`akm propose` moved in 0.9 — use `akm proposal new`.",
|
|
29
|
-
proposals: "`akm proposals` moved in 0.9 — use `akm proposal list`.",
|
|
30
|
-
accept: "`akm accept` moved in 0.9 — use `akm proposal accept <id>`.",
|
|
31
|
-
reject: '`akm reject` moved in 0.9 — use `akm proposal reject <id> --reason "..."`.',
|
|
32
|
-
diff: "`akm diff` moved in 0.9 — use `akm proposal diff <id>`.",
|
|
33
|
-
revert: "`akm revert` moved in 0.9 — use `akm proposal revert <id>`.",
|
|
34
|
-
reflect: "`akm reflect` was folded into 0.9 — use `akm improve <ref>`.",
|
|
35
|
-
distill: "`akm distill` was folded into 0.9 — use `akm improve <ref>`.",
|
|
36
|
-
// Renamed persistence and observability verbs.
|
|
37
|
-
save: "`akm save` moved in 0.9 — use `akm sync`.",
|
|
38
|
-
events: "`akm events` moved in 0.9 — use `akm log`.",
|
|
39
|
-
// Removed observability surfaces.
|
|
40
|
-
history: "`akm history` was removed in 0.9 — use `akm log --ref <ref>` for an asset's event trail.",
|
|
41
|
-
graph: "`akm graph` was removed in 0.9. The LLM entity graph it inspected was itself retired in 0.9.17-alpha.9 — use `akm show <ref>` for an asset's declared links.",
|
|
42
|
-
lessons: "`akm lessons` was removed in 0.9 — lesson strength is indexed; use `akm search --type lesson`.",
|
|
43
|
-
lesson: "`akm lesson` was removed in 0.9 — lesson strength is indexed; use `akm search --type lesson`.",
|
|
44
|
-
// Relocated guidance / removed asset verbs.
|
|
45
|
-
mv: "`akm mv` was removed in 0.9 — move the file, then run `akm index` and `akm lint` (to carry ranking signal: `bun scripts/rekey-asset-ref.ts <old-ref> <new-ref>`).",
|
|
46
|
-
// Pre-0.9 removals agents still trip over.
|
|
47
|
-
wiki: "the `akm wiki` family was removed in 0.9 — wikis are ordinary knowledge assets; ingest with `akm import <url> --path <subdir>`.",
|
|
48
|
-
backup: "`akm backup` was removed in 0.9 — stop writers and archive current config, data, state, and writable bundles with your normal backup tooling.",
|
|
49
|
-
vault: "the `akm vault ...` family was removed in 0.9 — use `akm env list`/`akm env create` for a whole `.env` group, or `akm secret set <name>` for a single sensitive value.",
|
|
50
|
-
// Group-scoped retirements.
|
|
51
|
-
"env set": "`akm env set` was removed in 0.9 — edit the `.env` file directly; akm loads it as-is.",
|
|
52
|
-
"env unset": "`akm env unset` was removed in 0.9 — edit the `.env` file directly; akm loads it as-is.",
|
|
53
|
-
"registry search": "`akm registry search` was folded into `akm search --from registry` in 0.9.",
|
|
54
|
-
"registry build-index": "`akm registry build-index` moved in 0.9 — maintainers run `bun scripts/build-registry-index.ts`.",
|
|
55
|
-
"workflow template": "`akm workflow template` was folded into `akm workflow create --print` in 0.9.",
|
|
56
|
-
"workflow validate": "`akm workflow validate` was folded into `akm lint --type workflows` in 0.9 (add `--fail-on-flagged` for CI gates).",
|
|
57
|
-
"workflow watch": "`akm workflow watch` was removed in 0.9 — use `akm log --run <run-id>`.",
|
|
58
|
-
"workflow start": "`akm workflow start` was removed in 0.9 — use `akm workflow run <ref>`.",
|
|
59
|
-
"workflow next": "`akm workflow next` was removed in 0.9 — use `akm workflow status <target>` to inspect or `akm workflow run <target>` to execute.",
|
|
60
|
-
"workflow complete": "`akm workflow complete` was removed in 0.9 — `akm workflow run <target>` completes steps automatically; use `akm workflow status <target>` to inspect.",
|
|
61
|
-
"workflow brief": "`akm workflow brief` was removed — the external-driver protocol is gone; `akm workflow run <target>` executes the run and `akm workflow status <target>` inspects it.",
|
|
62
|
-
"workflow report": "`akm workflow report` was removed — the external-driver protocol is gone; `akm workflow run <target>` dispatches and records units itself.",
|
|
63
|
-
"config show": "`akm config show` was removed in 0.9 — use `akm config list`.",
|
|
64
|
-
"config validate": "`akm config validate` was removed in 0.9 — the config file is validated on every load.",
|
|
65
|
-
"task init": "`akm task init` was removed in 0.9 — `akm setup` seeds the default schedules.",
|
|
66
|
-
"task show": "there is no `task show` — task files are indexed assets; use `akm show <ref>`.",
|
|
67
|
-
"task remove": "there is no `task remove` — delete the task YAML, then run `akm task sync` to unbind it.",
|
|
68
|
-
// `improve canary` is NOT here: `akm improve` is a leaf command (a
|
|
69
|
-
// positional `ref`, not a subcommand group), so "canary" never reaches the
|
|
70
|
-
// unknown-command path this table serves — `improve-cli.ts` already
|
|
71
|
-
// self-diagnoses it with a more specific, correct message before this
|
|
72
|
-
// table would ever be consulted.
|
|
73
|
-
"log tail": "`akm log tail` was removed in 0.9 — poll `akm log --since @offset:<id>` (the durable cursor).",
|
|
74
|
-
"log list": "`akm log list` was flattened in 0.9 — bare `akm log` is the same surface.",
|
|
75
|
-
};
|
|
76
|
-
const MIGRATION_POINTER = "Full rename table: `akm help migrate 0.9.0`.";
|
|
77
|
-
/**
|
|
78
|
-
* Replacement hint for a retired spelling, or undefined when the attempted
|
|
79
|
-
* token isn't a known retirement. `parentPath` is the group path already
|
|
80
|
-
* resolved before the unknown token (empty at root), so `env set` and a
|
|
81
|
-
* hypothetical top-level `set` can't collide.
|
|
82
|
-
*/
|
|
83
|
-
export function retiredCommandHint(parentPath, attempted) {
|
|
84
|
-
const key = parentPath.length === 0 ? attempted : `${parentPath[parentPath.length - 1]} ${attempted}`;
|
|
85
|
-
const entry = RETIRED_COMMAND_HINTS[key];
|
|
86
|
-
return entry === undefined ? undefined : `${entry} ${MIGRATION_POINTER}`;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Same idea as {@link RETIRED_COMMAND_HINTS}, but for FLAGS the 0.9 overhaul
|
|
90
|
-
* removed outright rather than commands. Consulted by
|
|
91
|
-
* `src/cli/unknown-flags.ts` BEFORE its own edit-distance did-you-mean, for
|
|
92
|
-
* the same reason: a distance-based suggestion on a retired flag can point at
|
|
93
|
-
* an unrelated survivor rather than the real replacement procedure.
|
|
94
|
-
*
|
|
95
|
-
* Keys are the FULL resolved command path joined with spaces, plus the flag
|
|
96
|
-
* exactly as the unknown-flag scanner reports it (leading dashes, long form
|
|
97
|
-
* only — `--background`, not `-b`): `"<cmd> [sub...] --flag"`. The command
|
|
98
|
-
* path is whatever `unknown-flags.ts`'s `KnownArgs.path` resolved (e.g.
|
|
99
|
-
* `["proposal", "extract"]` for the flag's CURRENT location, not any retired
|
|
100
|
-
* top-level spelling — that command-level retirement is already handled by
|
|
101
|
-
* {@link retiredCommandHint} before flag scanning ever runs).
|
|
102
|
-
*/
|
|
103
|
-
const RETIRED_FLAG_HINTS = {
|
|
104
|
-
"index --background": "`--background` was removed in 0.9 — the flag never actually backgrounded; use `--quiet`.",
|
|
105
|
-
"setup --detect-only": "`--detect-only` was removed in 0.9 — environment detection runs inside `akm setup`; `akm info` reports the configured capabilities.",
|
|
106
|
-
"setup --reset-recommended": "`--reset-recommended` was removed in 0.9 — `akm setup` now offers to apply recommended defaults interactively.",
|
|
107
|
-
"proposal extract --watch": "`--watch` was removed in 0.9 — schedule `akm proposal extract --auto` as a task instead.",
|
|
108
|
-
"proposal extract --debounce-ms": "`--debounce-ms` was removed in 0.9 — schedule `akm proposal extract --auto` as a task instead.",
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* Replacement hint for a retired flag on its current command path, or
|
|
112
|
-
* undefined when the attempted spelling isn't a known retirement.
|
|
113
|
-
*/
|
|
114
|
-
export function retiredFlagHint(path, attempted) {
|
|
115
|
-
const key = `${path.join(" ")} ${attempted}`;
|
|
116
|
-
const entry = RETIRED_FLAG_HINTS[key];
|
|
117
|
-
return entry === undefined ? undefined : `${entry} ${MIGRATION_POINTER}`;
|
|
118
|
-
}
|