ktg-plugin-marketplace/plugins/ms-ai-architect/tests
Kjell Tore Guttormsen 4a615b10ce feat(ms-ai-architect): add lib/atomic-write for crash-safe state files [skip-docs]
Foundation lib for status-fil + lock-fil writes in v1.12.0 cron rewrite.
Pattern: writeFileSync to <path>.tmp.<pid>.<random> then renameSync to
target. Defends against half-written files; readers either see the
previous version or the new one, never a partial.

- atomicWriteSync(path, content) — string or Buffer
- atomicWriteJson(path, obj) — 2-space indent, trailing newline
- Windows EEXIST/EPERM defensive fallback (unlink target + rename)
- Best-effort tmp cleanup on writeFileSync failure
- crypto.randomInt(0, 2**32) two-arg form (unambiguous across Node)

9/9 tests pass including 50-way concurrent-write fuzzer (async-aware
withTmp helper).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 10:32:13 +02:00
..
fixtures chore(privacy): scrub real-org references from plugin internals (phase 2) 2026-05-03 04:28:15 +02:00
kb-update feat(ms-ai-architect): add lib/atomic-write for crash-safe state files [skip-docs] 2026-05-05 10:32:13 +02:00
lib feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
screenshot feat(ms-ai-architect): release v1.11.0 — design-system 100%-adoption + visual upgrade 2026-05-04 17:41:36 +02:00
capture-fixture.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
run-e2e.sh test(ms-ai-architect): playground v3 parser fixture tests + run-e2e integration [skip-docs] 2026-05-03 20:10:21 +02:00
test-ai-act-output.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-cost-output.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-hooks.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-kb-integrity.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-playground-migrations.sh feat(ms-ai-architect): add v1→v2 MIGRATIONS handler with snapshot fixture and idempotency test 2026-05-04 03:14:46 +02:00
test-playground-parsers.sh feat(ms-ai-architect): replace playground v2 with v3 + docs update 2026-05-03 20:16:37 +02:00
test-playground-v3.sh feat(ms-ai-architect): v1.11.0 Sesjon 2 — design-system 100%-adoption (Fase 4-6) [skip-docs] 2026-05-04 16:46:40 +02:00
test-plugin-discovery.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-ros-output.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-security-output.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
test-summary-output.sh feat(ms-ai-architect): add plugin to open marketplace (v1.5.0 baseline) 2026-04-07 17:17:17 +02:00
validate-plugin.sh fix(ms-ai-architect): update validator for plugin:command naming convention 2026-04-07 17:30:22 +02:00