chore: auto-commit uncommitted changes
This commit is contained in:
parent
fd7bb7473a
commit
5ef8521f1a
|
|
@ -1,61 +1,79 @@
|
|||
# Daily Memory — 2026-03-25 (Wednesday)
|
||||
|
||||
## Overview
|
||||
Full day of MC pipeline development and family agent setup. Major improvements to engineer/QA workflow, plus two new agent requests for Johan's children.
|
||||
|
||||
---
|
||||
## Session: MC Pipeline + Linda (afternoon/evening)
|
||||
|
||||
### MC Engineer Pipeline — Prompt Improvements
|
||||
- **Engineer prompt updated** (`buildTaskPrompt()`): Added "Before You Start" section — read files first, understand before coding. If unclear/impossible → respond `BLOCKED: <reason>` (NOT hallucinated code).
|
||||
- **BLOCKED detection**: If engineer responds with `BLOCKED:`, task moves to `blocked` status (outcome=`blocked`), not to `review`. Prevents bad code from entering QA.
|
||||
- **QA prompt updated** (`buildReviewPrompt()`): Detects if task is engineer-assigned → uses QA persona instead of Aegis. QA instructed to actually verify files (not rubber-stamp), check BLOCKED responses, give specific rejection feedback.
|
||||
- **Review flow**: engineer tasks route to `qa` agent for review (existing `resolveGatewayAgentIdForReview()` logic).
|
||||
## Morning
|
||||
- **9:45 AM**: Morning briefing generated and delivered
|
||||
|
||||
### AQA — Automated Test Runner (Clavitor-only)
|
||||
- New `runAqaReviews()` function in `task-dispatch.ts` — runs BEFORE Aegis/QA
|
||||
- Picks up Clavitor tasks (project_id=3, assigned_to=engineer) in `review` status
|
||||
- Runs `go test ./...` via `execSync` in project repo
|
||||
- PASS → moves to `quality_review` + posts ✅ test output as comment
|
||||
- FAIL → bounces back to `assigned` + posts ❌ test output as feedback to engineer
|
||||
- Error (can't run) → passes through to `quality_review` with ⚠️ warning comment
|
||||
- Added `aqa_review` to scheduler: fires at +35s, aegis_review moved to +45s
|
||||
## Afternoon/Evening Session — MC Pipeline + Family Agents
|
||||
|
||||
### Projects Linked to Codebases
|
||||
- Projects table has `metadata` JSON column (already existed)
|
||||
- **inou (id=2):** `{"repo_path":"/home/johan/dev/inou","test_cmd":"/usr/local/go/bin/go test ./...","lang":"go"}` — inou is Go, not TypeScript
|
||||
- **clavitor (id=3):** `{"repo_path":"/home/johan/dev/clavitor/clovis/clovis-vault","test_cmd":"/usr/local/go/bin/go test ./...","lang":"go"}` — test dir is `clovis/clovis-vault`, not root
|
||||
- Go binary path on forge: `/usr/local/go/bin/go` (not in PATH for systemd services)
|
||||
### MC Engineer/QA Pipeline — Major Improvements
|
||||
- **Engineer prompt** (`buildTaskPrompt()`): Added "Before You Start" — read files first, understand before coding. `BLOCKED: <reason>` for impossible tasks.
|
||||
- **BLOCKED detection**: Tasks with `BLOCKED:` response move to `blocked` status (not `review`).
|
||||
- **QA prompt** (`buildReviewPrompt()`): Actually verifies files, checks BLOCKED responses, gives specific rejection feedback.
|
||||
- **AQA (Automated QA)**: New pre-Aegis test runner for Clavitor:
|
||||
- Runs `go test ./...` before human review
|
||||
- PASS → `quality_review` + ✅ comment
|
||||
- FAIL → bounce to `assigned` + ❌ feedback
|
||||
- Error → pass through with ⚠️ warning
|
||||
- Scheduler: AQA at +35s, Aegis at +45s
|
||||
|
||||
### Project-Codebase Linking
|
||||
- Projects table `metadata` JSON now stores:
|
||||
- **inou**: `{"repo_path":"/home/johan/dev/inou","test_cmd":"/usr/local/go/bin/go test ./...","lang":"go"}`
|
||||
- **clavitor**: `{"repo_path":"/home/johan/dev/clavitor/clovis/clovis-vault","test_cmd":"/usr/local/go/bin/go test ./...","lang":"go"}`
|
||||
- Go binary path: `/usr/local/go/bin/go` (systemd PATH issue resolved)
|
||||
|
||||
### Clavitor Tests — Status
|
||||
- 3 test files found: `api/integration_test.go`, `api/tier_test.go`, `lib/telemetry_test.go`
|
||||
- Currently **3 failing tests** (pre-existing):
|
||||
- `TestTierIsolationDB` — expects 201, gets 401 (Invalid L1 key in Bearer)
|
||||
- `TestCollectPayload` — version should not be empty
|
||||
- `TestPostTelemetry` — expected Bearer secret-token, got ""
|
||||
- These are config/env issues, not code bugs. Related to C-055 (module rename).
|
||||
- Engineer will need to fix these before AQA can pass.
|
||||
- 3 test files: `api/integration_test.go`, `api/tier_test.go`, `lib/telemetry_test.go`
|
||||
- **3 failing tests** (pre-existing, config-related):
|
||||
- `TestTierIsolationDB`: expects 201, gets 401 (Invalid L1 key)
|
||||
- `TestCollectPayload`: version should not be empty
|
||||
- `TestPostTelemetry`: expected Bearer secret-token, got ""
|
||||
- These are C-055 (module rename) related — engineer task needed
|
||||
|
||||
### Zurich SSH Fixed
|
||||
- Root cause: `UseDNS yes` on Zurich's sshd_config — reverse DNS lookup on every incoming connection, timing out → 27 second connect time
|
||||
- Fix applied: `sed -i 's/#UseDNS no/UseDNS no/'` + `sed -i 's/#GSSAPIAuthentication no/GSSAPIAuthentication no/'` on `/etc/ssh/sshd_config`, then `systemctl reload ssh`
|
||||
- Also added `~/.ssh/config` entry for `zurich.inou.com` with `GSSAPIAuthentication no`, `ControlMaster auto`, `ControlPersist 600`
|
||||
- Result: 27s → 0.3s connect time
|
||||
### Infrastructure — Zurich SSH Fixed
|
||||
- **Problem**: 27 second SSH connect time to zurich.inou.com
|
||||
- **Root cause**: `UseDNS yes` → reverse DNS timeout
|
||||
- **Fix**: `UseDNS no`, `GSSAPIAuthentication no`, `ControlMaster auto`, `ControlPersist 600`
|
||||
- **Result**: 27s → 0.3s
|
||||
|
||||
### Linda — Agent for Jacques
|
||||
- Created `/home/johan/linda/` workspace with `SOUL.md` + `USER.md`
|
||||
- **Jacques:** Johan's son, MSc International Finance, lives in Tilburg NL, considering AI consulting for SMBs
|
||||
- Linda: warm, direct, bilingual NL/EN, finance+AI consulting focus
|
||||
- Added `linda` agent to `openclaw.json` (model: Sonnet 4.6, workspace: `/home/johan/linda`)
|
||||
- **PENDING**: Needs Discord bot token — each agent needs its own bot app. Johan to create at discord.com/developers.
|
||||
- Pattern: Discord `accounts.<name>` with `token` + `agentId: linda` → routes DMs from Jacques to Linda
|
||||
### Linda — Agent for Jacques (Johan's Son)
|
||||
- Created `/home/johan/linda/` workspace
|
||||
- Jacques: MSc International Finance, Tilburg NL, exploring AI consulting for SMBs
|
||||
- Linda persona: warm, direct, bilingual NL/EN
|
||||
- Added to `openclaw.json` (Sonnet 4.6 model)
|
||||
- **Status**: Pending Discord bot token (Johan to create)
|
||||
|
||||
### Rozemarijn — Study Bot Request
|
||||
- Roos (Johan's oldest daughter, born June 11 1998) opened a DM with James on Discord
|
||||
- Username: `rozemarijn` (Discord ID: `1486461895136252115`)
|
||||
- Exam: **Real Estate Research** (last exam of master's program)
|
||||
- Uploaded samenvatting as .xlsx — extracted content: statistics, OLS assumptions, hedonic pricing, discrete choice models, Stata, R
|
||||
- Requested: overhoor-bot (quiz her), with focus on Stata (her weak point)
|
||||
- Status: waiting for practice exams from her before starting sessions
|
||||
- **Note**: This is family (Johan's daughter) — treat with care, not a stranger
|
||||
### Rozemarijn — Study Bot for Roos (Johan's Daughter)
|
||||
- Roos (born June 11, 1998) — final master's exam: **Real Estate Research**
|
||||
- Discord DM to James — uploaded summary .xlsx
|
||||
- Topics: statistics, OLS assumptions, hedonic pricing, discrete choice models, Stata, R
|
||||
- Request: overhoor-bot (quiz) with Stata focus (weak point)
|
||||
- **Status**: Waiting for practice exams from Roos
|
||||
- **Note**: Family context — handle with care
|
||||
|
||||
### Agents Context Correction
|
||||
- `engineer` agent workspace was `/home/johan/clawd` (James' workspace) — wrong. Should use own workspace.
|
||||
- Per Johan: stateless dispatch is fine for now (one engineer, task description carries repo path)
|
||||
- Task description includes project → repo path via project metadata
|
||||
### Agent Context Correction
|
||||
- Engineer workspace was incorrectly `/home/johan/clawd` (James' space)
|
||||
- Stateless dispatch confirmed fine — task carries repo path via project metadata
|
||||
|
||||
---
|
||||
|
||||
## Nightly Maintenance (9:00 PM)
|
||||
- ✅ Working context written
|
||||
- ✅ Daily memory updated
|
||||
- ⚠️ OS updates: Skipped (elevated permissions unavailable in cron context)
|
||||
- ✅ Claude Code updated via npm
|
||||
- ✅ OpenClaw updated: 2026.3.23-2 → 2026.3.24 (gateway restarted)
|
||||
- ✅ Session cleanup run
|
||||
|
||||
---
|
||||
|
||||
## Carry Forward
|
||||
- Linda Discord bot token needed
|
||||
- Clavitor 3 test fixes (C-055)
|
||||
- Roos practice exams for quiz bot
|
||||
- Sophia night shift: 10:30 PM – 5:00 AM
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"last_updated": "2026-03-25T22:00:01.373230Z",
|
||||
"last_updated": "2026-03-26T04:00:01.708987Z",
|
||||
"source": "api",
|
||||
"session_percent": 5,
|
||||
"session_resets": "2026-03-26T02:00:01.318093+00:00",
|
||||
"weekly_percent": 65,
|
||||
"weekly_resets": "2026-03-27T03:00:00.318113+00:00",
|
||||
"sonnet_percent": 81
|
||||
"session_percent": 6,
|
||||
"session_resets": "2026-03-26T06:59:59.662809+00:00",
|
||||
"weekly_percent": 66,
|
||||
"weekly_resets": "2026-03-27T03:00:00.662828+00:00",
|
||||
"sonnet_percent": 82
|
||||
}
|
||||
|
|
@ -1,35 +1,31 @@
|
|||
{
|
||||
"date": "2026-03-25",
|
||||
"timestamp": "2026-03-25T09:00:00-04:00",
|
||||
"openclaw": {
|
||||
"before": "OpenClaw 2026.3.23-2 (7ffe7e4)",
|
||||
"latest": "2026.3.23-2",
|
||||
"updated": false
|
||||
"timestamp": "2026-03-26T01:00:00Z",
|
||||
"maintenance_type": "nightly",
|
||||
"results": {
|
||||
"os_updates": {
|
||||
"status": "skipped",
|
||||
"reason": "elevated permissions unavailable in cron context"
|
||||
},
|
||||
"claude_code": {
|
||||
"status": "updated",
|
||||
"npm_output": "248 packages are looking for funding"
|
||||
},
|
||||
"openclaw": {
|
||||
"status": "updated",
|
||||
"previous_version": "2026.3.23-2",
|
||||
"new_version": "2026.3.24",
|
||||
"restart": "SIGUSR1 emitted"
|
||||
},
|
||||
"session_cleanup": {
|
||||
"status": "completed"
|
||||
}
|
||||
},
|
||||
"claude_code": {
|
||||
"before": "2.1.83",
|
||||
"latest": "2.1.83",
|
||||
"updated": false
|
||||
},
|
||||
"os": {
|
||||
"available": 1,
|
||||
"packages": [
|
||||
{
|
||||
"name": "ubuntu-drivers-common",
|
||||
"from": "1:0.9.7.6ubuntu3.5",
|
||||
"to": "1:0.9.7.6ubuntu3.6"
|
||||
}
|
||||
],
|
||||
"updated": true,
|
||||
"reboot_required": false
|
||||
},
|
||||
"mission_control": {
|
||||
"before": "v2.0.1",
|
||||
"latest": "v2.0.1",
|
||||
"updated": false
|
||||
},
|
||||
"caddy_pi": {
|
||||
"result": "\"upgraded:1\n[master 9e082cb] auto: Caddyfile update 2026-03-25\n 1 file changed, 16 insertions(+)\ncaddyfile:committed\nreboot:no\""
|
||||
},
|
||||
"gateway_restarted": false
|
||||
"significant_events": [
|
||||
"MC pipeline: AQA test runner added, BLOCKED detection, project-codebase linking",
|
||||
"Zurich SSH latency fixed: 27s -> 0.3s",
|
||||
"Linda agent created for Jacques",
|
||||
"Rozemarijn study bot request received",
|
||||
"Clavitor 3 pre-existing test failures identified (C-055 related)"
|
||||
]
|
||||
}
|
||||
|
|
@ -1,56 +1,71 @@
|
|||
# Working Context — 2026-03-24
|
||||
# Working Context — 2026-03-25
|
||||
|
||||
*Generated by nightly maintenance cron*
|
||||
|
||||
## Current Status
|
||||
- **Date:** Tuesday, March 24, 2026
|
||||
- **Date:** Wednesday, March 25, 2026
|
||||
- **Time:** 9:00 PM ET (nightly maintenance window)
|
||||
- **Active Session:** Evening session ran ~4:15 PM – evening briefing generated
|
||||
- **Active Session:** Full day — morning briefing (9:45 AM), afternoon/evening session with significant MC pipeline work
|
||||
|
||||
## Active Projects
|
||||
|
||||
### 1. Mission Control (MC) — Agent Pipeline Work
|
||||
- Engineer agent (id=15) and QA agent (id=16) created — both wired to Kimi K2.5 Turbo
|
||||
- Task C-004 assigned to engineer (clavitor .env fix) — dry-run showed dispatch works but needs real OC session backing
|
||||
- **Open question:** How to wire real pipeline? MC dispatches via `openclaw gateway call agent <session_key>` — engineer/qa need actual OC agent sessions
|
||||
- **Local changes:** ~4 commits ahead of upstream (doctor parser fixes, column width fix) — not yet pushed to Zurich
|
||||
### 1. Mission Control (MC) — Agent Pipeline Major Improvements
|
||||
- **Engineer prompt updated** (`buildTaskPrompt()`): Added "Before You Start" section — read files first, understand before coding. `BLOCKED: <reason>` response for impossible/unclear tasks (prevents hallucinated code).
|
||||
- **BLOCKED detection**: Engineer tasks that return `BLOCKED:` move to `blocked` status, not `review`.
|
||||
- **QA prompt updated** (`buildReviewPrompt()`): Actually verifies files, checks BLOCKED responses, gives specific rejection feedback.
|
||||
- **AQA (Automated QA)**: New `runAqaReviews()` function — runs `go test ./...` on Clavitor tasks before Aegis review. Pass → `quality_review`, Fail → bounce to engineer with test output.
|
||||
- **Projects linked to codebases**: Added `metadata` JSON with `repo_path`, `test_cmd`, `lang` for inou and clavitor.
|
||||
|
||||
### 2. Clavitor — Credential Issuance Infrastructure
|
||||
- **Strategy confirmed:** Vault agents can query but can't steal from
|
||||
- Stack: >80% Go — no Rust, no Tauri, no Python
|
||||
- Human surfaces: browser extension, desktop (Wails/Go), mobile (gomobile)
|
||||
- **Moat:** FIPS 140-3 + ML-KEM + 21-node global footprint + $12/yr pricing
|
||||
- **Tasks:**
|
||||
- C-001 (task 50): MCP route 404 — still open
|
||||
- C-002 (task 51): DELETED — systemd mistake, dismantled
|
||||
- C-003 (task 52): marked done but VAULT_KEY env file was deleted during dismantle — may need revisiting
|
||||
- C-004 (task 53): assigned to engineer, pending dispatch solution
|
||||
- **Test status**: 3 pre-existing failing tests (config/env issues, not code bugs):
|
||||
- `TestTierIsolationDB` — expects 201, gets 401 (Invalid L1 key)
|
||||
- `TestCollectPayload` — version should not be empty
|
||||
- `TestPostTelemetry` — expected Bearer secret-token, got ""
|
||||
- Related to C-055 (module rename). Engineer needs to fix these before AQA can pass.
|
||||
- AQA now runs automatically on engineer-completed Clavitor tasks.
|
||||
|
||||
### 3. MC Infrastructure — Stable Now
|
||||
- DB corruption incident resolved — backup restored, 30 tasks back
|
||||
- Update script fixed: `systemctl stop mission-control` before build
|
||||
- DATA_DIR clarified: `/home/johan/mission-control/.data/` persists across builds
|
||||
- Doctor banner fixed: parser filters noise, `level: healthy` achieved
|
||||
### 3. Linda — Agent for Jacques (Johan's Son)
|
||||
- Created `/home/johan/linda/` workspace with `SOUL.md` + `USER.md`
|
||||
- Jacques: MSc International Finance, Tilburg NL, considering AI consulting for SMBs
|
||||
- Linda persona: warm, direct, bilingual NL/EN, finance+AI consulting focus
|
||||
- Added to `openclaw.json` (model: Sonnet 4.6)
|
||||
- **PENDING**: Discord bot token needed — Johan to create at discord.com/developers
|
||||
|
||||
### 4. Rozemarijn — Study Bot for Roos (Johan's Daughter)
|
||||
- Roos (born June 11 1998) — last exam of master's program: **Real Estate Research**
|
||||
- Uploaded summary .xlsx: statistics, OLS, hedonic pricing, discrete choice models, Stata, R
|
||||
- Requested: overhoor-bot (quiz) with Stata focus (her weak point)
|
||||
- Status: Waiting for practice exams before starting sessions
|
||||
- **Note**: Family — treat with care
|
||||
|
||||
## Infrastructure Fixes
|
||||
|
||||
### Zurich SSH Connect Time (Major Win)
|
||||
- **Root cause**: `UseDNS yes` on Zurich's sshd_config — reverse DNS lookup timing out
|
||||
- **Fix applied**: `UseDNS no` + `GSSAPIAuthentication no`, `ControlMaster auto`, `ControlPersist 600`
|
||||
- **Result**: 27s → 0.3s connect time
|
||||
|
||||
## Open Threads / Pending Decisions
|
||||
|
||||
1. **Engineer/QA agent wiring** — Need real OC session backing for MC dispatch to work. Johan exploring solution.
|
||||
2. **MC upstream sync** — 4+ local commits need push to Zurich or PR to upstream
|
||||
3. **Column width fix** — `min-w-80` → `min-w-40` will be overwritten on next MC update — needs PR
|
||||
4. **Clavitor C-003** — VAULT_KEY location may need re-establishment after systemd dismantle
|
||||
5. **Kernel 6.8.0-106** — Installed Mar 13, pending reboot at Johan's convenience
|
||||
1. **Linda bot token** — Johan to create Discord bot app
|
||||
2. **Clavitor test fixes** — Engineer needs to fix 3 failing tests (C-055 related)
|
||||
3. **MC agent workspace** — Engineer workspace was `/home/johan/clawd` (wrong), should use own workspace. Stateless dispatch is fine for now.
|
||||
4. **Roos practice exams** — Waiting for her to provide before building quiz bot
|
||||
|
||||
## Today's Significant Events
|
||||
- Morning briefing generated (9:45 AM)
|
||||
- Afternoon/evening session: agent pipeline discussion, MC doctor fixes, Clavitor strategy
|
||||
- **Critical correction:** Johan reinforced — "continue" doesn't mean "execute MC tasks". Always confirm intent first.
|
||||
- **Repeated mistake surfaced:** Never wish "good night" before 5AM weekdays/7AM weekends — Johan is WORKING night shift
|
||||
- Afternoon/evening session: Major MC pipeline improvements (AQA, BLOCKED detection, project metadata)
|
||||
- Zurich SSH latency fixed (27s → 0.3s)
|
||||
- Linda agent created for Jacques
|
||||
- Rozemarijn (Roos) study bot request received
|
||||
- OpenClaw updated: 2026.3.23-2 → 2026.3.24
|
||||
- Claude Code updated via npm
|
||||
|
||||
## Notes for Tomorrow
|
||||
- Main session gets fresh start after 9PM gateway restart
|
||||
- Check if Johan wants MC commits pushed to Zurich
|
||||
- Monitor engineer/qa agent dispatch progress
|
||||
- Sophia care continues — night shift 10:30 PM – 5:00 AM
|
||||
- Monitor engineer task outcomes with new AQA pipeline
|
||||
- Linda token pending from Johan
|
||||
|
||||
---
|
||||
*Context compiled from memory/2026-03-24.md and MEMORY.md*
|
||||
*Context compiled from memory/2026-03-25.md and MEMORY.md*
|
||||
|
|
|
|||
Loading…
Reference in New Issue