akm-cli 0.9.0-rc.2 → 0.9.0-rc.4

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.
Files changed (115) hide show
  1. package/CHANGELOG.md +40 -12
  2. package/README.md +7 -8
  3. package/SECURITY.md +5 -3
  4. package/dist/akm +44 -33
  5. package/dist/akm-migrate-storage +44 -33
  6. package/dist/assets/backends/schtasks-template.xml +2 -1
  7. package/dist/assets/improve-strategies/catchup.json +3 -1
  8. package/dist/assets/improve-strategies/consolidate.json +3 -1
  9. package/dist/assets/improve-strategies/frequent.json +3 -1
  10. package/dist/assets/improve-strategies/graph-refresh.json +3 -1
  11. package/dist/assets/improve-strategies/memory-focus.json +4 -1
  12. package/dist/assets/improve-strategies/proactive-maintenance.json +1 -0
  13. package/dist/assets/improve-strategies/quick.json +3 -1
  14. package/dist/assets/improve-strategies/recombine-only.json +2 -0
  15. package/dist/assets/improve-strategies/reflect-distill.json +1 -0
  16. package/dist/assets/improve-strategies/synthesize.json +2 -0
  17. package/dist/assets/tasks/core/backup.yml +2 -2
  18. package/dist/cli/config-migrate.js +554 -26
  19. package/dist/cli.js +28 -11
  20. package/dist/commands/backup-cli.js +6 -4
  21. package/dist/commands/config-cli.js +10 -3
  22. package/dist/commands/feedback-cli.js +24 -7
  23. package/dist/commands/health/checks.js +94 -15
  24. package/dist/commands/health/html-report.js +23 -2
  25. package/dist/commands/health/improve-metrics.js +45 -6
  26. package/dist/commands/health/md-report.js +10 -1
  27. package/dist/commands/health/surfaces.js +2 -1
  28. package/dist/commands/health/windows.js +1 -1
  29. package/dist/commands/health.js +1 -1
  30. package/dist/commands/improve/anti-collapse.js +3 -3
  31. package/dist/commands/improve/collapse-detector.js +5 -5
  32. package/dist/commands/improve/consolidate.js +123 -66
  33. package/dist/commands/improve/distill/promote-memory.js +8 -6
  34. package/dist/commands/improve/distill/quality-gate.js +1 -1
  35. package/dist/commands/improve/distill-guards.js +1 -1
  36. package/dist/commands/improve/distill-promotion-policy.js +32 -26
  37. package/dist/commands/improve/distill.js +52 -36
  38. package/dist/commands/improve/eligibility.js +9 -8
  39. package/dist/commands/improve/extract-prompt.js +2 -2
  40. package/dist/commands/improve/extract.js +43 -11
  41. package/dist/commands/improve/improve-auto-accept.js +14 -28
  42. package/dist/commands/improve/improve-cli.js +4 -2
  43. package/dist/commands/improve/improve-strategies.js +2 -1
  44. package/dist/commands/improve/improve.js +49 -8
  45. package/dist/commands/improve/loop-stages.js +11 -6
  46. package/dist/commands/improve/preparation.js +51 -17
  47. package/dist/commands/improve/procedural.js +10 -6
  48. package/dist/commands/improve/recombine.js +31 -7
  49. package/dist/commands/improve/reflect.js +24 -14
  50. package/dist/commands/improve/salience.js +5 -1
  51. package/dist/commands/improve/source-identity.js +43 -0
  52. package/dist/commands/migrate-cli.js +36 -0
  53. package/dist/commands/mv-cli.js +647 -258
  54. package/dist/commands/proposal/drain.js +16 -4
  55. package/dist/commands/proposal/proposal-cli.js +3 -2
  56. package/dist/commands/proposal/proposal.js +16 -55
  57. package/dist/commands/proposal/repository.js +664 -58
  58. package/dist/commands/read/curate.js +4 -2
  59. package/dist/commands/read/knowledge.js +4 -1
  60. package/dist/commands/read/search.js +6 -2
  61. package/dist/commands/read/show.js +8 -7
  62. package/dist/commands/sources/self-update.js +156 -112
  63. package/dist/commands/sources/sources-cli.js +7 -2
  64. package/dist/commands/tasks/default-tasks.js +5 -5
  65. package/dist/commands/tasks/tasks-cli.js +7 -3
  66. package/dist/commands/tasks/tasks.js +261 -68
  67. package/dist/core/common.js +36 -3
  68. package/dist/core/config/config-io.js +2 -2
  69. package/dist/core/config/config-schema.js +15 -3
  70. package/dist/core/config/config.js +14 -13
  71. package/dist/core/file-lock.js +2 -2
  72. package/dist/core/improve-result.js +87 -7
  73. package/dist/core/migration-backup.js +816 -171
  74. package/dist/core/migration-operation.js +44 -0
  75. package/dist/core/state/migrations.js +4 -7
  76. package/dist/core/state-db.js +23 -7
  77. package/dist/core/write-source.js +86 -18
  78. package/dist/indexer/db/db.js +109 -53
  79. package/dist/indexer/index-writer-lock.js +38 -37
  80. package/dist/indexer/index-written-assets.js +73 -56
  81. package/dist/indexer/indexer.js +5 -1
  82. package/dist/indexer/search/search-source.js +2 -2
  83. package/dist/indexer/usage/usage-events.js +8 -2
  84. package/dist/integrations/agent/engine-resolution.js +14 -7
  85. package/dist/scripts/migrate-storage.js +887 -992
  86. package/dist/scripts/migrations/import-fs-improve-runs-to-db.js +494 -574
  87. package/dist/setup/detected-engines.js +7 -13
  88. package/dist/setup/engine-config.js +14 -4
  89. package/dist/setup/setup.js +1 -1
  90. package/dist/setup/steps/connection.js +1 -1
  91. package/dist/setup/steps/tasks.js +1 -1
  92. package/dist/sources/providers/git-stash.js +58 -21
  93. package/dist/sources/providers/git.js +1 -1
  94. package/dist/storage/engines/sqlite-migrations.js +138 -3
  95. package/dist/storage/repositories/events-repository.js +24 -0
  96. package/dist/storage/repositories/proposals-repository.js +14 -0
  97. package/dist/storage/repositories/task-history-repository.js +30 -3
  98. package/dist/tasks/backends/cron.js +71 -38
  99. package/dist/tasks/backends/exec-utils.js +55 -3
  100. package/dist/tasks/backends/launchd.js +241 -50
  101. package/dist/tasks/backends/schtasks.js +434 -59
  102. package/dist/tasks/command-executable.js +93 -0
  103. package/dist/tasks/embedded.js +2 -0
  104. package/dist/tasks/parser.js +142 -6
  105. package/dist/tasks/resolve-akm-bin.js +19 -4
  106. package/dist/tasks/runner.js +258 -93
  107. package/dist/tasks/schedule.js +108 -19
  108. package/dist/tasks/scheduler-invocation.js +86 -0
  109. package/dist/tasks/task-id.js +37 -0
  110. package/dist/workflows/db.js +24 -13
  111. package/dist/workflows/validator.js +24 -2
  112. package/docs/README.md +103 -0
  113. package/docs/migration/release-notes/0.9.0.md +28 -9
  114. package/docs/migration/v0.8-to-v0.9.md +186 -26
  115. package/package.json +2 -3
package/CHANGELOG.md CHANGED
@@ -8,6 +8,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
8
8
 
9
9
  ### Added
10
10
 
11
+ - **Explicit, crash-resumable 0.9 migration coordination.** `akm migrate
12
+ status` classifies config, `state.db`, and `workflow.db` independently;
13
+ `akm migrate apply [--config <prepared>]` creates a verified,
14
+ installation-scoped backup before sealing ledgers or applying pending
15
+ migrations. Apply and restore use authenticated phase journals, exact
16
+ artifact fingerprints, bounded streaming I/O, SQLite integrity checks,
17
+ active-writer barriers, WAL/SHM-safe publication, and idempotent recovery.
18
+ Routine reads and current database opens no longer depend on a historical
19
+ cutover bundle. See `docs/migration/release-notes/0.9.0.md`.
11
20
  - **Workflow orchestration engine (experimental).** akm can now execute
12
21
  multi-step workflows as deterministic **YAML programs**, driven either by a
13
22
  native engine or by any agent session. This is a new, self-contained
@@ -283,17 +292,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
283
292
  but never written — their citing files are reported in `readOnlyCiters` as
284
293
  manual follow-ups. Output:
285
294
  `{ok, from, to, rewrote: [{file, count}], readOnlyCiters, utilityPreserved}`;
286
- a successful move appends an `mv` event. The operation spans FS + DB and is
287
- not transactional, but its ordering (plan rewrites apply citer edits
288
- rename last → re-key index last) makes an interrupted run safely
289
- re-runnable; with no local index built, the rename still succeeds and the
290
- next `akm index` picks it up, and `utilityPreserved: false` discloses when
291
- an existing index could not be re-keyed (the ranking history then resets
292
- on the next full index). Added to the v1 §9.4 command surface as an
293
- Experimental-tier additive entry (see `STABILITY.md`).
295
+ a successful move appends an exactly-once `mv` event. A durable mutation
296
+ journal stages citer rewrites and the asset publication, preserves
297
+ source-qualified utility/salience history, and resumes index/state
298
+ finalization after interruption. Divergent citers and late-created targets
299
+ fail closed instead of being overwritten. Added to the v1 §9.4 command
300
+ surface as an Experimental-tier additive entry (see `STABILITY.md`).
294
301
 
295
302
  ### Changed
296
303
 
304
+ - **Improve target identity is now end-to-end and source-qualified.** Explicit
305
+ targets govern reads, generated proposals, triage promotion, consolidation,
306
+ retrieval signals, cooldowns, and replay state. Duplicate bare refs in other
307
+ sources no longer affect the selected corpus. Generated lessons and
308
+ provenance follow stash placement conventions and canonical `xrefs`.
309
+ - **Writable Git boundaries commit only operation-owned paths.** Improve,
310
+ proposal, supersedes, and direct write flows preserve unrelated staged or
311
+ dirty work, including files beside generated assets in `content/` layouts.
312
+
297
313
  - **Directory (scope/domain) tokens now always merge into `tags` at index
298
314
  time**, even when an asset sets explicit `tags:` frontmatter. Previously
299
315
  explicit tags suppressed all path-derived tags, so a nested asset like
@@ -334,6 +350,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
334
350
 
335
351
  ### Fixed
336
352
 
353
+ - **Proposal promotion, reversion, and rejection are durable and recoverable.**
354
+ Acceptance and reversion persist target ownership and content fingerprints,
355
+ publish atomically across filesystem layouts, index immediately, commit exact
356
+ Git paths, and emit idempotent lifecycle events. Crash recovery and legacy
357
+ accepted proposals fail closed on ambiguous targets instead of clobbering
358
+ another source.
359
+ - **Engine/setup/health behavior now matches the effective improve plan.**
360
+ Built-in strategies compose over one baseline, setup preserves independent
361
+ general and LLM defaults, native OpenCode SDK execution does not require an
362
+ unused fallback, and health checks each enabled process and credential.
337
363
  - **Check-in directives now survive plain-text output and `workflow
338
364
  status`** (check-in review C2/M1): `formatWorkflowNextPlain` and
339
365
  `formatWorkflowStatusPlain` render the `CONTINUE` directive, and every
@@ -1208,14 +1234,16 @@ proposal and log storage, `--format html` output, and per-stage LLM telemetry.
1208
1234
 
1209
1235
  ### Added
1210
1236
 
1211
- - **Cross-runtime: akm now runs on Node.js (≥ 20) in addition to Bun** (#560,
1237
+ - **Cross-runtime: akm now runs on Node.js >= 20.12 in addition to Bun** (#560,
1212
1238
  #465). A two-file runtime boundary (`src/storage/database.ts` owns SQLite via
1213
1239
  `bun:sqlite` on Bun / `better-sqlite3` on Node; `src/runtime.ts` owns every
1214
1240
  `Bun.*` API) contains all runtime-specific code, enforced by a lint guard so it
1215
1241
  cannot leak back out. A CI `node-smoke` matrix runs the built CLI under Node
1216
- 20 and 22. **Minimum Node is 20** — the prompts dependency (`@clack/core`) uses
1217
- `node:util.styleText`, added in Node 20.12; Node 18 is EOL and unsupported.
1218
- Bun remains the primary/default runtime.
1242
+ 20 and 22. The prompts dependency (`@clack/core`) uses `node:util.styleText`,
1243
+ added in Node 20.12; Node 18 is EOL and unsupported. The npm package uses Node
1244
+ as its bootstrap and prefers a working Bun >= 1.0 for execution when both are
1245
+ available. Old, unusable, or absent Bun installations fall back to Node.js;
1246
+ standalone binaries remain runtime-free.
1219
1247
  - **`session` asset type — agent sessions are now searchable** (#561). The
1220
1248
  `extract` pass, after distilling memory proposals from a session, additionally
1221
1249
  writes the session itself as a first-class `session` asset
package/README.md CHANGED
@@ -24,13 +24,7 @@ curl -fsSL https://github.com/itlackey/akm/releases/latest/download/install.sh |
24
24
  irm https://github.com/itlackey/akm/releases/latest/download/install.ps1 | iex
25
25
  ```
26
26
 
27
- **Option 2 — Bun (requires [Bun](https://bun.sh) >= 1.0):**
28
-
29
- ```sh
30
- bun install -g akm-cli
31
- ```
32
-
33
- **Option 3 — Node.js (requires Node.js >= 20.12):**
27
+ **Option 2 — npm package (requires [Node.js](https://nodejs.org) >= 20.12):**
34
28
 
35
29
  ```sh
36
30
  npm install -g akm-cli
@@ -38,7 +32,12 @@ npm install -g akm-cli
38
32
 
39
33
  Upgrade in place with `akm upgrade`.
40
34
 
41
- > **AKM 0.9.0 supports three install paths:** prebuilt binary, Bun, or Node.js >= 20.12.
35
+ The npm package always uses Node.js to bootstrap its cross-platform command.
36
+ If a working [Bun](https://bun.sh) >= 1.0 is also on `PATH`, the launcher
37
+ prefers Bun for execution; old, unusable, or absent Bun installations fall back
38
+ to Node.js. Node.js remains required for the npm package. The standalone
39
+ binaries are runtime-free.
40
+
42
41
  > The old `vault` asset type was removed in 0.9.0; use `env` for whole `.env`
43
42
  > groups and `secret` for standalone sensitive values.
44
43
 
package/SECURITY.md CHANGED
@@ -82,9 +82,11 @@ containing secrets or private notes.
82
82
 
83
83
  ## Known non-issues
84
84
 
85
- - **`akm` requires Bun, Node.js >= 20.12, or the prebuilt binary.** Older
86
- Node.js versions are unsupported because required runtime APIs are missing.
87
- This is a compatibility limitation, not a security risk.
85
+ - **The `akm-cli` npm package requires Node.js >= 20.12 as its bootstrap.** A
86
+ working Bun >= 1.0 is preferred for execution when it is also on `PATH`; old,
87
+ unusable, or absent Bun installations fall back to Node.js. Bun does not
88
+ remove the package's Node.js requirement. Standalone binaries are
89
+ runtime-free. This is a compatibility limitation, not a security risk.
88
90
  - **Workflows can read any file the akm process can read.** This is not a
89
91
  bug — see "Threat model" above.
90
92
  - **Installing `akm-cli` runs the preinstall hook.** The hook only validates
package/dist/akm CHANGED
@@ -1,38 +1,49 @@
1
- #!/bin/sh
2
- # This Source Code Form is subject to the terms of the Mozilla Public
3
- # License, v. 2.0. If a copy of the MPL was not distributed with this
4
- # file, You can obtain one at https://mozilla.org/MPL/2.0/.
1
+ #!/usr/bin/env node
2
+ // This Source Code Form is subject to the terms of the Mozilla Public
3
+ // License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ // file, You can obtain one at https://mozilla.org/MPL/2.0/.
5
5
 
6
- case "$0" in
7
- */*) SCRIPT_PATH=$0 ;;
8
- *)
9
- SCRIPT_PATH=$(command -v -- "$0" 2>/dev/null || true)
10
- if [ -z "$SCRIPT_PATH" ]; then
11
- echo "akm launcher could not resolve its own path." >&2
12
- exit 127
13
- fi
14
- ;;
15
- esac
6
+ import { spawn, spawnSync } from "node:child_process";
7
+ import { fileURLToPath } from "node:url";
16
8
 
17
- if command -v readlink >/dev/null 2>&1; then
18
- while [ -L "$SCRIPT_PATH" ]; do
19
- LINK_TARGET=$(readlink "$SCRIPT_PATH")
20
- case "$LINK_TARGET" in
21
- /*) SCRIPT_PATH=$LINK_TARGET ;;
22
- *) SCRIPT_PATH=${SCRIPT_PATH%/*}/$LINK_TARGET ;;
23
- esac
24
- done
25
- fi
9
+ if (!process.versions.bun) {
10
+ const [major = 0, minor = 0] = process.versions.node.split(".").map(Number);
11
+ if (major < 20 || (major === 20 && minor < 12)) {
12
+ console.error("The akm-cli npm package requires Node.js >= 20.12 to bootstrap.");
13
+ process.exit(1);
14
+ }
15
+ }
26
16
 
27
- SCRIPT_DIR=$(CDPATH= cd -- "${SCRIPT_PATH%/*}" && pwd)
17
+ const bunProbe = process.versions.bun
18
+ ? { status: 0, stdout: process.versions.bun }
19
+ : spawnSync("bun", ["--version"], {
20
+ encoding: "utf8",
21
+ stdio: ["ignore", "pipe", "ignore"],
22
+ timeout: 5_000,
23
+ });
24
+ const [bunMajor = 0] = (bunProbe.status === 0 ? bunProbe.stdout.trim() : "").split(".").map(Number);
25
+ const useBun = bunMajor >= 1;
26
+ const bunEntry = fileURLToPath(new URL("./cli.js", import.meta.url));
27
+ const nodeEntry = fileURLToPath(new URL("./cli-node.mjs", import.meta.url));
28
28
 
29
- if command -v bun >/dev/null 2>&1; then
30
- exec bun "$SCRIPT_DIR/cli.js" "$@"
31
- fi
29
+ if (!useBun && !process.versions.bun) {
30
+ await import("./cli-node.mjs");
31
+ } else {
32
+ const command = useBun ? (process.versions.bun ? process.execPath : "bun") : "node";
33
+ const entry = useBun ? bunEntry : nodeEntry;
34
+ const runtime = useBun ? "Bun" : "Node.js";
35
+ const result = await new Promise((resolve) => {
36
+ const child = spawn(command, [entry, ...process.argv.slice(2)], { stdio: "inherit" });
37
+ child.once("error", (error) => resolve({ error }));
38
+ child.once("exit", (code, signal) => resolve({ code, signal }));
39
+ });
32
40
 
33
- if command -v node >/dev/null 2>&1; then
34
- exec node "$SCRIPT_DIR/cli-node.mjs" "$@"
35
- fi
36
-
37
- echo "akm requires Bun or Node.js >= 20.12.0 on PATH." >&2
38
- exit 127
41
+ if (result.error) {
42
+ console.error(`akm launcher could not start ${runtime}: ${result.error.message}`);
43
+ process.exitCode = 127;
44
+ } else if (result.signal) {
45
+ process.kill(process.pid, result.signal);
46
+ } else {
47
+ process.exitCode = result.code ?? 1;
48
+ }
49
+ }
@@ -1,38 +1,49 @@
1
- #!/bin/sh
2
- # This Source Code Form is subject to the terms of the Mozilla Public
3
- # License, v. 2.0. If a copy of the MPL was not distributed with this
4
- # file, You can obtain one at https://mozilla.org/MPL/2.0/.
1
+ #!/usr/bin/env node
2
+ // This Source Code Form is subject to the terms of the Mozilla Public
3
+ // License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ // file, You can obtain one at https://mozilla.org/MPL/2.0/.
5
5
 
6
- case "$0" in
7
- */*) SCRIPT_PATH=$0 ;;
8
- *)
9
- SCRIPT_PATH=$(command -v -- "$0" 2>/dev/null || true)
10
- if [ -z "$SCRIPT_PATH" ]; then
11
- echo "akm-migrate-storage launcher could not resolve its own path." >&2
12
- exit 127
13
- fi
14
- ;;
15
- esac
6
+ import { spawn, spawnSync } from "node:child_process";
7
+ import { fileURLToPath } from "node:url";
16
8
 
17
- if command -v readlink >/dev/null 2>&1; then
18
- while [ -L "$SCRIPT_PATH" ]; do
19
- LINK_TARGET=$(readlink "$SCRIPT_PATH")
20
- case "$LINK_TARGET" in
21
- /*) SCRIPT_PATH=$LINK_TARGET ;;
22
- *) SCRIPT_PATH=${SCRIPT_PATH%/*}/$LINK_TARGET ;;
23
- esac
24
- done
25
- fi
9
+ if (!process.versions.bun) {
10
+ const [major = 0, minor = 0] = process.versions.node.split(".").map(Number);
11
+ if (major < 20 || (major === 20 && minor < 12)) {
12
+ console.error("The akm-cli npm package requires Node.js >= 20.12 to bootstrap.");
13
+ process.exit(1);
14
+ }
15
+ }
26
16
 
27
- SCRIPT_DIR=$(CDPATH= cd -- "${SCRIPT_PATH%/*}" && pwd)
17
+ const bunProbe = process.versions.bun
18
+ ? { status: 0, stdout: process.versions.bun }
19
+ : spawnSync("bun", ["--version"], {
20
+ encoding: "utf8",
21
+ stdio: ["ignore", "pipe", "ignore"],
22
+ timeout: 5_000,
23
+ });
24
+ const [bunMajor = 0] = (bunProbe.status === 0 ? bunProbe.stdout.trim() : "").split(".").map(Number);
25
+ const useBun = bunMajor >= 1;
26
+ const bunEntry = fileURLToPath(new URL("./scripts/migrate-storage.js", import.meta.url));
27
+ const nodeEntry = fileURLToPath(new URL("./migrate-storage-node.mjs", import.meta.url));
28
28
 
29
- if command -v bun >/dev/null 2>&1; then
30
- exec bun "$SCRIPT_DIR/scripts/migrate-storage.js" "$@"
31
- fi
29
+ if (!useBun && !process.versions.bun) {
30
+ await import("./migrate-storage-node.mjs");
31
+ } else {
32
+ const command = useBun ? (process.versions.bun ? process.execPath : "bun") : "node";
33
+ const entry = useBun ? bunEntry : nodeEntry;
34
+ const runtime = useBun ? "Bun" : "Node.js";
35
+ const result = await new Promise((resolve) => {
36
+ const child = spawn(command, [entry, ...process.argv.slice(2)], { stdio: "inherit" });
37
+ child.once("error", (error) => resolve({ error }));
38
+ child.once("exit", (code, signal) => resolve({ code, signal }));
39
+ });
32
40
 
33
- if command -v node >/dev/null 2>&1; then
34
- exec node "$SCRIPT_DIR/migrate-storage-node.mjs" "$@"
35
- fi
36
-
37
- echo "akm-migrate-storage requires Bun or Node.js >= 20.12.0 on PATH." >&2
38
- exit 127
41
+ if (result.error) {
42
+ console.error(`akm-migrate-storage launcher could not start ${runtime}: ${result.error.message}`);
43
+ process.exitCode = 127;
44
+ } else if (result.signal) {
45
+ process.kill(process.pid, result.signal);
46
+ } else {
47
+ process.exitCode = result.code ?? 1;
48
+ }
49
+ }
@@ -3,6 +3,8 @@
3
3
  <RegistrationInfo>
4
4
  <Description>akm scheduled task: {{TASK_ID}}</Description>
5
5
  <URI>{{FOLDER}}{{TASK_ID}}</URI>
6
+ <Source>{{SIGNATURE}}</Source>
7
+ <Documentation>Log target (informational only; schtasks doesn't redirect): {{LOG_PATH}}</Documentation>
6
8
  </RegistrationInfo>
7
9
  <Triggers>
8
10
  {{TRIGGER_XML}}
@@ -25,5 +27,4 @@
25
27
  <Arguments>{{ARGS}}</Arguments>
26
28
  </Exec>
27
29
  </Actions>
28
- <!-- Log target (informational only; schtasks doesn't redirect): {{LOG_PATH}} -->
29
30
  </Task>
@@ -7,7 +7,9 @@
7
7
  "memoryInference": { "enabled": false },
8
8
  "graphExtraction": { "enabled": false },
9
9
  "extract": { "enabled": false },
10
- "triage": { "enabled": true, "applyMode": "queue", "policy": "personal-stash", "maxAcceptsPerRun": 100 }
10
+ "triage": { "enabled": true, "applyMode": "queue", "policy": "personal-stash", "maxAcceptsPerRun": 100 },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false }
11
13
  },
12
14
  "sync": { "enabled": true, "push": true }
13
15
  }
@@ -7,7 +7,9 @@
7
7
  "memoryInference": { "enabled": false },
8
8
  "graphExtraction": { "enabled": false },
9
9
  "extract": { "enabled": false },
10
- "triage": { "enabled": false }
10
+ "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false }
11
13
  },
12
14
  "sync": { "enabled": true, "push": true }
13
15
  }
@@ -7,7 +7,9 @@
7
7
  "memoryInference": { "enabled": true },
8
8
  "graphExtraction": { "enabled": true },
9
9
  "extract": { "enabled": true, "minNewSessions": 3, "triage": { "enabled": true, "minScore": 2 } },
10
- "triage": { "enabled": false }
10
+ "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false }
11
13
  },
12
14
  "sync": { "enabled": true, "push": true }
13
15
  }
@@ -7,7 +7,9 @@
7
7
  "memoryInference": { "enabled": false },
8
8
  "graphExtraction": { "enabled": true, "fullScan": true },
9
9
  "extract": { "enabled": false },
10
- "triage": { "enabled": false }
10
+ "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false }
11
13
  },
12
14
  "sync": { "enabled": true, "push": true }
13
15
  }
@@ -6,7 +6,10 @@
6
6
  "consolidate": { "enabled": false },
7
7
  "memoryInference": { "enabled": true },
8
8
  "graphExtraction": { "enabled": false },
9
- "triage": { "enabled": false }
9
+ "extract": { "enabled": false },
10
+ "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false }
10
13
  },
11
14
  "sync": { "enabled": true, "push": true }
12
15
  }
@@ -10,6 +10,7 @@
10
10
  "memoryInference": { "enabled": false },
11
11
  "graphExtraction": { "enabled": false },
12
12
  "extract": { "enabled": false },
13
+ "validation": { "enabled": false },
13
14
  "triage": {
14
15
  "enabled": true,
15
16
  "applyMode": "promote",
@@ -10,7 +10,9 @@
10
10
  "consolidate": { "enabled": false },
11
11
  "memoryInference": { "enabled": false },
12
12
  "graphExtraction": { "enabled": false },
13
- "triage": { "enabled": false }
13
+ "triage": { "enabled": false },
14
+ "validation": { "enabled": false },
15
+ "proactiveMaintenance": { "enabled": false }
14
16
  },
15
17
  "sync": { "enabled": true, "push": true }
16
18
  }
@@ -8,6 +8,8 @@
8
8
  "graphExtraction": { "enabled": false },
9
9
  "extract": { "enabled": false },
10
10
  "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false },
11
13
  "recombine": {
12
14
  "enabled": true,
13
15
  "minClusterSize": 3,
@@ -15,6 +15,7 @@
15
15
  "triage": { "enabled": true, "minScore": 2 },
16
16
  "minNewSessions": 1
17
17
  },
18
+ "validation": { "enabled": false },
18
19
  "triage": {
19
20
  "enabled": true,
20
21
  "applyMode": "promote",
@@ -8,6 +8,8 @@
8
8
  "graphExtraction": { "enabled": false },
9
9
  "extract": { "enabled": false },
10
10
  "triage": { "enabled": false },
11
+ "validation": { "enabled": false },
12
+ "proactiveMaintenance": { "enabled": false },
11
13
  "recombine": { "enabled": true },
12
14
  "procedural": { "enabled": false }
13
15
  },
@@ -1,5 +1,5 @@
1
1
  version: 2
2
2
  schedule: "0 3 * * 0"
3
3
  command: akm db backups
4
- enabled: true
5
- description: Weekly config/DB backup
4
+ enabled: false
5
+ description: Disabled until akm provides a general recurring backup command