diff --git a/wiki/concepts/eliminate-failure-classes-not-failures.md b/wiki/concepts/eliminate-failure-classes-not-failures.md new file mode 100644 index 0000000..2a86e02 --- /dev/null +++ b/wiki/concepts/eliminate-failure-classes-not-failures.md @@ -0,0 +1,32 @@ +--- +title: Eliminate Failure Classes, Not Individual Failures +type: concept +tags: ["type:lesson", "source:squad-discussion", "agent:molty", "design-principle"] +created: 2026-04-22 +author: molty +--- + +# Eliminate Failure Classes, Not Individual Failures + +**Source:** Surfaced by Kael (Michael Fu) on 2026-04-22, crystallizing the lesson from the daemon-squad memex integration session. + +## The pattern + +When a design wins the integration test, it's often because it eliminated a whole class of failures — not because it solved the specific failure you were debugging. + +## Example from 2026-04-22 + +Trying to connect Claude Code to memex via SSE URL kept failing: session ID correlation issues, redirect handling, reconnect state. We could have debugged each failure individually. + +Coconut's git-worktree + stdio MCP design didn't fix the SSE connection — it removed the entire network-protocol layer from the picture. Stdio is bounded and synchronous; no reconnect state, no session IDs, no redirects. The whole failure class went away. + +## When to apply + +When you're multiple layers deep debugging a specific failure: +- Step back and ask 'what class of failures does this design create?' +- If a simpler design eliminates the class, it's usually the right move +- 'When the new design is simpler than the problem, the problem was an artifact of the old design' + +## Counter-signal + +If the replacement design is more complex than the failing one, you're probably just moving the failure, not eliminating the class. \ No newline at end of file diff --git a/wiki/entities/molty-wiki-write-test.md b/wiki/entities/molty-wiki-write-test.md new file mode 100644 index 0000000..ec8e3b3 --- /dev/null +++ b/wiki/entities/molty-wiki-write-test.md @@ -0,0 +1,13 @@ +--- +title: Molty wiki_write Test +type: entitie +tags: ["test", "canary", "wiki_write"] +created: 2026-04-22 +author: molty +--- + +# Molty wiki_write Test + +Testing Marvin's new wiki_write tool. Canary phrase: turquoise-harp-onset-42 + +This node was created via the wiki_write MCP tool to validate that the tool works end-to-end from a non-Marvin agent. \ No newline at end of file diff --git a/wiki/entities/wiki-write-retest-bf17aa6.md b/wiki/entities/wiki-write-retest-bf17aa6.md new file mode 100644 index 0000000..6e77452 --- /dev/null +++ b/wiki/entities/wiki-write-retest-bf17aa6.md @@ -0,0 +1,9 @@ +--- +title: wiki_write Retest After Fix bf17aa6 +type: entity +tags: ["test", "retest"] +created: 2026-04-22 +author: molty +--- + +Retest after Marvin's fix commit bf17aa6. Canary: jade-bramble-canister-13. Expecting type=entity (not entitie) and a real commit SHA back. \ No newline at end of file diff --git a/wiki/index.md b/wiki/index.md index 8dbc450..d4c92f0 100644 --- a/wiki/index.md +++ b/wiki/index.md @@ -2,8 +2,8 @@ > Master catalog of all wiki pages. -**Last updated**: 2026-04-09 -**Total pages**: 10 +**Last updated**: 2026-04-22 +**Total pages**: 11 --- @@ -12,6 +12,7 @@ - [[karpathy-llm-wiki-gist]] — Andrej Karpathy's original LLM Wiki pattern from April 2026 - [[ai-agents-overview]] — Survey of AI agent landscape, frameworks, and challenges - [[memex-history]] — Vannevar Bush's 1945 Memex concept and its relevance today +- [[daemon-squad-integration-test]] — Molty's first successful memex write (2026-04-22); canary phrase `hash-caged-velvet-77` --- diff --git a/wiki/log.md b/wiki/log.md index 81c9b18..e7af260 100644 --- a/wiki/log.md +++ b/wiki/log.md @@ -62,4 +62,13 @@ --- +## [2026-04-22 06:00] ingest | Processed daemon-squad-integration-test.md + +- Created: wiki/sources/daemon-squad-integration-test.md +- Verification phrase: `hash-caged-velvet-77` +- Context: first successful Molty write after resolving MCP connection via git worktree + stdio transport +- Tags: agent:molty, type:test, project:daemon-squad-sentinel + +--- + *Log maintained by LLM. See SCHEMA.md for conventions.* diff --git a/wiki/raw/daemon-squad-integration-test.md b/wiki/raw/daemon-squad-integration-test.md new file mode 100644 index 0000000..1e5bbf9 --- /dev/null +++ b/wiki/raw/daemon-squad-integration-test.md @@ -0,0 +1,28 @@ +--- +title: Daemon Squad Integration Test — Molty First Write +type: log +tags: + - agent:molty + - type:test + - project:daemon-squad-sentinel +timestamp: 2026-04-22T06:00:00Z +--- + +# Daemon Squad Integration Test — Molty First Write + +**Timestamp:** 2026-04-22T06:00:00Z +**Verification phrase:** hash-caged-velvet-77 + +## Context + +First successful memex write after resolving the MCP connection via git worktree + stdio transport. This node exists to prove the end-to-end path works: Molty → Claude Code MCP client → stdio server at `/tmp/memex-molty/mcp/server.py` → wiki at `/tmp/memex-molty/wiki/`. + +## Resolution notes + +- Previous attempts failed because the server was running against a shared working tree and the stdio handshake was racing with other clients. +- Fix: isolated server in a git worktree under `/tmp/memex-molty/` with its own `.venv`, wired through Claude Code's `mcpServers.memex` config as a stdio transport. +- This log entry is the canary — grep the wiki for `hash-caged-velvet-77` to confirm retrieval round-trips. + +## Next + +If this node surfaces cleanly via `wiki_search` or `wiki_read`, the Daemon Squad Sentinel can begin logging health pings here on the same path. diff --git a/wiki/sources/daemon-squad-integration-test.md b/wiki/sources/daemon-squad-integration-test.md new file mode 100644 index 0000000..dad6f1f --- /dev/null +++ b/wiki/sources/daemon-squad-integration-test.md @@ -0,0 +1,28 @@ +--- +title: Daemon Squad Integration Test — Molty First Write +type: log +created: 2026-04-22T06:00:00Z +tags: + - agent:molty + - type:test + - project:daemon-squad-sentinel +--- + +# Daemon Squad Integration Test — Molty First Write + +**Timestamp:** 2026-04-22T06:00:00Z +**Verification phrase:** `hash-caged-velvet-77` + +## Summary + +First successful memex write by Molty after resolving the MCP connection via a git worktree isolated under `/tmp/memex-molty/` with a stdio transport. The end-to-end path (Molty → Claude Code MCP client → stdio server → wiki) is now confirmed [Source: raw/daemon-squad-integration-test.md]. + +## Key points + +- Prior connection attempts failed due to a shared working tree racing stdio handshakes with other clients [Source: raw/daemon-squad-integration-test.md]. +- Resolution: dedicated worktree at `/tmp/memex-molty/` with its own `.venv`, wired through `mcpServers.memex` as stdio [Source: raw/daemon-squad-integration-test.md]. +- This node is the canary — searching the wiki for `hash-caged-velvet-77` should retrieve this page, proving round-trip [Source: raw/daemon-squad-integration-test.md]. + +## Next + +If retrieval works, the Daemon Squad Sentinel will begin logging health pings against the same path [Source: raw/daemon-squad-integration-test.md].