@mindrian_os/install 1.13.0-beta.17 → 1.13.0-beta.19
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/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +26 -0
- package/commands/act.md +1 -0
- package/commands/admin.md +1 -0
- package/commands/analyze-needs.md +2 -0
- package/commands/analyze-systems.md +2 -0
- package/commands/analyze-timing.md +2 -0
- package/commands/auto-explore.md +2 -0
- package/commands/beautiful-question.md +2 -0
- package/commands/brain-derive.md +2 -0
- package/commands/build-knowledge.md +2 -0
- package/commands/build-thesis.md +2 -0
- package/commands/causal.md +2 -0
- package/commands/challenge-assumptions.md +2 -0
- package/commands/compare-ventures.md +2 -0
- package/commands/dashboard.md +2 -1
- package/commands/deep-grade.md +2 -0
- package/commands/diagnose.md +21 -1
- package/commands/diagnostics.md +14 -3
- package/commands/doctor.md +4 -1
- package/commands/dogfood-flush.md +92 -0
- package/commands/dominant-designs.md +2 -0
- package/commands/explain-decision.md +2 -0
- package/commands/explore-domains.md +2 -0
- package/commands/explore-futures.md +2 -0
- package/commands/explore-trends.md +2 -0
- package/commands/export.md +1 -0
- package/commands/feynman-timeline-refresh.md +2 -0
- package/commands/file-meeting.md +2 -0
- package/commands/find-analogies.md +1 -0
- package/commands/find-bottlenecks.md +2 -0
- package/commands/find-connections.md +2 -0
- package/commands/funding.md +1 -0
- package/commands/grade.md +2 -0
- package/commands/graph.md +1 -0
- package/commands/hat-briefing.md +1 -0
- package/commands/heal.md +22 -170
- package/commands/help.md +54 -334
- package/commands/hmi-status.md +23 -144
- package/commands/jtbd.md +1 -0
- package/commands/leadership.md +2 -0
- package/commands/lean-canvas.md +2 -0
- package/commands/macro-trends.md +2 -0
- package/commands/map-unknowns.md +2 -0
- package/commands/memory.md +1 -0
- package/commands/models.md +1 -0
- package/commands/mos-reason.md +2 -0
- package/commands/mos.md +139 -0
- package/commands/mullins.md +2 -0
- package/commands/mva-brief.md +2 -0
- package/commands/mva-option.md +2 -0
- package/commands/new-project.md +2 -0
- package/commands/onboard.md +20 -7
- package/commands/operator.md +1 -0
- package/commands/opportunities.md +1 -0
- package/commands/organize.md +22 -469
- package/commands/persona.md +1 -0
- package/commands/pipeline.md +2 -0
- package/commands/present.md +1 -0
- package/commands/publish.md +2 -0
- package/commands/query.md +24 -102
- package/commands/radar.md +2 -0
- package/commands/reanalyze.md +1 -0
- package/commands/research.md +2 -0
- package/commands/room.md +2 -0
- package/commands/rooms.md +1 -0
- package/commands/root-cause.md +2 -0
- package/commands/rs-experts.md +1 -0
- package/commands/rs-explain.md +1 -0
- package/commands/rs-fetch.md +1 -0
- package/commands/rs-thesis.md +1 -0
- package/commands/scenario-plan.md +2 -0
- package/commands/scheduled-tasks.md +1 -0
- package/commands/score-innovation.md +2 -0
- package/commands/scout.md +1 -0
- package/commands/setup.md +2 -0
- package/commands/snapshot.md +2 -0
- package/commands/speakers.md +1 -0
- package/commands/splash.md +5 -2
- package/commands/status.md +1 -0
- package/commands/structure-argument.md +2 -0
- package/commands/suggest-next.md +2 -0
- package/commands/systems-thinking.md +2 -0
- package/commands/think-hats.md +2 -0
- package/commands/update.md +2 -0
- package/commands/user-needs.md +2 -0
- package/commands/validate.md +2 -0
- package/commands/value-proposition.md +2 -0
- package/commands/vault.md +2 -0
- package/commands/visualize.md +24 -29
- package/commands/whitespace.md +2 -1
- package/commands/wiki.md +1 -0
- package/hooks/hooks.json +22 -88
- package/lib/agents/auto-explore-agent.cjs +82 -0
- package/lib/core/breakthrough/canary.cjs +134 -0
- package/lib/core/breakthrough/canary.test.cjs +136 -0
- package/lib/core/breakthrough/detectors.cjs +359 -0
- package/lib/core/breakthrough/detectors.test.cjs +333 -0
- package/lib/core/breakthrough/ethics-fence.cjs +127 -0
- package/lib/core/breakthrough/ethics-fence.test.cjs +178 -0
- package/lib/core/breakthrough/resurfacing.cjs +150 -0
- package/lib/core/breakthrough/resurfacing.test.cjs +233 -0
- package/lib/core/breakthrough/review-queue.cjs +154 -0
- package/lib/core/breakthrough/review-queue.test.cjs +160 -0
- package/lib/core/breakthrough/scanner-d17-d18.test.cjs +229 -0
- package/lib/core/breakthrough/scanner.cjs +426 -0
- package/lib/core/breakthrough/scanner.test.cjs +267 -0
- package/lib/core/breakthrough/schema.cjs +164 -0
- package/lib/core/breakthrough/schema.test.cjs +256 -0
- package/lib/core/breakthrough/scoring.cjs +293 -0
- package/lib/core/breakthrough/scoring.test.cjs +423 -0
- package/lib/core/breakthrough/verb-dispatch.cjs +221 -0
- package/lib/core/breakthrough/verb-dispatch.test.cjs +185 -0
- package/lib/core/breakthrough/voice-scaffold.cjs +247 -0
- package/lib/core/breakthrough/voice-scaffold.test.cjs +251 -0
- package/lib/core/first-touch-version-stamper.cjs +113 -0
- package/lib/core/larry-thinness-acknowledgment.cjs +64 -0
- package/lib/core/larry-thinness-acknowledgment.test.cjs +97 -0
- package/lib/core/llm-name-suggester.cjs +194 -0
- package/lib/core/llm-name-suggester.test.cjs +132 -0
- package/lib/core/mva-orchestrator.cjs +41 -0
- package/lib/core/mva-telemetry.cjs +31 -143
- package/lib/core/navigation/edges.cjs +35 -0
- package/lib/core/navigation/memory-events.cjs +126 -0
- package/lib/core/room-auto-create.cjs +318 -0
- package/lib/core/room-auto-create.test.cjs +198 -0
- package/lib/core/room-discard-cascade.cjs +225 -0
- package/lib/core/room-discard-cascade.test.cjs +135 -0
- package/lib/core/room-name-validator.cjs +132 -0
- package/lib/core/room-name-validator.test.cjs +156 -0
- package/lib/core/room-naming-selector.cjs +357 -0
- package/lib/core/room-naming-selector.test.cjs +277 -0
- package/lib/core/room-receipt-emit.cjs +63 -0
- package/lib/core/room-skeleton-scaffold.cjs +315 -0
- package/lib/core/room-skeleton-scaffold.test.cjs +291 -0
- package/lib/core/stale-copy-scanner.cjs +190 -0
- package/lib/core/state-aware-router.cjs +78 -0
- package/lib/core/telemetry/schema.cjs +168 -0
- package/lib/core/telemetry/schema.test.cjs +124 -0
- package/lib/core/telemetry/validator.cjs +197 -0
- package/lib/core/telemetry/validator.test.cjs +188 -0
- package/lib/core/telemetry/writer.cjs +141 -0
- package/lib/core/telemetry/writer.test.cjs +331 -0
- package/lib/core/terminal-capability.cjs +88 -0
- package/lib/core/venture-shape-nudge.cjs +163 -0
- package/lib/core/venture-shape-nudge.test.cjs +161 -0
- package/lib/core/visual-ops.cjs +70 -2
- package/lib/hmi/selector-dispatcher.cjs +90 -1
- package/lib/hmi/shape-f7-breakthrough-renderer.cjs +222 -0
- package/lib/hmi/shape-f7-breakthrough-renderer.test.cjs +233 -0
- package/lib/memory/body-shape-coverage.test.cjs +268 -0
- package/lib/memory/doctor-deprecation-surface.test.cjs +185 -0
- package/lib/memory/first-touch-version.test.cjs +198 -0
- package/lib/memory/help-coverage.test.cjs +108 -0
- package/lib/memory/help-renderer.test.cjs +145 -0
- package/lib/memory/palette-consistency.test.cjs +127 -0
- package/lib/memory/pending-tension-store.cjs +80 -0
- package/lib/memory/render-v2-disposition.test.cjs +199 -0
- package/lib/memory/run-feynman-tests.cjs +213 -0
- package/lib/memory/sessionstart-coordinator.test.cjs +446 -0
- package/lib/memory/skill-vs-code-drift.test.cjs +257 -0
- package/lib/memory/soft-alias.test.cjs +144 -0
- package/lib/memory/stale-copy-scanner.test.cjs +291 -0
- package/lib/memory/state-aware-router.test.cjs +90 -0
- package/lib/memory/statusline-two-row.test.cjs +338 -0
- package/lib/memory/terminal-capability.test.cjs +155 -0
- package/lib/render/ROOM.md +74 -22
- package/lib/sessionstart/budget-compressor.cjs +130 -0
- package/lib/sessionstart/contributor-interface.cjs +134 -0
- package/lib/sessionstart/contributor-isolator.cjs +128 -0
- package/lib/sessionstart/precedence-ladder.cjs +47 -0
- package/lib/statusline/governing-thought-truncator.cjs +45 -0
- package/lib/statusline/two-row-renderer.cjs +186 -0
- package/lib/statusline/version-resolver.cjs +81 -0
- package/package.json +1 -1
- package/references/visual/ROOM.md +55 -0
- package/references/visual/palette.json +54 -0
- package/skills/larry-personality/SKILL.md +34 -0
- package/skills/ui-system/SKILL.md +109 -1
- package/skills/ui-system/rules/dual-palette.md +156 -0
- package/skills/ui-system/rules/glyph-disambiguation.md +171 -0
- package/skills/ui-system/rules/shape-f-zero-and-six.md +169 -0
|
@@ -1119,6 +1119,12 @@ const TEST_FILES = [
|
|
|
1119
1119
|
path.join(REPO_ROOT, 'tests', 'test-render-v2-jtbd-zone4.cjs'),
|
|
1120
1120
|
path.join(REPO_ROOT, 'tests', 'test-render-v2-provenance.cjs'),
|
|
1121
1121
|
path.join(REPO_ROOT, 'tests', 'test-render-v2-color-overlay.cjs'),
|
|
1122
|
+
// Phase 121.5-04 Sub-plan E: render-v2 disposition CI gate. Asserts the
|
|
1123
|
+
// audit verdict HOLDS, the allowlist matches the canonical agent-surface
|
|
1124
|
+
// set, ROOM.md uses "current" linguistic discipline, and the Phase 102
|
|
1125
|
+
// VALIDATION/VERIFICATION pair has closed (out of draft + record exists).
|
|
1126
|
+
// Pairs with the operator-facing audit at scripts/disposition-render-v2.cjs.
|
|
1127
|
+
path.join(REPO_ROOT, 'lib', 'memory', 'render-v2-disposition.test.cjs'),
|
|
1122
1128
|
// Phase 103 — Memory Continuity Layer (within-session + across-session + cross-room)
|
|
1123
1129
|
path.join(REPO_ROOT, 'tests', 'test-across-session-memory.cjs'),
|
|
1124
1130
|
path.join(REPO_ROOT, 'tests', 'test-cross-room-memory.cjs'),
|
|
@@ -1319,6 +1325,13 @@ const TEST_FILES = [
|
|
|
1319
1325
|
path.join(REPO_ROOT, 'tests', 'test-feynman-timeline-empty-state.cjs'),
|
|
1320
1326
|
path.join(REPO_ROOT, 'tests', 'test-feynman-timeline-runner.cjs'),
|
|
1321
1327
|
path.join(REPO_ROOT, 'tests', 'test-feynman-timeline-canon-part-9-invariant.cjs'),
|
|
1328
|
+
// Phase 121.5 terminal-coherence-capstone (multi-plan; SessionStart Coordinator is Plan 00).
|
|
1329
|
+
// sessionstart-coordinator.test.cjs -> Plan 121.5-00 (D-13..D-16 coordinator + 9 injector refactor)
|
|
1330
|
+
// Aggregator: tests/run-all-121.5.sh. Additional 121.5-* test suites are
|
|
1331
|
+
// already registered above this block (palette-consistency / statusline-two-row /
|
|
1332
|
+
// terminal-capability / help-renderer / help-coverage); the SessionStart
|
|
1333
|
+
// Coordinator suite lands here per the Plan 121.5-00 Task 3 contract.
|
|
1334
|
+
path.join(REPO_ROOT, 'lib', 'memory', 'sessionstart-coordinator.test.cjs'),
|
|
1322
1335
|
// Phase 125 F-Selector Ranker (8 plans: Plan 00 writeEdge through Plan 07 miss).
|
|
1323
1336
|
// navigation-write-edge.test.cjs -> Plan 125-00 (writeEdge primitive)
|
|
1324
1337
|
// navigation-projections.test.cjs -> Plan 125-01 (projection helpers)
|
|
@@ -1373,6 +1386,206 @@ const TEST_FILES = [
|
|
|
1373
1386
|
// Plan 118-06 (rule-linter + Dror 2.0 acceptance harness):
|
|
1374
1387
|
path.join(REPO_ROOT, 'lib', 'core', 'mva-rule-linter.test.cjs'),
|
|
1375
1388
|
path.join(REPO_ROOT, 'tests', 'test-mva-dror-harness.cjs'),
|
|
1389
|
+
// Phase 119-00 Wave 1 (Room-as-Receipt Invariant; D-01 + D-04 + D-06 telemetry mirror).
|
|
1390
|
+
// test-room-auto-create-event-types.cjs -> 119-00 Task 1 (EVENT_TYPES floor + 3 new strings)
|
|
1391
|
+
// venture-shape-nudge.test.cjs -> 119-00 Task 1 (D-02 nudge detector + D-01 invariant)
|
|
1392
|
+
// room-auto-create.test.cjs -> 119-00 Task 2 (slug + scaffold + registry + memory_event)
|
|
1393
|
+
// test-room-auto-create-fingerprint-integration.cjs -> 119-00 Task 3 (sibling hook + nudge shim)
|
|
1394
|
+
// Mirrors the Phase 117-00 + Phase 124-02 additive-tail-append registration precedent.
|
|
1395
|
+
path.join(REPO_ROOT, 'tests', 'test-room-auto-create-event-types.cjs'),
|
|
1396
|
+
path.join(REPO_ROOT, 'lib', 'core', 'venture-shape-nudge.test.cjs'),
|
|
1397
|
+
path.join(REPO_ROOT, 'lib', 'core', 'room-auto-create.test.cjs'),
|
|
1398
|
+
path.join(REPO_ROOT, 'tests', 'test-room-auto-create-fingerprint-integration.cjs'),
|
|
1399
|
+
// Phase 119-02 Wave 1 extension (Room-as-Receipt Invariant; D-05 skeleton scaffold +
|
|
1400
|
+
// Larry thinness-acknowledgment voice line + Canon decision 15 ICM Layer 0 everywhere).
|
|
1401
|
+
// larry-thinness-acknowledgment.test.cjs -> 119-02 Task 1 (THINNESS_VOICE_LINE verbatim + detector)
|
|
1402
|
+
// room-skeleton-scaffold.test.cjs -> 119-02 Task 2 (scaffold unit tests; reentrancy + Part 8/9 invariants)
|
|
1403
|
+
// test-room-skeleton-scaffold-integration.cjs -> 119-02 Task 2 (end-to-end placeholder-room scaffold scenarios)
|
|
1404
|
+
// test-119-02-auto-explore-fire-wiring.cjs -> 119-02 Task 3 (REVISION 2026-05-16: scaffoldRoomSkeleton call
|
|
1405
|
+
// site wired into scripts/auto-explore-fire.cjs;
|
|
1406
|
+
// closes Blocker 1+4 phantom wiring)
|
|
1407
|
+
// Aggregator: tests/test-119-02-scaffold.sh (the 6-gate shell harness).
|
|
1408
|
+
path.join(REPO_ROOT, 'lib', 'core', 'larry-thinness-acknowledgment.test.cjs'),
|
|
1409
|
+
path.join(REPO_ROOT, 'lib', 'core', 'room-skeleton-scaffold.test.cjs'),
|
|
1410
|
+
path.join(REPO_ROOT, 'tests', 'test-room-skeleton-scaffold-integration.cjs'),
|
|
1411
|
+
path.join(REPO_ROOT, 'tests', 'test-119-02-auto-explore-fire-wiring.cjs'),
|
|
1412
|
+
// Phase 119-01 Wave 2 extension (Room-as-Receipt Invariant; D-03 + D-06 retroactive-naming
|
|
1413
|
+
// F.1 selector + discard cascade + LLM-name-suggester + tri-surface adaptation):
|
|
1414
|
+
// llm-name-suggester.test.cjs -> 119-01 Task 1 (HAIKU_MODEL_ID + FALLBACK +
|
|
1415
|
+
// suggest happy/sad + Canon Part 8 grep tripwire +
|
|
1416
|
+
// EVENT_TYPES floor with +1 room_discard_partial_failure)
|
|
1417
|
+
// room-name-validator.test.cjs -> 119-01 Task 2 (four rejection classes +
|
|
1418
|
+
// Windows-reserved defense-in-depth)
|
|
1419
|
+
// room-discard-cascade.test.cjs -> 119-01 Task 2 (transactional discard +
|
|
1420
|
+
// partial-failure recovery via rooms-meta.db)
|
|
1421
|
+
// room-naming-selector.test.cjs -> 119-01 Task 3 (orchestrator + F1_OPTION_LABELS
|
|
1422
|
+
// + DECISION_PATHS + tri-surface envelope)
|
|
1423
|
+
// test-room-naming-selector-integration.cjs -> 119-01 Task 4 (mva-orchestrator hook + e2e shim spawn)
|
|
1424
|
+
// Aggregator: tests/test-119-01-scaffold.sh (the 7-gate shell harness).
|
|
1425
|
+
path.join(REPO_ROOT, 'lib', 'core', 'llm-name-suggester.test.cjs'),
|
|
1426
|
+
path.join(REPO_ROOT, 'lib', 'core', 'room-name-validator.test.cjs'),
|
|
1427
|
+
path.join(REPO_ROOT, 'lib', 'core', 'room-discard-cascade.test.cjs'),
|
|
1428
|
+
path.join(REPO_ROOT, 'lib', 'core', 'room-naming-selector.test.cjs'),
|
|
1429
|
+
path.join(REPO_ROOT, 'tests', 'test-room-naming-selector-integration.cjs'),
|
|
1430
|
+
// Phase 120-00 Wave 1: 4 breakthrough pattern detectors + Breakthrough graph schema.
|
|
1431
|
+
// test-breakthrough-event-types.cjs -> 120-00 Task 1 (EVENT_TYPES floor + 6 new strings;
|
|
1432
|
+
// round-trip via navigation.logMemoryEvent)
|
|
1433
|
+
// test-breakthrough-edge-types.cjs -> 120-00 Task 1 (ALLOWED_EDGE_TYPES floor + DERIVED_FROM;
|
|
1434
|
+
// round-trip via navigation.writeEdge)
|
|
1435
|
+
// lib/core/breakthrough/detectors.test.cjs -> 120-00 Task 2 (DETECTOR_THRESHOLDS verbatim + 4
|
|
1436
|
+
// detectors + classifyFireTier + Canon Part 8 invariant)
|
|
1437
|
+
// lib/core/breakthrough/schema.test.cjs -> 120-00 Task 3 (writeBreakthrough + validateProvenance;
|
|
1438
|
+
// D-20 HARD FLOOR atomic-transaction invariant)
|
|
1439
|
+
// Aggregator: tests/test-120-00-scaffold.sh (the 9-gate shell harness).
|
|
1440
|
+
path.join(REPO_ROOT, 'tests', 'test-breakthrough-event-types.cjs'),
|
|
1441
|
+
path.join(REPO_ROOT, 'tests', 'test-breakthrough-edge-types.cjs'),
|
|
1442
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'detectors.test.cjs'),
|
|
1443
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'schema.test.cjs'),
|
|
1444
|
+
// Phase 120-01 Wave 2: F.7 Breakthrough Surface selector + 5-component scoring formula.
|
|
1445
|
+
// shape-f7-breakthrough-renderer.test.cjs -> 120-01 Task 1 (closed-vocab 5 verbs verbatim
|
|
1446
|
+
// + D-10 mandatory-dismiss invariant +
|
|
1447
|
+
// D-20 HARD FLOOR provenance refusal)
|
|
1448
|
+
// scoring.test.cjs -> 120-01 Task 3 (SCORING_WEIGHTS verbatim
|
|
1449
|
+
// + RECENCY_HALF_LIFE_DAYS verbatim + the
|
|
1450
|
+
// 5-component formula + Laplace prior +
|
|
1451
|
+
// D-19 dismissal-rate canary + Canon Part 8
|
|
1452
|
+
// source-grep + em-dash HARD RULE)
|
|
1453
|
+
// selector-dispatcher additive F.7 branch is verified by tests/test-120-01-scaffold.sh
|
|
1454
|
+
// Gates 1 + 2 (already on disk; no separate
|
|
1455
|
+
// dispatcher unit-test file landed in Plan 120-01).
|
|
1456
|
+
// Aggregator: tests/test-120-01-scaffold.sh (the 8-gate shell harness).
|
|
1457
|
+
path.join(REPO_ROOT, 'lib', 'hmi', 'shape-f7-breakthrough-renderer.test.cjs'),
|
|
1458
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'scoring.test.cjs'),
|
|
1459
|
+
// Phase 120-02 Wave 2: session-start scanner + resurfacing + canary +
|
|
1460
|
+
// verb-dispatch consumer. Wires Plan 120-00 detectors + Plan 120-01 F.7 +
|
|
1461
|
+
// D-13..D-15 resurfacing rules + D-19 canary + 5-verb dispatch.
|
|
1462
|
+
// resurfacing.test.cjs -> 120-02 Task 1 (D-13..D-15 predicates;
|
|
1463
|
+
// SEVEN_DAY_COOLDOWN_MS verbatim; D-13 BOTH-
|
|
1464
|
+
// condition lock; Canon Part 8 source-grep)
|
|
1465
|
+
// canary.test.cjs -> 120-02 Task 1 (D-19 constants verbatim;
|
|
1466
|
+
// computeDismissalRate + isThrottled +
|
|
1467
|
+
// emitThrottleEvent; D19_MIN_SAMPLE floor;
|
|
1468
|
+
// per-kind isolation)
|
|
1469
|
+
// verb-dispatch.test.cjs -> 120-02 Task 2 (5-verb to 3-event lock;
|
|
1470
|
+
// Confirm/Dismiss/File-as-decision emitters;
|
|
1471
|
+
// D-09 FILED_AS_DECISION edge bridge;
|
|
1472
|
+
// D-13 artifact_ids_at_dismiss baseline)
|
|
1473
|
+
// scanner.test.cjs -> 120-02 Task 3 (scanForBreakthroughs +
|
|
1474
|
+
// surfaceBreakthrough; D-16 silence; D-13..
|
|
1475
|
+
// D-15 resurfacing filter; D-19 throttle
|
|
1476
|
+
// filter; D-20 writeBreakthrough contract;
|
|
1477
|
+
// D-20 third structural enforcement point)
|
|
1478
|
+
// check-pending-breakthrough.test.cjs -> 120-02 Task 3 session-start hook
|
|
1479
|
+
// (no-active-room / D-16 silence / happy-path
|
|
1480
|
+
// F.7 surfaced / corrupt-room degrade / hooks
|
|
1481
|
+
// .json wiring)
|
|
1482
|
+
// tests/test-breakthrough-d20-end-to-end.cjs -> 120-02 Task 3 LOAD-BEARING
|
|
1483
|
+
// D-20 invariant: every breakthrough_surfaced
|
|
1484
|
+
// pairs with >= 1 DERIVED_FROM edge; batch
|
|
1485
|
+
// invariant returns zero orphan-provenance
|
|
1486
|
+
// Breakthroughs; surface refusal emits
|
|
1487
|
+
// breakthrough_surface_blocked telemetry.
|
|
1488
|
+
// Aggregator: tests/test-120-02-scaffold.sh (the 8-gate shell harness).
|
|
1489
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'resurfacing.test.cjs'),
|
|
1490
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'canary.test.cjs'),
|
|
1491
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'verb-dispatch.test.cjs'),
|
|
1492
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'scanner.test.cjs'),
|
|
1493
|
+
path.join(REPO_ROOT, 'scripts', 'check-pending-breakthrough.test.cjs'),
|
|
1494
|
+
path.join(REPO_ROOT, 'tests', 'test-breakthrough-d20-end-to-end.cjs'),
|
|
1495
|
+
// Phase 120-03 Wave 2: D-17 voice scaffold + D-18 4-tier ethics fence + SOFT_BAND
|
|
1496
|
+
// review queue + Larry skill update. The conversational + ethical-enforcement
|
|
1497
|
+
// layer that converts the math-detected breakthrough into honest, evidence-backed
|
|
1498
|
+
// Larry voice. Aggregator: tests/test-120-03-scaffold.sh (the 9-gate harness).
|
|
1499
|
+
// voice-scaffold.test.cjs -> 120-03 Task 1 (composeBreakthrough
|
|
1500
|
+
// VoiceLine + auditVoiceLine + the
|
|
1501
|
+
// 4 D-17 rule predicates + frozen
|
|
1502
|
+
// constants verbatim)
|
|
1503
|
+
// ethics-fence.test.cjs -> 120-03 Task 2 (classifyEthicsBand
|
|
1504
|
+
// + 4 frozen threshold constants +
|
|
1505
|
+
// queueForReview happy path +
|
|
1506
|
+
// memory_event mirror)
|
|
1507
|
+
// review-queue.test.cjs -> 120-03 Task 2 (openReviewQueue +
|
|
1508
|
+
// .rooms/breakthrough-review-queue.db
|
|
1509
|
+
// schema + insertReviewCandidate +
|
|
1510
|
+
// listPendingReviews + graceful EACCES
|
|
1511
|
+
// fallback)
|
|
1512
|
+
// scanner-d17-d18.test.cjs -> 120-03 Task 3 (scanner integration
|
|
1513
|
+
// of voice-scaffold + ethics-fence;
|
|
1514
|
+
// F.7 renderer voice_line slot; D-17
|
|
1515
|
+
// violator -> structural default)
|
|
1516
|
+
// tests/test-breakthrough-d17-voice-audit.cjs -> 120-03 Task 1 (D-17 audit catalog
|
|
1517
|
+
// end-to-end: 8-candidate matrix +
|
|
1518
|
+
// per-rule violator/valid pairs)
|
|
1519
|
+
// tests/test-breakthrough-d18-ethics-fence.cjs -> 120-03 Task 2 (D-18 4-band end-to-end:
|
|
1520
|
+
// SOFT_BAND queue + memory_event; no
|
|
1521
|
+
// breakthrough_surfaced from SOFT_BAND)
|
|
1522
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'voice-scaffold.test.cjs'),
|
|
1523
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'ethics-fence.test.cjs'),
|
|
1524
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'review-queue.test.cjs'),
|
|
1525
|
+
path.join(REPO_ROOT, 'lib', 'core', 'breakthrough', 'scanner-d17-d18.test.cjs'),
|
|
1526
|
+
path.join(REPO_ROOT, 'tests', 'test-breakthrough-d17-voice-audit.cjs'),
|
|
1527
|
+
path.join(REPO_ROOT, 'tests', 'test-breakthrough-d18-ethics-fence.cjs'),
|
|
1528
|
+
// Phase 121-00 (Wave 1, Foundation): unified trajectory-telemetry writer
|
|
1529
|
+
// chokepoint + frozen v1 schema + Canon Part 8 emit-time validator. The
|
|
1530
|
+
// architectural ancestor is lib/core/mva-telemetry.cjs (Phase 118); this
|
|
1531
|
+
// module consolidates the 4 piecemeal writers (mva, query-efficiency,
|
|
1532
|
+
// selector, navigation-bypass) into ONE emit() entry point with
|
|
1533
|
+
// ISO-week rotation (events-YYYY-WNN.jsonl) and a per-row schema_version
|
|
1534
|
+
// (Number 1). schema.test.cjs (2 cases) asserts EVENT_TYPES frozen at 15
|
|
1535
|
+
// + ALLOWED_FIELDS shape. validator.test.cjs (7 cases) asserts the
|
|
1536
|
+
// Canon Part 8 constitutional gate: unknown_event + unknown_field + 7
|
|
1537
|
+
// adversarial forbidden-pattern rejections (Cypher / email / phone /
|
|
1538
|
+
// brain host URL / absolute path / raw hex / free-text prose). The
|
|
1539
|
+
// sha256-in-dedicated-field sanity case confirms hash-class fields are
|
|
1540
|
+
// NOT false-flagged. writer.test.cjs (10 cases) asserts the chokepoint
|
|
1541
|
+
// contract end-to-end: export surface, telemetryDir under HOME,
|
|
1542
|
+
// isoWeekFilename zero-padding, telemetryFile composition, emit() JSONL
|
|
1543
|
+
// shape (schema_version=1 Number + ISO-8601 timestamp + session_id +
|
|
1544
|
+
// payload), throws on unknown event, throws on Part 8 forbidden pattern,
|
|
1545
|
+
// recursive mkdir + silent fs-error swallow, two emits 5ms apart in
|
|
1546
|
+
// same ISO-week file, all lines JSON.parseable with no BOM.
|
|
1547
|
+
path.join(REPO_ROOT, 'lib', 'core', 'telemetry', 'schema.test.cjs'),
|
|
1548
|
+
path.join(REPO_ROOT, 'lib', 'core', 'telemetry', 'validator.test.cjs'),
|
|
1549
|
+
path.join(REPO_ROOT, 'lib', 'core', 'telemetry', 'writer.test.cjs'),
|
|
1550
|
+
// Phase 121-01 Task 1 (Wave 1, atomic cutover): the one-time idempotent
|
|
1551
|
+
// migration script that merges the 4 piecemeal telemetry sources
|
|
1552
|
+
// (mva.jsonl, selector.jsonl, navigation-bypass.jsonl,
|
|
1553
|
+
// query-efficiency.jsonl) into the unified events-YYYY-WNN.jsonl stream
|
|
1554
|
+
// produced by writer.cjs. 8 fixture tests cover: empty source dir
|
|
1555
|
+
// no-op, legacy-shape normalization to command_invocation, mva
|
|
1556
|
+
// timestamp-order + schema_version=1 (Number), source rename to
|
|
1557
|
+
// *.pre-v121.bak, sha256-fingerprint idempotence on re-run, mixed-week
|
|
1558
|
+
// ISO split (W19/W20), Canon Part 8 forbidden-pattern quarantine
|
|
1559
|
+
// without abort, stdout summary JSON shape. Hermetic per-test
|
|
1560
|
+
// tmpdir + HOME swap; mirrors writer.test.cjs scaffolding.
|
|
1561
|
+
path.join(REPO_ROOT, 'scripts', 'migrate-telemetry-v1.test.cjs'),
|
|
1562
|
+
// Phase 121-02 Task 1..4 (Wave 2, capture-point wire-ins): 4 integration
|
|
1563
|
+
// test files each verify that a high-signal capture point routes its
|
|
1564
|
+
// emit through lib/core/telemetry/writer.cjs into the unified
|
|
1565
|
+
// events-YYYY-WNN.jsonl stream. D-04 selector_pick (88.2/125 ranker) +
|
|
1566
|
+
// D-05 tension_engagement (Phase 116) + D-06 auto_explore_decision
|
|
1567
|
+
// (Phase 117) + D-07 breakthrough_dismissed (Phase 120 + ethics_tier +
|
|
1568
|
+
// voice_audit_pass). 4 tests per file (16 total); each asserts the
|
|
1569
|
+
// event lands with correct ALLOWED_FIELDS shape, non-blocking semantics
|
|
1570
|
+
// (telemetry validation failure does NOT crash the shipping behavior),
|
|
1571
|
+
// and that user-initiated state transitions are captured while
|
|
1572
|
+
// system-driven transitions (decay, throttle, skip) are excluded.
|
|
1573
|
+
path.join(REPO_ROOT, 'tests', 'test-121-02-selector-pick-capture.cjs'),
|
|
1574
|
+
path.join(REPO_ROOT, 'tests', 'test-121-02-tension-engagement-capture.cjs'),
|
|
1575
|
+
path.join(REPO_ROOT, 'tests', 'test-121-02-auto-explore-capture.cjs'),
|
|
1576
|
+
path.join(REPO_ROOT, 'tests', 'test-121-02-breakthrough-dismissed-capture.cjs'),
|
|
1577
|
+
// Phase 121-03 Task 1..4 (Wave 2, secondary D-09 capture points): 3 integration
|
|
1578
|
+
// tests + 1 drowning-protection fixture. D-09 ships three lower-signal but
|
|
1579
|
+
// broader-sweep emit surfaces: empathy audit observation CLI harness +
|
|
1580
|
+
// Phase 119 room-as-receipt helper module + PostToolUse /mos:* broad sweep
|
|
1581
|
+
// (100% sampling, type-discriminator-isolated bucket). The drowning-protection
|
|
1582
|
+
// fixture proves the type discriminator works: 100 command_invocation events
|
|
1583
|
+
// + 10 selector_pick events to a tmpdir, type-filter isolates them so SEED-002
|
|
1584
|
+
// consumers can drop the bucket without losing the high-signal stream.
|
|
1585
|
+
path.join(REPO_ROOT, 'tests', 'test-121-03-empathy-observation.cjs'),
|
|
1586
|
+
path.join(REPO_ROOT, 'tests', 'test-121-03-room-receipt-emit.cjs'),
|
|
1587
|
+
path.join(REPO_ROOT, 'tests', 'test-121-03-command-invocation-hook.cjs'),
|
|
1588
|
+
path.join(REPO_ROOT, 'tests', 'test-121-03-drowning-protection.cjs'),
|
|
1376
1589
|
];
|
|
1377
1590
|
|
|
1378
1591
|
// Exit code convention for child tests:
|