Files
waggle-os/docs/decisions/2026-04-30-wave-1-memory-install-cleanup-LOCKED.md
Oleg Maslov 0c3e2ead3b
Some checks failed
Installer Smoke / installer-smoke (push) Has been cancelled
moving
2026-09-02 10:10:29 +02:00

6.3 KiB

LOCKED Decision — Wave 1 Memory Install Cleanup Plan

Date: 2026-04-30 Status: LOCKED Author: PM Ratified by: Marko ("ok zapamti ovo da se uradi", 2026-04-30) Trigger: Discovery 2026-04-30 da hive-mind-cli postinstall na Windows + Claude Code MCP health-check hook fail-uje sa ENOENT zbog spawn(.cmd) shim resolucije Binds: Wave 1 cleanup brief autoring + Wave 2 cursor-hooks gating Related: feedback_memory_install_dead_simple (NEW, ratifikovana 2026-04-30)


§1 — Decision sazetak

Memory installation za Waggle Solo $19/mo + Pro/Teams tier MORA biti dead-simple zero-config out of box na Windows + macOS + Linux. Ako Solo korisnik (ne developer) treba da debug-uje .cmd shim issues, patch-uje plugin hook-ove, ili manualno unblock-uje quarantined MCP servers — to je launch blocker, ne edge case.

Tactical brzi fix (CC patch hook-a u tekucoj sesiji) je dozvoljen za tvoju testing sesiju, ali strukturalni fix ide u Wave 1 cleanup brief koji PM autoring-uje posle Phase 5 §0 PASS.


§2 — Wave 1 cleanup brief scope (autoring post Phase 5 §0 PASS)

PM (ja) ce autoring brief sa sledecim deliverables za CC izvrsenje:

§2.1 — Hive-mind-cli postinstall script

Cilj: postinstall script u D:\Projects\hive-mind\packages\cli\ koji sam distribuisemo Windows-compatible MCP health-check hook config sa svakim npm install -g @waggle/hive-mind-cli. Ne polazimo od Claude Code generic-a koji ima Windows spawn bug; mi sami nosimo svoj hook.

Acceptance: posle npm install -g @waggle/hive-mind-cli na cisto Windows VM-u, claude mcp list mora pokazivati hive-mind ✓ Connected + bilo koji mcp__hive-mind__* tool call mora da radi bez ENOENT ili quarantine, bez ijednog manual koraka korisnika izmedju install i prvi tool call.

§2.2 — mcp-health-check.js root structural patch

Cilj: u ${CLAUDE_PLUGIN_ROOT}/scripts/hooks/mcp-health-check.js (ili wherever je hook fizicki kod), Windows .cmd resolution + spawn options { shell: true } koji ne breakuje Linux/macOS behavior.

Logika:

  • Detect Windows (process.platform === 'win32')
  • Probati ${name}.cmd ako ${name} ne resolve
  • ILI use spawn(name, args, { shell: true }) na Windows path
  • Preserve POSIX behavior intact

Acceptance: cross-platform CI test koji pokrije sve 3 OS-a, hook ne quarantine validan server.

§2.3 — Dead-simple install acceptance kriterija

Per feedback_memory_install_dead_simple rule:

  • Installer (npm install -g @waggle/hive-mind-cli ili curl|sh installer) MORA setup-ovati sve hooks bez user input
  • Cross-platform Windows + macOS + Linux zero-config out of box
  • Auto-detect MCP klijent (Claude Code, Cursor, native Waggle harness, drugi)
  • Health-check failure mora self-recover (auto-retry sa proper spawn) umesto da kvarantne i zahteva manual unblock
  • Forbidden: post-install required steps koji zahtevaju shell access ili konfiguracioni file edit za bilo sta drugacije od EULA accept + license key entry
  • Forbidden: requiring developer-class debugging za normal install path

Test: install + first-use end-to-end na cisto Windows VM gde korisnik klikne "next next finish" i ima zero configuration kontaktiranja. Ako bilo koji korak zahteva terminal komand izvan instalacionog wizard-a, fail acceptance.

§2.4 — Memory probe end-to-end test

Cilj: verifikovati da posle install + Wave 1 hooks operational, memory probe radi end-to-end:

  1. save_memory — pisi content frame
  2. recall_memory — read taj frame
  3. harvest_local — verifikuj content frames ne samo session telemetry (user-prompt-submit + stop events)
  4. compile_health — surface gaps if any

Acceptance: posle 5-10 min korisnickog rada na cisto VM-u, recall_memory query za nesto memorabilno (npr. "remember X is Y") vrati relevant frame sa odgovarajucim score-om (ne 0.013 telemetry score). Harvest path puni content store, ne samo telemetry.


§3 — Wave 2 cursor-hooks gating

Wave 2 (cursor-hooks) ostaje STANDBY dok Wave 1 cleanup brief ne zatvori sledece:

  • §2.1 postinstall script LIVE u npm registry
  • §2.2 mcp-health-check.js patch merged u main
  • §2.3 dead-simple acceptance criteria validated na cisto Windows + macOS VM
  • §2.4 memory probe end-to-end PASS sa content frames

Wave 2 acceptance kriterija nasleduje istu disciplinu — cursor-hooks moraju takodje zero-config install na cisto Cursor instalaciji bez user debugging.


§4 — Tactical CC patch (tekuca sesija)

Marko CC sesija je dobila instruction Opcija 1 — patch the health-check hook sa Windows .cmd resolution + shell: true. To je dozvoljen kao tactical brzi unblock samo za tu testing sesiju. Patch nece biti merged u main bez Wave 1 cleanup brief acceptance kriterija; tactical patch je session-scoped workaround, ne canonical fix.

Acceptance posle CC tactical patch:

  1. get_identity radi bez ENOENT
  2. Quarantine clear
  3. save_memory + recall_memory probe end-to-end
  4. Harvest path puni content frames (ne samo session telemetry)
  5. CC emit "tactical patch verified — Wave 1 cleanup needed for canonical fix" u report-u

Rezultati feed Wave 1 cleanup brief acceptance criteria — ako tactical patch otkrije dodatne issues (npr. harvest path je broken nezavisno od spawn bug-a), Wave 1 brief inkorporise to.


§5 — Audit trail anchors

  • Memory entry: feedback_memory_install_dead_simple.md (ratifikovana 2026-04-30)
  • Tekuca CC sesija report: paste-ovan u PM chat 2026-04-30 (Marko-side testing sesija, ne Phase 5 sesija)
  • Wave 1 cleanup brief: TBD (autoring post Phase 5 §0 PASS, file: briefs/<DATE>-wave-1-memory-install-cleanup.md)
  • Wave 2 cursor-hooks brief: TBD (autoring post Wave 1 acceptance validation, file: briefs/<DATE>-wave-2-cursor-hooks.md)
  • Strateski kontekst: project_locked_decisions (Solo $19 / Teams $49 pricing) + project_waggle_kvark_demand_generation (Waggle = demand generator za KVARK; broken Solo install = broken demand pipeline)

§6 — PM action item summary (tracked u TodoList)

  1. Standby za CC tactical patch verification report — task #18 created
  2. Wave 1 cleanup brief autoring — task #17 created, gated by Phase 5 §0 PASS
  3. Wave 2 cursor-hooks brief autoring — gated by Wave 1 acceptance validation, ne kreira sad task

End of LOCKED decision. Wave 1 cleanup ratifikovan. Tactical CC patch dozvoljen kao session-scoped workaround.