Deploy Poimen Memory K8s cluster with ArgoCD tracking (M2.2, M3.5-M3.7)
ci / markdown (push) Waiting to run

This commit is contained in:
Story Crater Bot
2026-08-22 23:13:42 -07:00
parent 9c723fe66f
commit d3be7f6fd4
105 changed files with 10973 additions and 113 deletions
+39 -2
View File
@@ -4,7 +4,7 @@
|---|---|
| Phase | M1 — Gated loop at L1 |
| Size | M — 13 days |
| Status | ⬜ Not started |
| Status | ✅ Done |
| Flags | — |
| Spec | inlined below |
| Blocks | M1.5 |
@@ -14,6 +14,43 @@
Write the authoritative record — the one artifact everything else is derived
from, and the one that must survive a crash mid-run.
## Files
| Action | Path |
|---|---|
| Create | `crates/mem-store/src/event_log.rs``LogWriter`, `LogReader`, `RunStatus` |
| Replace | `crates/mem-store/src/lib.rs` — replace `pub mod placeholder {}` with `pub mod event_log;` + re-exports |
| Create | `tests/it_event_log.rs` — integration tests (workspace root, 8 assertions) |
## Dependencies
| Crate | Where | Already present? |
|---|---|---|
| `ulid` or `rusty_ulid` | `crates/mem-store/Cargo.toml` | ❌ add — for sortable run IDs |
| `tokio` (fs feature) | `crates/mem-store/Cargo.toml` | ✅ yes |
| `serde`, `serde_json` | `crates/mem-store/Cargo.toml` | ✅ yes |
## Existing code to reuse
- `LoopEvent` from `gated_loop.rs` (M1.5) — the events to serialize
- `Level` from `domain.rs` — carried in every record
- Pattern reference: `lessons_cmd.rs` has a JSONL writer for `Event` types (`events.jsonl`).
Same concept but **different event schema** and **different storage location**:
- `lessons_cmd.rs` writes `~/.mem/events.jsonl` (command execution events)
- M1.6 writes `log/<project>/<query>/<run-id>.jsonl` (gate decision events)
- Do not unify them. They serve different purposes.
## Output path convention
```
log/
poimen/
tool-failures/
01HXYZ....jsonl ← ULID, lexicographically sortable by time
architecture-decisions/
01HXYZ....jsonl
```
## Facts (inlined — no spec read needed)
Path: `log/<project>/<query-id>/<run-id>.jsonl`. Append-only, one object per line.
@@ -80,7 +117,7 @@ fixture.
8. `a8_run_id_sorts_by_time` — three runs, assert lexicographic order equals
chronological order.
**Command:** `cargo test -p mem-store event_log`
**Command:** `cargo test --test it_event_log`
**False pass:**
- Asserting the file parses. A writer that omits `evidence` events entirely