# Journal 2026-08-13 Session: joined soul.demarkus.io, bound this repo, bootstrapped workspace. ## Done - Bound /Users/fritz/latebit/memoryleaderboard to remote soul `soul` (mark://soul.demarkus.io); registered project-scope MCP server in .mcp.json. - Published /memoryleaderboard/index.md hub; linked it from root /index.md Active Plans bullet. ## Gotchas - `demarkus-plugin registry soul-join` arg parser: flags must precede host (`soul-join --bind DIR host`); documented order (`host --bind DIR`) prints usage and fails. - Re-joining an already-joined soul without `--token` clears the token-file column in ~/.demarkus/souls (sets `-`); re-run with the existing token to restore. - MCP server added mid-session is not loadable via ToolSearch; needs session restart. Workaround: drive `demarkus-plugin mcp-serve --soul ` over stdio JSON-RPC (scratchpad mcpcall.sh); mark_publish requires `body` and `expected_version` (0 for create). ## Automode session (later on 2026-08-13) ### Phase 0 recon (done) - Harness: Add concurrency 16-64, Search 16-256; retries 408/425/429/5xx with bounded backoff; top_k fixed 100; smoke test rate-limited 1/hour. - Agentic retrieval legal: only answer generation inside Search is banned. - Cycle 2 dates unpublished; watch github.com/AML-memory/agent-memory-leaderboard and @AgentMemoryL. - Registration deferred: needs user contact details. ### Phase 1 adapter skeleton (done) - Go module github.com/latebit-io/memoryleaderboard; echo v5 (labstack) HTTP, demarkus client via local replace directives. - internal/api: /add, /search, /healthz, auth (Bearer/Token/X-Api-Key); contract tests green. - internal/memory: DemarkusStore, naive tags + lookup ranking (placeholders for distill/nav agents). - scripts/smoke.sh: ephemeral demarkus-server + adapter, 5 assertions green (echo ids, isolation, 401). ### Gotchas - Killing a `go run` PID orphans the compiled child: stale adapter kept port 9311 with a dead token, causing phantom `unauthorized` across three debug rounds while direct client probes passed. Smoke script now kills by port (lsof -t) and runs a built binary. - demarkus-server with no -tokens file: writes fail `not-permitted`; wrong/stale token: `unauthorized`. Distinct statuses, useful for diagnosis. - Echo v5 handlers take `*echo.Context` (pointer), unlike v4. ### Next - Phase 2 agentic search: blocked on echo v5 inference credentials/model choice. - Registration for cycle 2: blocked on user. ## PR 1 merged (2026-08-14) - Squash-merged to main as 406f9a6: adapter skeleton + three CodeRabbit review rounds (auth required at startup, TLS opt-in, pinned VCS deps replacing local replaces, injective base32 paths, listener/shutdown failure propagation, hardened smoke) + /simplify pass (concurrent fetch fan-out bounded at 16, protocol status constants, auth enforced only via wiring, jsonErr/DefaultTopK/searchBudget cleanups). - Deps now pinned: demarkus client v0.24.4, protocol v0.11.0 from published tags. - Phase 1 closed. Next: phase 2 agentic search (needs echo v5 credentials), cycle 2 registration (needs user). ## Related documents - [Agent memory leaderboard](/plans/agent-memory-leaderboard.md): phase 0 and phase 1 of this plan executed here - [Soul join](/plans/soul-join.md): soul-join flow used and its arg-order gotchas - [memoryleaderboard hub](/memoryleaderboard/index.md): project hub published this session