Ingest 2026-05-03 batch 2 — psb-thinking projects + recipes 2026-05-03T02:04:03Z
This commit is contained in:
287
.openclaw-wiki/cache/agent-digest.json
vendored
287
.openclaw-wiki/cache/agent-digest.json
vendored
@@ -2,7 +2,7 @@
|
||||
"pageCounts": {
|
||||
"entity": 0,
|
||||
"concept": 0,
|
||||
"source": 167,
|
||||
"source": 188,
|
||||
"synthesis": 0,
|
||||
"report": 6
|
||||
},
|
||||
@@ -1956,6 +1956,71 @@
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-recipe-70-meg-omega-2-2024",
|
||||
"title": "psb-recipe-70_Meg_Omega_2_2024",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-recipe-70-meg-omega-2-2024.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:02:18.289Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-recipe-hot-for-teacher",
|
||||
"title": "psb-recipe-Hot_for_Teacher",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-recipe-hot-for-teacher.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:02:41.446Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-recipe-john-adams-ne-cider-4-26",
|
||||
"title": "psb-recipe-john-adams-ne-cider-4-26",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-recipe-john-adams-ne-cider-4-26.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:03:03.882Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-recipe-mount-vernon-molasses-george-washington",
|
||||
"title": "psb-recipe-Mount_Vernon_Molasses_George_Washington",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-recipe-mount-vernon-molasses-george-washington.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:03:26.208Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-recipe-seltzer-base-corn-11",
|
||||
"title": "psb-recipe-Seltzer_base_corn_11",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-recipe-seltzer-base-corn-11.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:03:48.552Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-03-01",
|
||||
"title": "psb-thinking-2026-03-01",
|
||||
@@ -2043,7 +2108,7 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:28:34.097Z",
|
||||
"lastTouchedAt": "2026-05-03T01:54:23.818Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
@@ -2056,7 +2121,7 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:28:55.418Z",
|
||||
"lastTouchedAt": "2026-05-03T01:54:46.994Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
@@ -2069,7 +2134,7 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:29:16.719Z",
|
||||
"lastTouchedAt": "2026-05-03T01:55:10.285Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
@@ -2082,7 +2147,7 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:29:38.055Z",
|
||||
"lastTouchedAt": "2026-05-03T01:55:33.521Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
@@ -2095,7 +2160,7 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:29:59.300Z",
|
||||
"lastTouchedAt": "2026-05-03T01:55:56.660Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
@@ -2108,7 +2173,215 @@
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:30:20.705Z",
|
||||
"lastTouchedAt": "2026-05-03T01:56:20.046Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-15",
|
||||
"title": "psb-thinking-2026-04-15",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-15.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:56:43.207Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-16",
|
||||
"title": "psb-thinking-2026-04-16",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-16.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:57:06.697Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-17",
|
||||
"title": "psb-thinking-2026-04-17",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-17.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:57:29.924Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-18",
|
||||
"title": "psb-thinking-2026-04-18",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-18.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:57:53.127Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-23",
|
||||
"title": "psb-thinking-2026-04-23",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-23.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:58:16.317Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-24",
|
||||
"title": "psb-thinking-2026-04-24",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-24.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:58:39.648Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-25",
|
||||
"title": "psb-thinking-2026-04-25",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-25.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:59:02.884Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-26",
|
||||
"title": "psb-thinking-2026-04-26",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-26.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:59:26.141Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-29",
|
||||
"title": "psb-thinking-2026-04-29",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-29.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T01:59:49.317Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-04-30",
|
||||
"title": "psb-thinking-2026-04-30",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-04-30.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:00:12.563Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-2026-05-01",
|
||||
"title": "psb-thinking-2026-05-01",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-2026-05-01.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:00:35.891Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-fermentation-dashboard",
|
||||
"title": "psb-thinking-fermentation-dashboard",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-fermentation-dashboard.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:02:18.239Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-pihole-blocker",
|
||||
"title": "psb-thinking-pihole-blocker",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-pihole-blocker.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:02:41.347Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-robotics-team-agent",
|
||||
"title": "psb-thinking-robotics-team-agent",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-robotics-team-agent.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:00:59.157Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-systemic-settings-loss",
|
||||
"title": "psb-thinking-systemic-settings-loss",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-systemic-settings-loss.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:01:22.530Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
{
|
||||
"id": "source.psb-thinking-test-sync",
|
||||
"title": "psb-thinking-test-sync",
|
||||
"kind": "source",
|
||||
"path": "sources/psb-thinking-test-sync.md",
|
||||
"sourceIds": [],
|
||||
"questions": [],
|
||||
"contradictions": [],
|
||||
"freshnessLevel": "fresh",
|
||||
"lastTouchedAt": "2026-05-03T02:01:45.822Z",
|
||||
"claimCount": 0,
|
||||
"topClaims": []
|
||||
},
|
||||
|
||||
@@ -352,3 +352,57 @@
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:30:20.705Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-14.md","pageId":"source.psb-thinking-2026-04-14","pagePath":"sources/psb-thinking-2026-04-14.md","bytes":7163,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:30:20.983Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-14.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"lint","timestamp":"2026-05-03T01:53:38.328Z","details":{"issueCount":41,"reportPath":"reports/lint.md"}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:54:23.818Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-09.md","pageId":"source.psb-thinking-2026-04-09","pagePath":"sources/psb-thinking-2026-04-09.md","bytes":5963,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:54:24.061Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-09.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:54:46.994Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-10.md","pageId":"source.psb-thinking-2026-04-10","pagePath":"sources/psb-thinking-2026-04-10.md","bytes":5299,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:54:47.251Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-10.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:55:10.285Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-11.md","pageId":"source.psb-thinking-2026-04-11","pagePath":"sources/psb-thinking-2026-04-11.md","bytes":540,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:55:10.526Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-11.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:55:33.521Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-12.md","pageId":"source.psb-thinking-2026-04-12","pagePath":"sources/psb-thinking-2026-04-12.md","bytes":1045,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:55:33.774Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-12.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:55:56.660Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-13.md","pageId":"source.psb-thinking-2026-04-13","pagePath":"sources/psb-thinking-2026-04-13.md","bytes":2828,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:55:56.922Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-13.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:56:20.046Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-14.md","pageId":"source.psb-thinking-2026-04-14","pagePath":"sources/psb-thinking-2026-04-14.md","bytes":7163,"created":false}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:56:20.287Z","details":{"pageCounts":{"entity":0,"concept":0,"source":167,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-14.md",".openclaw-wiki/cache/agent-digest.json"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:56:43.207Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-15.md","pageId":"source.psb-thinking-2026-04-15","pagePath":"sources/psb-thinking-2026-04-15.md","bytes":635,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:56:43.523Z","details":{"pageCounts":{"entity":0,"concept":0,"source":168,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-15.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:57:06.697Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-16.md","pageId":"source.psb-thinking-2026-04-16","pagePath":"sources/psb-thinking-2026-04-16.md","bytes":571,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:57:06.946Z","details":{"pageCounts":{"entity":0,"concept":0,"source":169,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-16.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:57:29.924Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-17.md","pageId":"source.psb-thinking-2026-04-17","pagePath":"sources/psb-thinking-2026-04-17.md","bytes":1510,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:57:30.186Z","details":{"pageCounts":{"entity":0,"concept":0,"source":170,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-17.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:57:53.127Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-18.md","pageId":"source.psb-thinking-2026-04-18","pagePath":"sources/psb-thinking-2026-04-18.md","bytes":1387,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:57:53.378Z","details":{"pageCounts":{"entity":0,"concept":0,"source":171,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-18.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:58:16.317Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-23.md","pageId":"source.psb-thinking-2026-04-23","pagePath":"sources/psb-thinking-2026-04-23.md","bytes":2464,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:58:16.612Z","details":{"pageCounts":{"entity":0,"concept":0,"source":172,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-23.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:58:39.648Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-24.md","pageId":"source.psb-thinking-2026-04-24","pagePath":"sources/psb-thinking-2026-04-24.md","bytes":916,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:58:39.914Z","details":{"pageCounts":{"entity":0,"concept":0,"source":173,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-24.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:59:02.884Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-25.md","pageId":"source.psb-thinking-2026-04-25","pagePath":"sources/psb-thinking-2026-04-25.md","bytes":391,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:59:03.141Z","details":{"pageCounts":{"entity":0,"concept":0,"source":174,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-25.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:59:26.141Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-26.md","pageId":"source.psb-thinking-2026-04-26","pagePath":"sources/psb-thinking-2026-04-26.md","bytes":541,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:59:26.410Z","details":{"pageCounts":{"entity":0,"concept":0,"source":175,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-26.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T01:59:49.317Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-29.md","pageId":"source.psb-thinking-2026-04-29","pagePath":"sources/psb-thinking-2026-04-29.md","bytes":1720,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T01:59:49.579Z","details":{"pageCounts":{"entity":0,"concept":0,"source":176,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-29.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:00:12.563Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-30.md","pageId":"source.psb-thinking-2026-04-30","pagePath":"sources/psb-thinking-2026-04-30.md","bytes":1832,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:00:12.822Z","details":{"pageCounts":{"entity":0,"concept":0,"source":177,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-04-30.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:00:35.891Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/2026-05-01.md","pageId":"source.psb-thinking-2026-05-01","pagePath":"sources/psb-thinking-2026-05-01.md","bytes":1421,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:00:36.152Z","details":{"pageCounts":{"entity":0,"concept":0,"source":178,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-2026-05-01.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:00:59.157Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/robotics-team-agent.md","pageId":"source.psb-thinking-robotics-team-agent","pagePath":"sources/psb-thinking-robotics-team-agent.md","bytes":3184,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:00:59.426Z","details":{"pageCounts":{"entity":0,"concept":0,"source":179,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-robotics-team-agent.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:01:22.530Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/tasks/systemic-settings-loss.md","pageId":"source.psb-thinking-systemic-settings-loss","pagePath":"sources/psb-thinking-systemic-settings-loss.md","bytes":1550,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:01:22.811Z","details":{"pageCounts":{"entity":0,"concept":0,"source":180,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-systemic-settings-loss.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:01:45.822Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/memory/test-sync.md","pageId":"source.psb-thinking-test-sync","pagePath":"sources/psb-thinking-test-sync.md","bytes":35,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:01:46.095Z","details":{"pageCounts":{"entity":0,"concept":0,"source":181,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-test-sync.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:02:18.239Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/projects/fermentation-dashboard.md","pageId":"source.psb-thinking-fermentation-dashboard","pagePath":"sources/psb-thinking-fermentation-dashboard.md","bytes":2955,"created":true}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:02:18.289Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-gemma/recipes/70_Meg_Omega_2_2024.md","pageId":"source.psb-recipe-70-meg-omega-2-2024","pagePath":"sources/psb-recipe-70-meg-omega-2-2024.md","bytes":1559,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:02:18.533Z","details":{"pageCounts":{"entity":0,"concept":0,"source":183,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-fermentation-dashboard.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:02:18.574Z","details":{"pageCounts":{"entity":0,"concept":0,"source":183,"synthesis":0,"report":6},"updatedFiles":["sources/psb-recipe-70-meg-omega-2-2024.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:02:41.347Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-thinking/projects/pihole-blocker.md","pageId":"source.psb-thinking-pihole-blocker","pagePath":"sources/psb-thinking-pihole-blocker.md","bytes":9252,"created":true}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:02:41.446Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-gemma/recipes/Hot_for_Teacher.md","pageId":"source.psb-recipe-hot-for-teacher","pagePath":"sources/psb-recipe-hot-for-teacher.md","bytes":1880,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:02:41.625Z","details":{"pageCounts":{"entity":0,"concept":0,"source":185,"synthesis":0,"report":6},"updatedFiles":["sources/psb-thinking-pihole-blocker.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:02:41.727Z","details":{"pageCounts":{"entity":0,"concept":0,"source":185,"synthesis":0,"report":6},"updatedFiles":["sources/psb-recipe-hot-for-teacher.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:03:03.882Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-gemma/recipes/john-adams-ne-cider-4-26.md","pageId":"source.psb-recipe-john-adams-ne-cider-4-26","pagePath":"sources/psb-recipe-john-adams-ne-cider-4-26.md","bytes":1263,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:03:04.189Z","details":{"pageCounts":{"entity":0,"concept":0,"source":186,"synthesis":0,"report":6},"updatedFiles":["sources/psb-recipe-john-adams-ne-cider-4-26.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:03:26.208Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-gemma/recipes/Mount_Vernon_Molasses_George_Washington.md","pageId":"source.psb-recipe-mount-vernon-molasses-george-washington","pagePath":"sources/psb-recipe-mount-vernon-molasses-george-washington.md","bytes":1854,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:03:26.499Z","details":{"pageCounts":{"entity":0,"concept":0,"source":187,"synthesis":0,"report":6},"updatedFiles":["sources/psb-recipe-mount-vernon-molasses-george-washington.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
{"type":"ingest","timestamp":"2026-05-03T02:03:48.552Z","details":{"inputPath":"/home/topher/.openclaw/workspace-psb-gemma/recipes/Seltzer_base_corn_11.md","pageId":"source.psb-recipe-seltzer-base-corn-11","pagePath":"sources/psb-recipe-seltzer-base-corn-11.md","bytes":1770,"created":true}}
|
||||
{"type":"compile","timestamp":"2026-05-03T02:03:48.836Z","details":{"pageCounts":{"entity":0,"concept":0,"source":188,"synthesis":0,"report":6},"updatedFiles":["sources/psb-recipe-seltzer-base-corn-11.md",".openclaw-wiki/cache/agent-digest.json","index.md","sources/index.md"]}}
|
||||
|
||||
25
index.md
25
index.md
@@ -3,9 +3,9 @@
|
||||
## Generated
|
||||
<!-- openclaw:wiki:index:start -->
|
||||
- Render mode: `native`
|
||||
- Total pages: 173
|
||||
- Total pages: 194
|
||||
- Claims: 0
|
||||
- Sources: 167
|
||||
- Sources: 188
|
||||
- Entities: 0
|
||||
- Concepts: 0
|
||||
- Syntheses: 0
|
||||
@@ -155,6 +155,11 @@
|
||||
- [psb-gemma-standup-latest](sources/psb-gemma-standup-latest.md)
|
||||
- [psb-gemma-tilt-spreadsheet-protocol](sources/psb-gemma-tilt-spreadsheet-protocol.md)
|
||||
- [psb-gemma-todo_maybe_later](sources/psb-gemma-todo-maybe-later.md)
|
||||
- [psb-recipe-70_Meg_Omega_2_2024](sources/psb-recipe-70-meg-omega-2-2024.md)
|
||||
- [psb-recipe-Hot_for_Teacher](sources/psb-recipe-hot-for-teacher.md)
|
||||
- [psb-recipe-john-adams-ne-cider-4-26](sources/psb-recipe-john-adams-ne-cider-4-26.md)
|
||||
- [psb-recipe-Mount_Vernon_Molasses_George_Washington](sources/psb-recipe-mount-vernon-molasses-george-washington.md)
|
||||
- [psb-recipe-Seltzer_base_corn_11](sources/psb-recipe-seltzer-base-corn-11.md)
|
||||
- [psb-thinking-2026-03-01](sources/psb-thinking-2026-03-01.md)
|
||||
- [psb-thinking-2026-03-03-touchscreen-fix](sources/psb-thinking-2026-03-03-touchscreen-fix.md)
|
||||
- [psb-thinking-2026-03-09](sources/psb-thinking-2026-03-09.md)
|
||||
@@ -167,6 +172,22 @@
|
||||
- [psb-thinking-2026-04-12](sources/psb-thinking-2026-04-12.md)
|
||||
- [psb-thinking-2026-04-13](sources/psb-thinking-2026-04-13.md)
|
||||
- [psb-thinking-2026-04-14](sources/psb-thinking-2026-04-14.md)
|
||||
- [psb-thinking-2026-04-15](sources/psb-thinking-2026-04-15.md)
|
||||
- [psb-thinking-2026-04-16](sources/psb-thinking-2026-04-16.md)
|
||||
- [psb-thinking-2026-04-17](sources/psb-thinking-2026-04-17.md)
|
||||
- [psb-thinking-2026-04-18](sources/psb-thinking-2026-04-18.md)
|
||||
- [psb-thinking-2026-04-23](sources/psb-thinking-2026-04-23.md)
|
||||
- [psb-thinking-2026-04-24](sources/psb-thinking-2026-04-24.md)
|
||||
- [psb-thinking-2026-04-25](sources/psb-thinking-2026-04-25.md)
|
||||
- [psb-thinking-2026-04-26](sources/psb-thinking-2026-04-26.md)
|
||||
- [psb-thinking-2026-04-29](sources/psb-thinking-2026-04-29.md)
|
||||
- [psb-thinking-2026-04-30](sources/psb-thinking-2026-04-30.md)
|
||||
- [psb-thinking-2026-05-01](sources/psb-thinking-2026-05-01.md)
|
||||
- [psb-thinking-fermentation-dashboard](sources/psb-thinking-fermentation-dashboard.md)
|
||||
- [psb-thinking-pihole-blocker](sources/psb-thinking-pihole-blocker.md)
|
||||
- [psb-thinking-robotics-team-agent](sources/psb-thinking-robotics-team-agent.md)
|
||||
- [psb-thinking-systemic-settings-loss](sources/psb-thinking-systemic-settings-loss.md)
|
||||
- [psb-thinking-test-sync](sources/psb-thinking-test-sync.md)
|
||||
- [README](sources/readme.md)
|
||||
- [ROBOTICS-LAB-PI-REPLACEMENT](sources/robotics-lab-pi-replacement.md)
|
||||
- [robotics-team-agent](sources/robotics-team-agent.md)
|
||||
|
||||
@@ -145,6 +145,11 @@
|
||||
- [psb-gemma-standup-latest](sources/psb-gemma-standup-latest.md)
|
||||
- [psb-gemma-tilt-spreadsheet-protocol](sources/psb-gemma-tilt-spreadsheet-protocol.md)
|
||||
- [psb-gemma-todo_maybe_later](sources/psb-gemma-todo-maybe-later.md)
|
||||
- [psb-recipe-70_Meg_Omega_2_2024](sources/psb-recipe-70-meg-omega-2-2024.md)
|
||||
- [psb-recipe-Hot_for_Teacher](sources/psb-recipe-hot-for-teacher.md)
|
||||
- [psb-recipe-john-adams-ne-cider-4-26](sources/psb-recipe-john-adams-ne-cider-4-26.md)
|
||||
- [psb-recipe-Mount_Vernon_Molasses_George_Washington](sources/psb-recipe-mount-vernon-molasses-george-washington.md)
|
||||
- [psb-recipe-Seltzer_base_corn_11](sources/psb-recipe-seltzer-base-corn-11.md)
|
||||
- [psb-thinking-2026-03-01](sources/psb-thinking-2026-03-01.md)
|
||||
- [psb-thinking-2026-03-03-touchscreen-fix](sources/psb-thinking-2026-03-03-touchscreen-fix.md)
|
||||
- [psb-thinking-2026-03-09](sources/psb-thinking-2026-03-09.md)
|
||||
@@ -157,6 +162,22 @@
|
||||
- [psb-thinking-2026-04-12](sources/psb-thinking-2026-04-12.md)
|
||||
- [psb-thinking-2026-04-13](sources/psb-thinking-2026-04-13.md)
|
||||
- [psb-thinking-2026-04-14](sources/psb-thinking-2026-04-14.md)
|
||||
- [psb-thinking-2026-04-15](sources/psb-thinking-2026-04-15.md)
|
||||
- [psb-thinking-2026-04-16](sources/psb-thinking-2026-04-16.md)
|
||||
- [psb-thinking-2026-04-17](sources/psb-thinking-2026-04-17.md)
|
||||
- [psb-thinking-2026-04-18](sources/psb-thinking-2026-04-18.md)
|
||||
- [psb-thinking-2026-04-23](sources/psb-thinking-2026-04-23.md)
|
||||
- [psb-thinking-2026-04-24](sources/psb-thinking-2026-04-24.md)
|
||||
- [psb-thinking-2026-04-25](sources/psb-thinking-2026-04-25.md)
|
||||
- [psb-thinking-2026-04-26](sources/psb-thinking-2026-04-26.md)
|
||||
- [psb-thinking-2026-04-29](sources/psb-thinking-2026-04-29.md)
|
||||
- [psb-thinking-2026-04-30](sources/psb-thinking-2026-04-30.md)
|
||||
- [psb-thinking-2026-05-01](sources/psb-thinking-2026-05-01.md)
|
||||
- [psb-thinking-fermentation-dashboard](sources/psb-thinking-fermentation-dashboard.md)
|
||||
- [psb-thinking-pihole-blocker](sources/psb-thinking-pihole-blocker.md)
|
||||
- [psb-thinking-robotics-team-agent](sources/psb-thinking-robotics-team-agent.md)
|
||||
- [psb-thinking-systemic-settings-loss](sources/psb-thinking-systemic-settings-loss.md)
|
||||
- [psb-thinking-test-sync](sources/psb-thinking-test-sync.md)
|
||||
- [README](sources/readme.md)
|
||||
- [ROBOTICS-LAB-PI-REPLACEMENT](sources/robotics-lab-pi-replacement.md)
|
||||
- [robotics-team-agent](sources/robotics-team-agent.md)
|
||||
|
||||
79
sources/psb-recipe-70-meg-omega-2-2024.md
Normal file
79
sources/psb-recipe-70-meg-omega-2-2024.md
Normal file
@@ -0,0 +1,79 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-recipe-70-meg-omega-2-2024
|
||||
title: psb-recipe-70_Meg_Omega_2_2024
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-gemma/recipes/70_Meg_Omega_2_2024.md
|
||||
ingestedAt: 2026-05-03T02:02:18.289Z
|
||||
updatedAt: 2026-05-03T02:02:18.289Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-recipe-70_Meg_Omega_2_2024
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-gemma/recipes/70_Meg_Omega_2_2024.md`
|
||||
- Bytes: 1559
|
||||
- Updated: 2026-05-03T02:02:18.289Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 70 Meg Ω - 2/2024
|
||||
**Style:** Double IPA (BJCP 22A)
|
||||
**Brewed:** 2024-02-05
|
||||
**Status:** Completed (TILT: Pink — active fermenter)
|
||||
|
||||
## Recipe Specs
|
||||
- **Batch:** 4 bbl (12800 cl actual, ~128 gal)
|
||||
- **OG:** 1.098 (measured), FG: 1.029
|
||||
- **ABV:** ~7.2% (Nottingham attenuation)
|
||||
- **IBU:** ~70 ( Amarillo, Simcoe, Warrior)
|
||||
- **Mash:** Single Infusion, 148°F, 75 min (Light Body, Batch Sparge)
|
||||
- **Water:** RO + Burton profile (high sulfate: 150ppm SO4, 75ppm Ca, low chloride)
|
||||
- **Yeast:** LalBrew Nottingham Ale Yeast (dry pitch, 75g)
|
||||
|
||||
## Grain Bill
|
||||
| Grain | % | Amount |
|
||||
|---|---|---|
|
||||
| US Proximity Pilsner | 92.3% | 9.45 lb |
|
||||
| DE CaraAmber | 7.7% | 0.78 lb |
|
||||
|
||||
## Hops
|
||||
| Hop | Alpha | Amount | Use | Time |
|
||||
|---|---|---|---|---|
|
||||
| Amarillo | 7.7% | 35g | First Wort | 60 min |
|
||||
| Simcoe | 13% | 19g | First Wort | 60 min |
|
||||
| Amarillo | 9.2% | 23g | Whirlpool | 4 min |
|
||||
| Simcoe | 13% | 23g | Whirlpool | 4 min |
|
||||
| Warrior | 15% | 11g | Whirlpool | 4 min |
|
||||
|
||||
## Water Salts (Burton profile)
|
||||
- Gypsum: mash 86g + sparge 48g
|
||||
- Calcium Chloride: mash 26g + sparge 15g
|
||||
- Epsom Salt: mash 17g + sparge 9.5g
|
||||
- Chalk: mash 0.1g + sparge 0.06g
|
||||
- Salt: mash 9g + sparge 5g
|
||||
|
||||
## Fermentation
|
||||
- Primary: 67°F, 4 days
|
||||
- Secondary: 67°F, 10 days
|
||||
- Tertiary: 65°F, 7 days
|
||||
- Carbonation: 2.3 vol (20 psi, forced CO2)
|
||||
|
||||
## Notes
|
||||
- Hard carbonated at 20 psi until equilibrium
|
||||
- Linked TILT sheet: https://docs.google.com/spreadsheets/d/1_RqLj6gMBFuLda1gIcR8sg3GrUi_svnJqE7yL-JQ-U
|
||||
- Water target: "Light & Hoppy" profile
|
||||
- TILT color: Pink (TILT device name, not foam color)
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
82
sources/psb-recipe-hot-for-teacher.md
Normal file
82
sources/psb-recipe-hot-for-teacher.md
Normal file
@@ -0,0 +1,82 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-recipe-hot-for-teacher
|
||||
title: psb-recipe-Hot_for_Teacher
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-gemma/recipes/Hot_for_Teacher.md
|
||||
ingestedAt: 2026-05-03T02:02:41.446Z
|
||||
updatedAt: 2026-05-03T02:02:41.446Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-recipe-Hot_for_Teacher
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-gemma/recipes/Hot_for_Teacher.md`
|
||||
- Bytes: 1880
|
||||
- Updated: 2026-05-03T02:02:41.446Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Hot for Teacher
|
||||
**Style:** Blonde Ale (BJCP Cat 6 — Light Hybrid)
|
||||
**Brewed:** 2026-04-01
|
||||
**Assistant Brewer:** Kirk Debaets
|
||||
**Status:** Active fermentation (TILT: Green)
|
||||
|
||||
## Recipe Specs
|
||||
- **Batch:** 12800 cl (PSBs 4bbl system)
|
||||
- **OG:** 1.064 (measured) — target 1.050 with 17G dilution water to hit 5.3% ABV
|
||||
- **Mash OG:** 1.049 (actual mash readout)
|
||||
- **FG:** ~1.012 (expected, based on Nottingham attenuation)
|
||||
- **ABV:** ~5.3% (target)
|
||||
- **IBU:** ~21 (Centennial bittering + cascade finishing)
|
||||
- **Mash:** Single Infusion, 152°F, 60 min, batch sparge
|
||||
- **Water:** RO + Yellow Balanced profile (50ppm Ca, 75ppm SO4, 60ppm Cl, 7ppm Mg, 5ppm Na)
|
||||
- **Carbonation:** 2.3 vol
|
||||
- **Yeast:** LalBrew Nottingham Ale Yeast (dry pitch)
|
||||
|
||||
## Grain Bill
|
||||
| Grain | % |
|
||||
|---|---|
|
||||
| 2-Row Xtra Pale Malt (Viking Malt) | 84% |
|
||||
| Vienna Malt | 10% |
|
||||
| Cara-Pils/Dextrine | 5% |
|
||||
| Crystal 20L | 0.5% |
|
||||
|
||||
## Hops
|
||||
| Hop | Alpha | Amount | Use | Time |
|
||||
|---|---|---|---|---|
|
||||
| Centennial | 10% | 8g | Bittering | 60 min |
|
||||
| Centennial | 10% | 8g | Flavor | 15 min |
|
||||
| Cascade | 5.5% | 8g | Aroma | 1 min |
|
||||
|
||||
## Water Salts (Yellow Balanced)
|
||||
- Gypsum: mash 22g + sparge 22g
|
||||
- Calcium Chloride: mash 28g + sparge 28g
|
||||
- Epsom Salt: mash 17g + sparge 18g
|
||||
- Salt: mash 3g + sparge 3g
|
||||
- Chalk: mash 0.04g + sparge 0.04g
|
||||
|
||||
## TILT Data
|
||||
- TILT link: https://docs.google.com/spreadsheets/d/1Y87yeo6SkxQVBotWq4xLIXLVJGYAVh1pZ9rAQa9EtQY
|
||||
- Apr 1 (day 1): 1.0449 @ 70.9°F — low for day 1, likely TILT hadn't stabilized yet or reading taken early
|
||||
|
||||
## Notes
|
||||
- "add 17G water to achieve 1.049 @ 5.3%" — diluted post-ferment to hit target
|
||||
- Uses Nottingham yeast (high attenuation, clean, slightly fruity)
|
||||
- Assistant brewer Kirk Debaets listed — collaboration batch
|
||||
- Viking 2-Row with Null Lox technology (no staling off-flavors, extended freshness)
|
||||
- Target water profile: Yellow Balanced (Under 6 SRM)
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
75
sources/psb-recipe-john-adams-ne-cider-4-26.md
Normal file
75
sources/psb-recipe-john-adams-ne-cider-4-26.md
Normal file
@@ -0,0 +1,75 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-recipe-john-adams-ne-cider-4-26
|
||||
title: psb-recipe-john-adams-ne-cider-4-26
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-gemma/recipes/john-adams-ne-cider-4-26.md
|
||||
ingestedAt: 2026-05-03T02:03:03.882Z
|
||||
updatedAt: 2026-05-03T02:03:03.882Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-recipe-john-adams-ne-cider-4-26
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-gemma/recipes/john-adams-ne-cider-4-26.md`
|
||||
- Bytes: 1263
|
||||
- Updated: 2026-05-03T02:03:03.882Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 6-JOHN ADAMS – NEW ENGLAND CIDER-ALE HYBRID
|
||||
American Amber Ale (6.2) | Batch: 100 gal | Brewed: 19 Apr 2026
|
||||
|
||||
## TTB Compliance Note
|
||||
Fermentables limited to 50% from apple juice — dropped juice to 18 gal (from 21) and bumped pale malt to 160 lb.
|
||||
|
||||
---
|
||||
|
||||
## Targets
|
||||
- OG: 1.062 | FG: 1.011 | ABV: ~5.5-6%
|
||||
- IBU: ~25 (EKG only, post-blend lower)
|
||||
- Batch size: 100 gal | Boil: 109.70 gal
|
||||
|
||||
## Water (RO) — 140 gal
|
||||
- 70 g Gypsum (mash)
|
||||
- 80 g Calcium Chloride (mash)
|
||||
- 12 g Epsom Salt (mash)
|
||||
- No baking soda
|
||||
|
||||
## Grains
|
||||
| Grain | Amount | % |
|
||||
|-------|--------|---|
|
||||
| Viking Pale Ale Malt | 160 lb | 82.4% |
|
||||
| Wheat Malt, Ger | 21.7 lb | 11.2% |
|
||||
| Flaked Oats | 10.8 lb | 5.6% |
|
||||
| Apple Juice (post-boil) | 18 gal | — |
|
||||
|
||||
**Apple Juice:** 13.9° Brix → SG 1.0564
|
||||
|
||||
Mash: 66.7°C (152°F) for 60 min | Fly sparge 78.42 gal
|
||||
|
||||
## Hops (EKG)
|
||||
- 21.7 oz @ 60 min — 19.8 IBU
|
||||
- 10.8 oz @ 10 min — 3.6 IBU
|
||||
|
||||
## Process
|
||||
1. Brew ~2.8 bbl wort to ~1.056 pre-boil
|
||||
2. Chill to 64-66°F, transfer to FV
|
||||
3. Add ~0.7 bbl (18 gal) fresh unfermented cider
|
||||
4. Oxygenate post-blend, ferment at 64-68°F
|
||||
5. Package at 2.3-2.5 vols CO₂
|
||||
|
||||
## Original BSMX
|
||||
`/home/topher/.openclaw/media/inbound/6JOHN_ADAMS_NEW_ENGLAND_CIDERALE_HYBRID.bsmx---461ee373-3018-4381-ac1e-2c3765d94f26.txt`
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
@@ -0,0 +1,77 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-recipe-mount-vernon-molasses-george-washington
|
||||
title: psb-recipe-Mount_Vernon_Molasses_George_Washington
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-gemma/recipes/Mount_Vernon_Molasses_George_Washington.md
|
||||
ingestedAt: 2026-05-03T02:03:26.208Z
|
||||
updatedAt: 2026-05-03T02:03:26.208Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-recipe-Mount_Vernon_Molasses_George_Washington
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-gemma/recipes/Mount_Vernon_Molasses_George_Washington.md`
|
||||
- Bytes: 1854
|
||||
- Updated: 2026-05-03T02:03:26.208Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 04-Mount Vernon Molasses — George Washington
|
||||
**Style:** Pre-Prohibition Porter (BJCP Historical, Cat 27)
|
||||
**Brewed:** 2026-03-15
|
||||
**Kegged:** Yes (Black TILT)
|
||||
**Status:** Completed
|
||||
|
||||
## Recipe Specs
|
||||
- **Batch:** ~5 gal pilot (BeerSmith homebrew scale, not production)
|
||||
- **OG:** 1.050 (target) | **FG:** 1.0048 (measured Apr 1)
|
||||
- **ABV:** ~5.9%
|
||||
- **IBU:** ~32 (Fuggle, 60 min)
|
||||
- **SRM:** 30+ (very dark brown)
|
||||
- **Mash:** Single Infusion, 152°F, 60 min
|
||||
- **Water:** RO + Gypsum 80g, CaCl 120g, Epsom 20g, Baking Soda 40g
|
||||
- **Carbonation:** 2.3 vol
|
||||
- **Yeast:** LalBrew Nottingham Ale Yeast (dry pitch)
|
||||
|
||||
## Grain Bill
|
||||
| Grain | % | Notes |
|
||||
|---|---|---|
|
||||
| Maris Otter | 57% | Base malt |
|
||||
| Molasses | 9.6% | Late boil (last 10-15 min) |
|
||||
| Brown Malt | 9.6% | Biscuity, dry |
|
||||
| Crystal 60L | 8.3% | Caramel sweetness |
|
||||
| Chocolate Malt | 6% | Color, nuttiness |
|
||||
| Flaked Barley | 6% | Body, head retention |
|
||||
| Black Patent | 3.6% | Roast, dryness |
|
||||
|
||||
## Hops
|
||||
- **Fuggle** (4.5% AA) — 45.6g at 60 min → ~32 IBU
|
||||
|
||||
## Fermentation Timeline (TILT: Black)
|
||||
- Mar 15: Pitched — temp climbing to 70.8°F by day 1 end
|
||||
- Mar 16-18: Active fermentation, peaked at 1.0503 on Mar 18
|
||||
- Mar 19-20: Rapid attenuation (1.018 → 1.015)
|
||||
- Mar 21-Apr 1: Slow finishing — 1.018 → 1.016 over 11 days
|
||||
- Apr 1: FG 1.016 (final reading in log)
|
||||
- Temp ramped down from 70°F to 45.7°F for lagering/conditioning
|
||||
|
||||
## Historical Context
|
||||
Recipe adapted from George Washington's own molasses porter recipe (circa 1750s-1790s). Washington brewed this commercially at Mount Vernon — one of the earliest American craft beers. The historical version used rye and pumpkin in addition to the molasses.
|
||||
|
||||
## TILT Data
|
||||
- TILT link: https://docs.google.com/spreadsheets/d/1QUAfig7zlvvRAMm45e4NYh-syAyiRfOWC4OCFse3qdM
|
||||
- TILT color: Black (physical color is White, TILT reads as Black)
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
76
sources/psb-recipe-seltzer-base-corn-11.md
Normal file
76
sources/psb-recipe-seltzer-base-corn-11.md
Normal file
@@ -0,0 +1,76 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-recipe-seltzer-base-corn-11
|
||||
title: psb-recipe-Seltzer_base_corn_11
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-gemma/recipes/Seltzer_base_corn_11.md
|
||||
ingestedAt: 2026-05-03T02:03:48.552Z
|
||||
updatedAt: 2026-05-03T02:03:48.552Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-recipe-Seltzer_base_corn_11
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-gemma/recipes/Seltzer_base_corn_11.md`
|
||||
- Bytes: 1770
|
||||
- Updated: 2026-05-03T02:03:48.552Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Seltzer base - corn 11%
|
||||
**Style:** Hard Seltzer (Corn Sugar base)
|
||||
**Brewed:** 2026-04-04
|
||||
**Status:** Active fermentation (TILT: Orange)
|
||||
|
||||
## Recipe Specs
|
||||
- **Batch:** 8320 cl (~22 gal / ~83L) — BeerSmith batch size
|
||||
- **Target OG:** 1.050 | **Measured OG:** 1.075
|
||||
- **Measured FG:** 0.996 (TILT reading Nov 2025)
|
||||
- **Target ABV:** ~11% | **Actual ABV:** ~10.5%
|
||||
- **Mash:** Single Infusion, 152°F, 60 min (no mash out)
|
||||
- **Water:** RO + minerals (target: 75ppm Ca, 50ppm SO4, 50ppm Cl, 4ppm Na, 20ppm HCO3)
|
||||
- **Carbonation:** 2.3 vol (forced CO2)
|
||||
|
||||
## Fermentables
|
||||
- 100% Corn Sugar (Dextrose) — 2400g (in BeerSmith units = ~5.3 lb)
|
||||
|
||||
## Water Salts
|
||||
- Calcium Chloride: 265g
|
||||
- Epsom Salt: 110g
|
||||
- Salt: 35g
|
||||
- Lactic Acid: 15ml (mash pH adjustment to 5.2)
|
||||
|
||||
## Yeast / Nutrients
|
||||
- **Yeast:** APEX CULTURES HARD SELTZER (dry pitch)
|
||||
- Attenuation: 85-99%, Tolerance: 15% ABV
|
||||
- Optimal temp: 70-77°F, ~5 days fermentation
|
||||
- **Nutrient:** Fermo Pro (yeast nutrient)
|
||||
- **Pitch schedule:** 14.7g at pitch, 11.1g at 24h, 11.1g at 48h
|
||||
|
||||
## TILT Data (from recipe linked sheet)
|
||||
- TILT link: https://docs.google.com/spreadsheets/d/14tnc31TTteTswzfGlIdjm5u8WSKOzs7HfQazzzZe-g8 (Orange TILT, current active fermentation)
|
||||
- Orange TILT has had 3+ moisture-related failures — o-ring replacement + silicone grease needed
|
||||
- Old sheet (Black TILT, archived Sep 2025): https://docs.google.com/spreadsheets/d/1cEdszrD_lV9RTt3HYABpmMLtjGDsCg5AZbyxgW18U2U
|
||||
- Sep 29, 2025: OG 1.0757, temp 71.8°F
|
||||
- Nov 1, 2025: FG 0.996, temp 71.78°F
|
||||
- Fermentation duration: ~41 days (to reach 0.996 FG)
|
||||
- TILT color: Orange
|
||||
|
||||
## Notes
|
||||
- 100% dextrose ferment — no malt bill
|
||||
- Target 11% ABV using seltzer yeast (APEX)
|
||||
- Water profile balanced for seltzer clarity
|
||||
- No hops (as expected for seltzer)
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-09
|
||||
title: psb-thinking-2026-04-09
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-09.md
|
||||
ingestedAt: 2026-05-03T01:28:34.097Z
|
||||
updatedAt: 2026-05-03T01:28:34.097Z
|
||||
ingestedAt: 2026-05-03T01:54:23.818Z
|
||||
updatedAt: 2026-05-03T01:54:23.818Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-09.md`
|
||||
- Bytes: 5963
|
||||
- Updated: 2026-05-03T01:28:34.097Z
|
||||
- Updated: 2026-05-03T01:54:23.818Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-10
|
||||
title: psb-thinking-2026-04-10
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-10.md
|
||||
ingestedAt: 2026-05-03T01:28:55.418Z
|
||||
updatedAt: 2026-05-03T01:28:55.418Z
|
||||
ingestedAt: 2026-05-03T01:54:46.994Z
|
||||
updatedAt: 2026-05-03T01:54:46.994Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-10.md`
|
||||
- Bytes: 5299
|
||||
- Updated: 2026-05-03T01:28:55.418Z
|
||||
- Updated: 2026-05-03T01:54:46.994Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-11
|
||||
title: psb-thinking-2026-04-11
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-11.md
|
||||
ingestedAt: 2026-05-03T01:29:16.719Z
|
||||
updatedAt: 2026-05-03T01:29:16.719Z
|
||||
ingestedAt: 2026-05-03T01:55:10.285Z
|
||||
updatedAt: 2026-05-03T01:55:10.285Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-11.md`
|
||||
- Bytes: 540
|
||||
- Updated: 2026-05-03T01:29:16.719Z
|
||||
- Updated: 2026-05-03T01:55:10.285Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-12
|
||||
title: psb-thinking-2026-04-12
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-12.md
|
||||
ingestedAt: 2026-05-03T01:29:38.055Z
|
||||
updatedAt: 2026-05-03T01:29:38.055Z
|
||||
ingestedAt: 2026-05-03T01:55:33.521Z
|
||||
updatedAt: 2026-05-03T01:55:33.521Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-12.md`
|
||||
- Bytes: 1045
|
||||
- Updated: 2026-05-03T01:29:38.055Z
|
||||
- Updated: 2026-05-03T01:55:33.521Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-13
|
||||
title: psb-thinking-2026-04-13
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-13.md
|
||||
ingestedAt: 2026-05-03T01:29:59.300Z
|
||||
updatedAt: 2026-05-03T01:29:59.300Z
|
||||
ingestedAt: 2026-05-03T01:55:56.660Z
|
||||
updatedAt: 2026-05-03T01:55:56.660Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-13.md`
|
||||
- Bytes: 2828
|
||||
- Updated: 2026-05-03T01:29:59.300Z
|
||||
- Updated: 2026-05-03T01:55:56.660Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
@@ -4,8 +4,8 @@ id: source.psb-thinking-2026-04-14
|
||||
title: psb-thinking-2026-04-14
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-14.md
|
||||
ingestedAt: 2026-05-03T01:30:20.705Z
|
||||
updatedAt: 2026-05-03T01:30:20.705Z
|
||||
ingestedAt: 2026-05-03T01:56:20.046Z
|
||||
updatedAt: 2026-05-03T01:56:20.046Z
|
||||
status: active
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ status: active
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-14.md`
|
||||
- Bytes: 7163
|
||||
- Updated: 2026-05-03T01:30:20.705Z
|
||||
- Updated: 2026-05-03T01:56:20.046Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
49
sources/psb-thinking-2026-04-15.md
Normal file
49
sources/psb-thinking-2026-04-15.md
Normal file
@@ -0,0 +1,49 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-15
|
||||
title: psb-thinking-2026-04-15
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-15.md
|
||||
ingestedAt: 2026-05-03T01:56:43.207Z
|
||||
updatedAt: 2026-05-03T01:56:43.207Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-15
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-15.md`
|
||||
- Bytes: 635
|
||||
- Updated: 2026-05-03T01:56:43.207Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Memory - 2026-04-15
|
||||
|
||||
## Continuing from 2026-04-14
|
||||
- Git re-initialized after reboot (was lost during restart)
|
||||
- Dreaming fired at 21:11 UTC Apr 14 — query "GPU P102-100 install network issue"
|
||||
- Dreaming at 3 AM still not consistent
|
||||
|
||||
## Status 12:23 UTC
|
||||
- No new dreaming since Apr 14 21:11
|
||||
- P102-100 GPU still not detected
|
||||
- Git repo now initialized
|
||||
|
||||
## 21:43 UTC - Dreaming fired at 19:02 UTC
|
||||
- Dreaming fired! New entry at Apr 15 19:02:20 UTC
|
||||
- Query: "tricorder com badge project files" — 1 result
|
||||
- Dreaming now running at ~19:00 UTC instead of 3 AM
|
||||
- Still writes to memory/.dreams/ only — root DREAMS.md bug unresolved
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
46
sources/psb-thinking-2026-04-16.md
Normal file
46
sources/psb-thinking-2026-04-16.md
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-16
|
||||
title: psb-thinking-2026-04-16
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-16.md
|
||||
ingestedAt: 2026-05-03T01:57:06.697Z
|
||||
updatedAt: 2026-05-03T01:57:06.697Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-16
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-16.md`
|
||||
- Bytes: 571
|
||||
- Updated: 2026-05-03T01:57:06.697Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
## End of Day Summary (Apr 16)
|
||||
- System stable all day (~2 days uptime)
|
||||
- Dreaming: missed the 3 AM window again — last fired Apr 15 19:02 UTC
|
||||
- Dreaming schedule shifted to evening hours (~19:00 UTC) rather than 3 AM
|
||||
- P102-100 GPU still not detected — only Quadro K600
|
||||
- No user interaction today
|
||||
|
||||
## Apr 17 03:16 UTC - Dreaming FIRED at 3 AM!
|
||||
- Finally! Dreaming fired at 03:16 UTC
|
||||
- Query: "crash-bot chat bot vector database Qdrant" — 4 results
|
||||
- short-term-recall.json: 18675 bytes
|
||||
- DREAMS.md still NOT written to root — same bug
|
||||
- System uptime: ~3 days
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
58
sources/psb-thinking-2026-04-17.md
Normal file
58
sources/psb-thinking-2026-04-17.md
Normal file
@@ -0,0 +1,58 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-17
|
||||
title: psb-thinking-2026-04-17
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-17.md
|
||||
ingestedAt: 2026-05-03T01:57:29.924Z
|
||||
updatedAt: 2026-05-03T01:57:29.924Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-17
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-17.md`
|
||||
- Bytes: 1510
|
||||
- Updated: 2026-05-03T01:57:29.924Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
## Qdrant 2890 Collection - Setup Complete
|
||||
- Created same text block for 2890-bot as was done for crash-bot
|
||||
- 2890 collection on Qdrant (100.91.1.57:6333) is live: 768-dim, Cosine, green status, 0 points
|
||||
- 2890-bot saved to: docs/vector-db-setup.md
|
||||
- Same scoping rules: 2890-chat-bot reads from 2890 only, brewery and crash-lab off-limits
|
||||
- Both crash-lab and 2890 collections now exist; brewery is PSB's
|
||||
|
||||
## Shared Tools/Scripts Library — Created
|
||||
- Created: /home/topher/.openclaw/shared/
|
||||
- shared/scripts/qdrant_indexer.py — generic parameterized RAG indexer (any collection)
|
||||
- shared/scripts/qdrant_query.py — generic semantic search query script
|
||||
- shared/templates/vector-db-setup-template.md — fill-in-the-blanks vector DB setup
|
||||
- shared/README.md — documentation and rules
|
||||
- Created: /home/topher/.openclaw/shared-self-improving/
|
||||
- mistakes.md — consolidated cross-agent mistakes from psb-gemma, psb-thinking, 2890-bot
|
||||
- Updated AGENTS.md to add step 9: check shared/ before building something new
|
||||
- Rule: if you build it twice, it belongs in shared/
|
||||
|
||||
## End of Day Summary (Apr 17)
|
||||
- System stable — ~4 days uptime
|
||||
- Dreaming fired twice: 03:16 UTC and 11:34 UTC
|
||||
- Both times: events.jsonl + short-term-recall.json written to memory/.dreams/ (DREAMS.md still NOT written — persistent bug)
|
||||
- Queries: "crash-bot chat bot vector database Qdrant" and "2890 Qdrant collection text block crash-lab"
|
||||
- No user interaction today
|
||||
- P102-100 GPU: still not detected, Quadro K600 only
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
53
sources/psb-thinking-2026-04-18.md
Normal file
53
sources/psb-thinking-2026-04-18.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-18
|
||||
title: psb-thinking-2026-04-18
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-18.md
|
||||
ingestedAt: 2026-05-03T01:57:53.127Z
|
||||
updatedAt: 2026-05-03T01:57:53.127Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-18
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-18.md`
|
||||
- Bytes: 1387
|
||||
- Updated: 2026-05-03T01:57:53.127Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 2026-04-18 — Session Notes
|
||||
|
||||
## CasaOS Shutdown Preparation
|
||||
- Topher requested all agents save to memory before CasaOS shutdown
|
||||
- Sent save-to-memory notices to: psb-gemma ✅, psb-business (timeout), 2890-bot (timeout), crash-bot (timeout), crash-bot-public (timeout)
|
||||
- Gemma confirmed: "Saved. Going down with the ship. 👋"
|
||||
- Timeouts likely mean those sessions were idle — their memory files are already on disk
|
||||
|
||||
## Crash-Bot Model Override Fix
|
||||
- crash-bot was stuck on `minimax-m2.7` instead of `glm-5.1:cloud`
|
||||
- Root cause: `sessions.json` had sticky `modelOverride: minimax-m2.7` on `agent:crash-bot:main` and `agent:crash-bot:discord:direct:266336985692635139`
|
||||
- The Discord channel session was fine (no override, already on glm-5.1:cloud)
|
||||
- Fixed by clearing modelOverride and resetting model to `glm-5.1:cloud` in sessions.json
|
||||
- Verified GLM-5.1 cloud API is working (direct curl test returned valid response)
|
||||
- Crash-bot's own memory noted: "Session started with minimax-m2.7 — not default glm-5.1:cloud. Cause unknown."
|
||||
## End of Day Summary (Apr 18)
|
||||
- System stable — ~5 days uptime
|
||||
- Dreaming: fired Apr 17 at 03:16 and 11:34 UTC, but NOT today (Apr 18)
|
||||
- Both days: events.jsonl + short-term-recall.json written to memory/.dreams/ (DREAMS.md still NOT written — persistent bug)
|
||||
- No user interaction today
|
||||
- P102-100 GPU: still not detected, Quadro K600 only
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
77
sources/psb-thinking-2026-04-23.md
Normal file
77
sources/psb-thinking-2026-04-23.md
Normal file
@@ -0,0 +1,77 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-23
|
||||
title: psb-thinking-2026-04-23
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-23.md
|
||||
ingestedAt: 2026-05-03T01:58:16.317Z
|
||||
updatedAt: 2026-05-03T01:58:16.317Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-23
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-23.md`
|
||||
- Bytes: 2464
|
||||
- Updated: 2026-05-03T01:58:16.317Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Memory - 2026-04-23
|
||||
|
||||
## SQL Database Question
|
||||
- Topher asked if we're using SQL database — confusion from Crash bot
|
||||
- **Answer:** No SQL — we use Qdrant (vector DB for RAG). SQLite IS used but only for OpenClaw's internal state (memory/*.sqlite, flows/registry.sqlite, tasks/runs.sqlite)
|
||||
- Crash bot was talking about OpenClaw's own internal SQLite dbs — those are normal, not something we set up
|
||||
|
||||
## Memory Search Investigation (Key Finding)
|
||||
- Topher questioned whether memory search is actually working via Ollama
|
||||
- **Discovery:** Config says Ollama/nomic-embed-text, but ACTUAL backend is GGUF model via node-llama-cpp CPU
|
||||
- Evidence: Every memory_search result in transcripts shows `hf:ggml-org/embeddinggemma-300m-qat-q8_0-GGUF`
|
||||
- CLI test: `openclaw memory search` took 24 seconds (node-llama-cpp CPU fallback, no GPU)
|
||||
- Ollama IS running (localhost:11434) but NOT being used for embeddings — only for chat
|
||||
- **Root cause:** node-llama-cpp GGUF model exists at ~/.node-llama-cpp/models/ — "local" provider picks this by default, bypassing Ollama config
|
||||
- node-llama-cpp has prebuilt Vulkan binary but system doesn't support it → falls back to CPU
|
||||
|
||||
## OpenClaw Memory Research Findings
|
||||
Sources: velvetshark.com, docs.openclaw.ai, GitHub issues, community guides
|
||||
|
||||
### Three Failure Modes
|
||||
1. **Failure A:** Never stored — instruction only in chat, never written to file
|
||||
2. **Failure B:** Compaction destroyed it — lossy summary drops details/nuance
|
||||
3. **Failure C:** Session pruning trimmed tool results (temporary)
|
||||
|
||||
### Known Bugs (OpenClaw v2026.4.8)
|
||||
- **#57410:** Compaction results in full reset instead of compression (context 700K→29K, Compactions:0)
|
||||
- **#17727:** Post-compaction, agent loses awareness of AGENTS.md/SOUL.md (re-injected files not re-injected after summarize)
|
||||
- **#56072:** Daily 4AM reset silently archives session WITHOUT memory flush — context lost silently
|
||||
|
||||
### Missing Config
|
||||
Our openclaw.json has NO compaction tuning:
|
||||
- No `reserveTokensFloor` (defaults to 20K — too tight)
|
||||
- No `memoryFlush` explicit config
|
||||
- No `contextPruning` config
|
||||
- No `compaction.notifyUser`
|
||||
|
||||
### What We Have
|
||||
- memorySearch: enabled ✓
|
||||
- Bootstrap files: 24K chars total — well under 150K cap ✓
|
||||
- WAL on: registry.sqlite, runs.sqlite only (system dbs)
|
||||
- Agent memory dbs: all delete journal mode
|
||||
|
||||
## WAL Protocol
|
||||
- WAL enforcement confirmed running (HEARTBEAT.md checklist active)
|
||||
- Updated SESSION-STATE.md with new findings
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
53
sources/psb-thinking-2026-04-24.md
Normal file
53
sources/psb-thinking-2026-04-24.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-24
|
||||
title: psb-thinking-2026-04-24
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-24.md
|
||||
ingestedAt: 2026-05-03T01:58:39.648Z
|
||||
updatedAt: 2026-05-03T01:58:39.648Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-24
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-24.md`
|
||||
- Bytes: 916
|
||||
- Updated: 2026-05-03T01:58:39.648Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Memory - 2026-04-24
|
||||
|
||||
## System State
|
||||
- All systems nominal — no user interactions on this day
|
||||
- Dreaming: last fired Apr 23 17:29 UTC (crash-lab query), ~34h gap by end of day
|
||||
- No user corrections or decisions to log
|
||||
|
||||
## Dreaming Observations
|
||||
- dreaming frequency set to `0 7 * * *` (7 AM UTC) via memory-core plugin config
|
||||
- events.jsonl: 18 entries total, last entry Apr 23 17:29
|
||||
- DREAMS.md root file: NOT being written (persistent bug across all agents)
|
||||
- aggregate-dreams.sh exists but has no cron trigger (no dreaming schedule found in crontab)
|
||||
|
||||
## Key Context Maintained
|
||||
- Running on CasaOS server (media, 100.91.1.57)
|
||||
- P102-100 GPU: dead, removed
|
||||
- Memory search: slow GGUF CPU fallback
|
||||
- Eero port forward: Pi:8080 → media:80 (still not flipped)
|
||||
|
||||
## SESSION-STATE.md
|
||||
- Trimmed from 63 to ~40 lines (archived old research notes)
|
||||
- Kept lean: current task, key context, pending actions, project status
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
39
sources/psb-thinking-2026-04-25.md
Normal file
39
sources/psb-thinking-2026-04-25.md
Normal file
@@ -0,0 +1,39 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-25
|
||||
title: psb-thinking-2026-04-25
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-25.md
|
||||
ingestedAt: 2026-05-03T01:59:02.884Z
|
||||
updatedAt: 2026-05-03T01:59:02.884Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-25
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-25.md`
|
||||
- Bytes: 391
|
||||
- Updated: 2026-05-03T01:59:02.884Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
## Dreaming Anomaly
|
||||
- Last dreaming event: Apr 23 17:29 UTC (~40h 50m gap by 10:20 Apr 25)
|
||||
- Config says `0 7 * * *` (7 AM UTC) but actual firing observed ~17:29 UTC
|
||||
- events.jsonl: 18 entries, last timestamp 2026-04-23T17:29:04.192Z
|
||||
- .dreams/ directory timestamp: Apr 23 17:29:04 — no new dreaming activity detected
|
||||
- DREAMS.md root file: NOT being written (persistent bug, no fix yet)
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
45
sources/psb-thinking-2026-04-26.md
Normal file
45
sources/psb-thinking-2026-04-26.md
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-26
|
||||
title: psb-thinking-2026-04-26
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-26.md
|
||||
ingestedAt: 2026-05-03T01:59:26.141Z
|
||||
updatedAt: 2026-05-03T01:59:26.141Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-26
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-26.md`
|
||||
- Bytes: 541
|
||||
- Updated: 2026-05-03T01:59:26.141Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
|
||||
## 04:51 UTC - Dreaming Still Silent
|
||||
- ~59h since last dreaming event (Apr 23 17:29 UTC)
|
||||
- Config: `0 7 * * *` — should fire at 07:00 UTC but hasn't
|
||||
- events.jsonl still at 18 entries, last timestamp unchanged
|
||||
- .dreams/ directory unchanged since Apr 23 17:29
|
||||
- DREAMS.md never written — persistent bug
|
||||
|
||||
## 07:21 UTC - Dreaming Config Firing Time Passes
|
||||
- Config `0 7 * * *` should fire at 07:00 UTC
|
||||
- No new events by 07:21 — ~61h gap now
|
||||
- events.jsonl: 18 entries, last Apr 23 17:29 UTC
|
||||
- .dreams/ dir unchanged since Apr 23 17:29
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
71
sources/psb-thinking-2026-04-29.md
Normal file
71
sources/psb-thinking-2026-04-29.md
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-29
|
||||
title: psb-thinking-2026-04-29
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-29.md
|
||||
ingestedAt: 2026-05-03T01:59:49.317Z
|
||||
updatedAt: 2026-05-03T01:59:49.317Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-29
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-29.md`
|
||||
- Bytes: 1720
|
||||
- Updated: 2026-05-03T01:59:49.317Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 2026-04-29 — Daily Log
|
||||
|
||||
## Dreaming Status (Apr 30 00:40 UTC update)
|
||||
- **Still broken**: No new dream events since Apr 27 11:31 UTC (~61h ago)
|
||||
- Pattern: Dreams fire once after a gap, then stop completely
|
||||
- Gateway has restarted multiple times (PIDs 263379, 371254, 2297563)
|
||||
- No error messages in journalctl — gateway running clean
|
||||
- Dreaming scheduler appears non-functional
|
||||
- Manual intervention may be needed (restart openclaw-gateway, check plugin config)
|
||||
|
||||
## Gateway Restarts (Apr 28-29)
|
||||
- PID 1822221 died sometime Apr 28
|
||||
- PID 263379 started Apr 28 ~unknown
|
||||
- PID 371254 started Apr 29 00:28:16
|
||||
- PID 2297563 started Apr 29 17:40:10 (current)
|
||||
|
||||
## Notes
|
||||
- Dreaming investigation ongoing — no solution found yet
|
||||
- System otherwise healthy, no user conversations
|
||||
|
||||
## Apr 30 Status (as of 18:26 UTC)
|
||||
- Dreaming: RESUMED! 🎉 2 events at Apr 30 17:15:45 + 18:13:49 UTC after ~75h gap
|
||||
- events.jsonl: 21 lines (was 19) — 2 new events
|
||||
- Pattern: 2 events within 58 minutes (not single-shot)
|
||||
- Gateway PID 2297563 running ~23h, memory 1.7GB
|
||||
|
||||
## Apr 30 18:26 UTC — DREAMING RESUMED! 🎉
|
||||
- 2 new dream events after ~75h gap: Apr 30 17:15:45 and 18:13:49 UTC
|
||||
- events.jsonl now 21 lines (was 19)
|
||||
- Directory timestamp updated to Apr 30 18:13
|
||||
- Pattern changed: now 2 events within 58 minutes instead of the usual single-shot
|
||||
- Gateway PID 2297563 still running, memory 1.7GB
|
||||
|
||||
## May 1 07:01 UTC — Dreaming HEALTHY again!
|
||||
- 11 new events fired at 2026-05-01T07:00:01.598Z
|
||||
- events.jsonl: 32 lines (was 21)
|
||||
- New files: session-corpus/, daily-ingestion.json, phase-signals.json, session-ingestion.json
|
||||
- Pattern: all 11 events same timestamp — batch processing
|
||||
- Gateway PID 1710, uptime ~29h, memory 913MB
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
69
sources/psb-thinking-2026-04-30.md
Normal file
69
sources/psb-thinking-2026-04-30.md
Normal file
@@ -0,0 +1,69 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-04-30
|
||||
title: psb-thinking-2026-04-30
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-30.md
|
||||
ingestedAt: 2026-05-03T02:00:12.563Z
|
||||
updatedAt: 2026-05-03T02:00:12.563Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-04-30
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-04-30.md`
|
||||
- Bytes: 1832
|
||||
- Updated: 2026-05-03T02:00:12.563Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 2026-04-30 — Daily Log
|
||||
|
||||
## LLMwiki Discussion
|
||||
- Topher asked about LLMwiki vs our setup
|
||||
- Karpathy's pattern: LLM builds/maintains persistent markdown wiki from sources (not raw retrieval)
|
||||
- nashsu/llm_wiki is a desktop app implementation of the pattern
|
||||
- Key insight: LLMwiki compiles knowledge once, our RAG re-derives every query
|
||||
- Our Qdrant scales better (millions of vectors) and supports multi-agent sharing
|
||||
- Best approach: complementary layers (wiki on top, vector DB underneath)
|
||||
- At brewery scale (~100s of docs), LLMwiki would work great but loses multi-agent Qdrant
|
||||
|
||||
## Gemma Stuck in Loop
|
||||
- Topher noticed Gemma looping
|
||||
- Session shows: heartbeat → tilt script → can't post to PSB → gateway restart attempt → repeat
|
||||
- Gateway 1006 connection drops compounding the issue
|
||||
- Offered to reset her session, awaiting Topher's call
|
||||
|
||||
## Gateway Health
|
||||
- Gateway briefly unreachable (1006 errors) around 17:15-17:21 UTC
|
||||
- Recovered on its own
|
||||
|
||||
## Dreaming
|
||||
- RESUMED — 2 events at 17:15 + 18:13 UTC after ~75h gap
|
||||
- 21 total events in events.jsonl now
|
||||
|
||||
## Gateway Bind Fix
|
||||
- Root cause of 1006 errors: customBindHost was 192.168.0.207 (LAN only), localhost connections refused
|
||||
- Changed customBindHost to 0.0.0.0 — both 127.0.0.1 and 192.168.0.207 now return 200
|
||||
- Backup: openclaw.json.bak.2026-04-30
|
||||
- This was also causing Gemma's loop — every tool call hit 1006
|
||||
|
||||
## Mission Control (robsannaa)
|
||||
- Installed at ~/.openclaw/openclaw-mission-control
|
||||
- Running dev mode on port 3333 (http://192.168.0.207:3333)
|
||||
- Version 0.4.9, MIT license, Next.js 16.1.6
|
||||
- Features: dashboard, chat with agents, Kanban tasks, cron management, cost tracking, memory browser, model management, doctor, terminal
|
||||
- Needs systemd service setup for persistence (currently foreground dev mode)
|
||||
- Topher approved and is testing it now
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
57
sources/psb-thinking-2026-05-01.md
Normal file
57
sources/psb-thinking-2026-05-01.md
Normal file
@@ -0,0 +1,57 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-2026-05-01
|
||||
title: psb-thinking-2026-05-01
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/2026-05-01.md
|
||||
ingestedAt: 2026-05-03T02:00:35.891Z
|
||||
updatedAt: 2026-05-03T02:00:35.891Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-2026-05-01
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/2026-05-01.md`
|
||||
- Bytes: 1421
|
||||
- Updated: 2026-05-03T02:00:35.891Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# 2026-05-01 — Daily Log
|
||||
|
||||
## CPU Drain Investigation & Fix
|
||||
- OpenClaw gateway was at 61% CPU at idle after v2026.4.29 upgrade attempt
|
||||
- Root cause: Discord crash loop — rate-limited slash commands, gateway timeouts, 30-40s event loop blocks
|
||||
- Discord was reconnecting in a loop, each cycle blocking Node event loop
|
||||
- Agent bootstraps taking 80-117s (should be 5-10s), LLM calls timing out, Telegram send failures
|
||||
- Fix: Disabled Discord in openclaw.json (`channels.discord.enabled = false`)
|
||||
- CPU dropped from 61% → 14% after Discord disable + gateway restart
|
||||
- Also set `channels.telegram.timeoutSeconds = 30` (v2026.4.8 didn't have v2026.4.29's polling fix)
|
||||
|
||||
## OpenClaw Upgrade Status
|
||||
- Claw attempted upgrade to v2026.4.29 — went sideways
|
||||
- npm still shows v2026.4.8 installed globally
|
||||
- Partial artifacts remain: plugin-runtime-deps/openclaw-2026.4.29-*, openclaw.json.backup-2026.4.29, openclaw.json.last-good
|
||||
- Config lastTouchedVersion = 2026.4.29 but actual installed version = 2026.4.8
|
||||
- Need to decide: complete upgrade or stay on v2026.4.8
|
||||
|
||||
## New Software Found
|
||||
- Claw Empire (climpire v2.0.4) installed at ~/openclaw/claw-empire/ — multi-agent orchestration dashboard
|
||||
- Not currently running, no systemd service
|
||||
- Mission Control (robsannaa) also not running — was on port 3333 dev mode
|
||||
|
||||
## Pi Reboot
|
||||
- Topher rebooted the Pi during the session
|
||||
- Pi back online on Tailscale (100.99.44.24, 11ms)
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
148
sources/psb-thinking-fermentation-dashboard.md
Normal file
148
sources/psb-thinking-fermentation-dashboard.md
Normal file
@@ -0,0 +1,148 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-fermentation-dashboard
|
||||
title: psb-thinking-fermentation-dashboard
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/projects/fermentation-dashboard.md
|
||||
ingestedAt: 2026-05-03T02:02:18.239Z
|
||||
updatedAt: 2026-05-03T02:02:18.239Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-fermentation-dashboard
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/projects/fermentation-dashboard.md`
|
||||
- Bytes: 2955
|
||||
- Updated: 2026-05-03T02:02:18.239Z
|
||||
|
||||
## Content
|
||||
````text
|
||||
# Fermentation Dashboard Upgrade
|
||||
|
||||
**Status:** Planning / Not started
|
||||
**Location:** BREWERY
|
||||
**Goal:** Make the existing fermentation display prettier
|
||||
|
||||
---
|
||||
|
||||
## Current State
|
||||
|
||||
- TILT Hydrometers → ESP32 Bridge → Brewery Home Assistant
|
||||
- Existing fermentation dashboard in HA
|
||||
- Fire Stick display in brewhouse
|
||||
- **Pain point:** Current display isn't pretty enough
|
||||
|
||||
---
|
||||
|
||||
## Options for Improvement
|
||||
|
||||
### Option 1: HA Native Dashboard (Simplest)
|
||||
**Use HA's built-in Lovelace cards**
|
||||
- Mushroom cards, Auto Entities, Mini Graph Card
|
||||
- Custom themes (e.g., "Mushroom", "iOS Dark Mode")
|
||||
- No extra services needed
|
||||
|
||||
**Pros:**
|
||||
- Everything already in HA
|
||||
- No InfluxDB/Grafana complexity
|
||||
- Fast, responsive
|
||||
|
||||
**Cons:**
|
||||
- Less customizable than Grafana
|
||||
- Graph styling limited
|
||||
|
||||
---
|
||||
|
||||
### Option 2: HA + InfluxDB + Grafana (Prettiest)
|
||||
**Pipe TILT data to Grafana for beautiful graphs**
|
||||
|
||||
```
|
||||
TILT → ESP32 → HA → InfluxDB → Grafana → Fire Stick
|
||||
```
|
||||
|
||||
**HA Add-ons available:**
|
||||
- InfluxDB (official HA add-on)
|
||||
- Grafana (official HA add-on)
|
||||
|
||||
**Pros:**
|
||||
- Stunning visualizations
|
||||
- Highly customizable
|
||||
- Professional brewery monitoring look
|
||||
|
||||
**Cons:**
|
||||
- More complexity (2 extra services)
|
||||
- ~300-500MB RAM usage
|
||||
- Need to configure data pipeline
|
||||
|
||||
---
|
||||
|
||||
### Option 3: Hybrid
|
||||
**HA for controls, Grafana for display**
|
||||
- Keep HA dashboard for interaction
|
||||
- Grafana dashboard on Fire Stick (read-only, pretty graphs)
|
||||
- Best of both worlds
|
||||
|
||||
---
|
||||
|
||||
## User Decisions (2026-04-04)
|
||||
|
||||
- **Current state:** Decent fermentation dashboard exists, wants it "prettier"
|
||||
- **Architecture:** TILT → ESP32 Bridge → Brewery HA → Fire Stick (already working)
|
||||
- **HA Access:** ✅ Token provided for PSB-server (100.126.129.57:8123)
|
||||
- **Decision pending:** HA native cards vs. InfluxDB+Grafana add-ons
|
||||
|
||||
**Fermenters:** 4 total
|
||||
|
||||
## Data Discovery (2026-04-04)
|
||||
|
||||
**Active TILT Sensors:****
|
||||
| Sensor | Temp (°F) | SG | Signal |
|
||||
|--------|-----------|----|--------|
|
||||
| Green TILT | 67.6 | 1.0384 | -82 |
|
||||
| White TILT | 43.4 | 1.0155 | -74 |
|
||||
| Pink TILT | Unavailable | Unavailable | Unavailable |
|
||||
| Orange TILT | Unavailable | Unavailable | Unavailable |
|
||||
|
||||
**Other fermentation entities:**
|
||||
- `switch.fermenterswitch` (unavailable)
|
||||
- Power/energy sensors for fermenter switch
|
||||
- Device trackers for SG trackers (likely backup monitoring)
|
||||
|
||||
**HA Components present:** ESPHome, ZHA (Zigbee), HACS, Node-RED, Frigate, WLED, IKEA Tradfri lighting
|
||||
|
||||
---
|
||||
|
||||
## TODO
|
||||
|
||||
- [ ] **WAITING:** User to share Brewery HA token
|
||||
- [ ] Review current fermentation dashboard layout
|
||||
- [ ] Assess: HA native upgrade sufficient, or need Grafana?
|
||||
- [ ] If Grafana: Install HA add-ons (InfluxDB + Grafana), configure data flow
|
||||
- [ ] Design new dashboard layout
|
||||
- [ ] Configure Fire Stick kiosk mode (Fully Kiosk Browser or Chrome)
|
||||
- [ ] Test + iterate
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- Brewery HA is separate from home HA
|
||||
- Fire Stick already in brewhouse
|
||||
- TILT data already flowing (no new sensors needed)
|
||||
|
||||
---
|
||||
|
||||
*Created: 2026-04-04*
|
||||
|
||||
````
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
349
sources/psb-thinking-pihole-blocker.md
Normal file
349
sources/psb-thinking-pihole-blocker.md
Normal file
@@ -0,0 +1,349 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-pihole-blocker
|
||||
title: psb-thinking-pihole-blocker
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/projects/pihole-blocker.md
|
||||
ingestedAt: 2026-05-03T02:02:41.347Z
|
||||
updatedAt: 2026-05-03T02:02:41.347Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-pihole-blocker
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/projects/pihole-blocker.md`
|
||||
- Bytes: 9252
|
||||
- Updated: 2026-05-03T02:02:41.347Z
|
||||
|
||||
## Content
|
||||
````text
|
||||
# Pi-hole Blocker Project
|
||||
|
||||
**Status:** Planning / Not started
|
||||
**Hardware:** Seeed Studio Dual-GbE Carrier Board with 4GB RAM + 32GB eMMC (CM4)
|
||||
**URL:** https://www.seeedstudio.com/Dual-GbE-Carrier-Board-with-4GB-RAM-32GB-eMMC-RPi-CM4-Case-p-5029.html
|
||||
|
||||
---
|
||||
|
||||
## Decision Log
|
||||
|
||||
### 2026-04-04 — Initial Research
|
||||
|
||||
**Hardware selected:** CM4 with dual GbE + eMMC (no SD card!)
|
||||
|
||||
**Chosen approach:** Raspberry Pi OS Lite + Pi-hole (manual install)
|
||||
- Full control
|
||||
- Well-documented
|
||||
- eMMC more reliable than SD
|
||||
- Dual GbE enables passthrough or bridge mode
|
||||
|
||||
**Rejected:**
|
||||
- Pre-built images (outdated, inflexible)
|
||||
- DietPi (good but less common for troubleshooting)
|
||||
- Docker (overkill for dedicated hardware)
|
||||
|
||||
---
|
||||
|
||||
## TODO (When Ready)
|
||||
|
||||
- [ ] Flash Raspberry Pi OS Lite (64-bit) to eMMC
|
||||
- [ ] Enable SSH, set hostname before first boot
|
||||
- [ ] First boot + network config
|
||||
- [ ] Install Pi-hole: `curl -sSL https://install.pi-hole.net | bash`
|
||||
- [ ] Configure upstream DNS (Cloudflare/Google/Quad9)
|
||||
- [ ] Decide network mode: passthrough vs bridge vs VLAN
|
||||
- [ ] Point router DNS to Pi-hole IP
|
||||
- [ ] Test + document
|
||||
|
||||
---
|
||||
|
||||
## Network Config Notes (Dual GbE)
|
||||
|
||||
**Goal:** Transparent filtering for entire network
|
||||
|
||||
### Option 1: Single Port + Router DNS Redirect (Recommended) ⭐
|
||||
|
||||
```
|
||||
Modem → Existing Router → Pi-hole (eth0 only) → All devices
|
||||
↳ Time Machine (same port)
|
||||
```
|
||||
|
||||
**How:** Router forces all port 53 traffic to Pi-hole IP
|
||||
**Pros:**
|
||||
- Simplest setup
|
||||
- Existing router handles DHCP/NAT (less to break)
|
||||
- Time Machine works on same network
|
||||
- Dual GbE not needed, but harmless
|
||||
**Cons:**
|
||||
- Devices can bypass with hardcoded DNS (8.8.8.8)
|
||||
- Router must support DNS redirect/forced DNS
|
||||
|
||||
**Best for:** Most home setups, transparent operation
|
||||
|
||||
---
|
||||
|
||||
### Option 2: Bridge Mode (Dual GbE Active)
|
||||
|
||||
```
|
||||
Router → eth0 ─┬─ Pi-hole (bridged) ─┬─ eth1 → Switch/House
|
||||
└─ Time Machine share ─┘
|
||||
```
|
||||
|
||||
**How:** Both ports bridged at OS level, Pi acts as Layer 2 device
|
||||
**Pros:**
|
||||
- All traffic passes through (harder to bypass)
|
||||
- Time Machine visible to all devices
|
||||
- Existing router still handles DHCP/NAT
|
||||
**Cons:**
|
||||
- More complex network config (bridge interfaces)
|
||||
- Pi becomes network dependency (if it dies, network dies)
|
||||
|
||||
**Best for:** Maximum coverage, willing to troubleshoot bridging
|
||||
|
||||
---
|
||||
|
||||
### Option 3: Full Inline Router (Dual GbE)
|
||||
|
||||
```
|
||||
Modem → eth0 (WAN) → Pi-hole routes/NAT → eth1 (LAN) → House
|
||||
↳ Time Machine on LAN side
|
||||
```
|
||||
|
||||
**How:** Pi replaces your router entirely
|
||||
**Pros:**
|
||||
- Complete control, can't bypass
|
||||
- Full firewall/NAT control
|
||||
- True network segmentation possible
|
||||
**Cons:**
|
||||
- Most complex (DHCP, NAT, firewall rules)
|
||||
- Single point of failure
|
||||
- Time Machine only visible to LAN side
|
||||
- Need to reconfigure entire network
|
||||
|
||||
**Best for:** Advanced users, want full network control
|
||||
|
||||
---
|
||||
|
||||
## Decision Log
|
||||
|
||||
### 2026-04-04 — Final Decisions
|
||||
|
||||
**Network Mode:** Option 1 — Single Port + Router DNS Redirect ⭐
|
||||
- Existing router handles DHCP/NAT
|
||||
- Router forces DNS to Pi-hole
|
||||
- Time Machine on same network (no complications)
|
||||
- Can upgrade to bridge mode later if needed
|
||||
|
||||
**Add-ons Confirmed:**
|
||||
- ✅ Pi-hole (DNS ad-blocking)
|
||||
- ✅ Unbound (recursive DNS, privacy)
|
||||
- ✅ Time Machine (Mac backups via Samba + Avahi)
|
||||
- ✅ Wireshark/tcpdump lab (packet capture for learning)
|
||||
- ❌ WireGuard — SKIP (Tailscale already covers remote access)
|
||||
|
||||
**Location:** HOME (separate from brewery setup)
|
||||
|
||||
**Dual GbE Verdict:** NOT overkill — enables bridge mode for packet capture learning lab 🎓
|
||||
|
||||
**Rejected:**
|
||||
- Pre-built Pi-hole images (outdated, inflexible)
|
||||
- DietPi (less common for troubleshooting)
|
||||
- Docker (overkill for dedicated hardware)
|
||||
- Full inline router mode (too complex for v1)
|
||||
- WireGuard (Tailscale = WireGuard, redundant)
|
||||
|
||||
---
|
||||
|
||||
## Learning/Lab Use Cases (Dual GbE Bonus!)
|
||||
|
||||
### Packet Capture & Analysis (Wireshark/tcpdump)
|
||||
|
||||
**Bridge mode = perfect learning lab:**
|
||||
|
||||
```
|
||||
Router → eth0 → Pi (bridged) → eth1 → House
|
||||
↓
|
||||
Full packet capture
|
||||
```
|
||||
|
||||
**What you can learn:**
|
||||
- Wireshark filters and display rules
|
||||
- Protocol analysis (DNS, HTTP, SMB, etc.)
|
||||
- Network troubleshooting
|
||||
- Security analysis (spot suspicious traffic)
|
||||
- IoT device behavior (what's my Roomba actually doing?)
|
||||
|
||||
**Tools to install:**
|
||||
- `wireshark` (GUI, needs X11/VNC) or `tshark` (CLI)
|
||||
- `tcpdump` (lightweight CLI capture)
|
||||
- `nethogs` (bandwidth by process)
|
||||
- `iftop` / `ntopng` (real-time traffic visualization)
|
||||
|
||||
**Example commands:**
|
||||
```bash
|
||||
# Capture all traffic on eth0
|
||||
sudo tcpdump -i eth0 -w capture.pcap
|
||||
|
||||
# Live DNS query monitoring
|
||||
sudo tshark -i eth0 -Y "dns" -T fields -e dns.qry.name
|
||||
|
||||
# Real-time bandwidth by host
|
||||
sudo nethogs -t -c 5 eth0
|
||||
```
|
||||
|
||||
**Privacy note:** You'll see EVERYTHING on your network — passwords in plaintext (HTTP), browsing history, device fingerprints. Great for learning, serious responsibility.
|
||||
|
||||
---
|
||||
|
||||
### Other Lab Scenarios
|
||||
|
||||
| Scenario | Setup | Learning Value |
|
||||
|----------|-------|----------------|
|
||||
| **Network segmentation** | VLANs on dual NIC | Enterprise networking |
|
||||
| **Firewall rules** | iptables/nftables | Security hardening |
|
||||
| **QoS testing** | Traffic shaping | Bandwidth management |
|
||||
| **MITM analysis** | ARP spoofing detection | Security awareness |
|
||||
| **Service monitoring** | Port scanning, service discovery | Network mapping |
|
||||
|
||||
---
|
||||
|
||||
**Verdict:** Dual GbE is NOT overkill if you want a learning lab. Bridge mode + packet capture = home network university. 🎓
|
||||
|
||||
---
|
||||
|
||||
## Add-on Modules (Optional)
|
||||
|
||||
### Confirmed Interest (2026-04-04)
|
||||
|
||||
| Add-on | Purpose | Notes |
|
||||
|--------|---------|-------|
|
||||
| **Time Machine Target** | Network backup for Macs | Samba + Avahi, ~50MB RAM |
|
||||
| **Grafana + TILT Data** | Fermentation visualization | Pipe TILT data → InfluxDB → Grafana |
|
||||
| **Fire Stick Display** | Brew house monitoring screen | Display Grafana dashboard on Fire Stick |
|
||||
|
||||
### Architecture Clarification (2026-04-04)
|
||||
|
||||
**Location split:**
|
||||
- **Pi-hole CM4:** HOME (with dual GbE)
|
||||
- **TILT Bridge:** BREWERY (ESP32)
|
||||
- **Home Assistant:** BREWERY (separate instance)
|
||||
- **Fire Stick:** BREWERY (display)
|
||||
|
||||
**Implication:** TILT data already lives at brewery HA. Fire Stick should just display brewery HA directly!
|
||||
|
||||
### Simplified Brew House Display
|
||||
|
||||
```
|
||||
TILT → ESP32 Bridge → Brewery HA → Fire Stick (kiosk browser)
|
||||
```
|
||||
|
||||
**No need to pipe to home!** Fire Stick points at `http://brewery-ha:8123/lovelace/fermentation-dashboard`
|
||||
|
||||
### Home Pi-hole Box Add-ons (Final)
|
||||
|
||||
| Add-on | Purpose | Priority |
|
||||
|--------|---------|----------|
|
||||
| Pi-hole | DNS ad-blocking | Core |
|
||||
| Unbound | Recursive DNS (privacy) | High |
|
||||
| Time Machine | Mac backups | High |
|
||||
| Wireshark/tcpdump | Packet capture lab | Medium (learning) |
|
||||
| Grafana (home metrics) | Network monitoring | Low (optional) |
|
||||
|
||||
---
|
||||
|
||||
## Time Machine Backup — Detailed Specs
|
||||
|
||||
### Requirements
|
||||
|
||||
| Item | Details |
|
||||
|------|---------|
|
||||
| **OS** | Raspberry Pi OS Lite (any version) |
|
||||
| **Services** | Samba (SMB), Avahi (mDNS/Bonjour) |
|
||||
| **Storage** | USB drive (SSD recommended) or network share |
|
||||
| **RAM** | ~50MB overhead |
|
||||
| **CPU** | Minimal (compression is client-side) |
|
||||
|
||||
### How It Works
|
||||
|
||||
```
|
||||
Mac → Bonjour discovery (Avahi) → Samba share → USB drive on Pi
|
||||
```
|
||||
|
||||
1. Avahi advertises `_adisk._tcp` service (Mac sees it as Time Machine destination)
|
||||
2. Samba provides SMB share with Time Machine extensions
|
||||
3. Mac backs up over network automatically
|
||||
|
||||
---
|
||||
|
||||
### Limitations
|
||||
|
||||
| Limitation | Impact | Workaround |
|
||||
|------------|--------|------------|
|
||||
| **Network speed** | First backup slow (hours), subsequent faster | Use Ethernet, not WiFi |
|
||||
| **USB drive speed** | HDD = slow, SSD = fast | Use SSD for better experience |
|
||||
| **Single user** | One Mac per sparsebundle (by default) | Can configure multi-user but tricky |
|
||||
| **Backup size** | Limited by USB drive capacity | Use large drive (1TB+ recommended) |
|
||||
| **No encryption** | Backups unencrypted on disk | Enable FileVault on Mac instead |
|
||||
| **Pi must be on** | No backup if Pi is off | Set static IP, ensure uptime |
|
||||
|
||||
---
|
||||
|
||||
### Nice-to-Haves
|
||||
|
||||
| Feature | Why | How |
|
||||
|---------|-----|-----|
|
||||
| **SSD storage** | 10-20× faster than HDD | USB 3.0 SSD enclosure |
|
||||
| **Dedicated partition** | Isolate backups from OS | Separate USB drive or partition |
|
||||
| **Backup quotas** | Prevent one Mac from filling drive | `tmutil` setquota per Mac |
|
||||
| **Auto-mount** | Survive reboots | `/etc/fstab` entry |
|
||||
| **Monitoring** | Alert if backup fails | HA integration or cron check |
|
||||
| **Multiple destinations** | Redundancy | Rotate between 2 USB drives |
|
||||
|
||||
---
|
||||
|
||||
### Setup Commands (Reference)
|
||||
|
||||
```bash
|
||||
# Install Samba + Avahi
|
||||
sudo apt install samba avahi-daemon
|
||||
|
||||
# Create backup share
|
||||
sudo mkdir -p /srv/timemachine
|
||||
sudo chown nobody:nogroup /srv/timemachine
|
||||
sudo chmod 2777 /srv/timemachine
|
||||
|
||||
# Configure Samba (/etc/samba/smb.conf)
|
||||
# Configure Avahi (/etc/avahi/services/timemachine.service)
|
||||
|
||||
# Restart services
|
||||
sudo systemctl restart smbd avahi-daemon
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Estimated Setup Time
|
||||
|
||||
- **Fresh install:** ~30 minutes
|
||||
- **First Mac backup:** 2-8 hours (depends on data size)
|
||||
- **Subsequent backups:** 10-30 minutes (incremental)
|
||||
|
||||
---
|
||||
|
||||
*Created: 2026-04-04*
|
||||
|
||||
---
|
||||
|
||||
*Created: 2026-04-04*
|
||||
|
||||
````
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
122
sources/psb-thinking-robotics-team-agent.md
Normal file
122
sources/psb-thinking-robotics-team-agent.md
Normal file
@@ -0,0 +1,122 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-robotics-team-agent
|
||||
title: psb-thinking-robotics-team-agent
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/robotics-team-agent.md
|
||||
ingestedAt: 2026-05-03T02:00:59.157Z
|
||||
updatedAt: 2026-05-03T02:00:59.157Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-robotics-team-agent
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/robotics-team-agent.md`
|
||||
- Bytes: 3184
|
||||
- Updated: 2026-05-03T02:00:59.157Z
|
||||
|
||||
## Content
|
||||
````text
|
||||
# Robotics Team Agent - Potential Setup
|
||||
|
||||
## Current Status
|
||||
- **User:** Considering a dedicated OpenClaw instance OR a new isolated agent
|
||||
- **Context:** Losing programming coach next year; user is build/mechanical
|
||||
|
||||
## Team Details
|
||||
- **Grade levels:** 9-12
|
||||
- **Language:** Java
|
||||
- **Libraries:** YAGSL (swerve), PhotonVision (vision)
|
||||
- **Current sensors:** AprilTags (considering expansion to object detection)
|
||||
- **Hardware:** RobotRIO now, moving to Pi-based next year
|
||||
|
||||
## Requirements for Team Agent
|
||||
1. **Isolation** — Separate from "brewery side" (main household)
|
||||
2. **GitHub access** — Separate repo for team code
|
||||
3. **Google Drive** — For team documents/resources
|
||||
4. **Capabilities:**
|
||||
- Code audits
|
||||
- Java/WPILib/YAGSL code review
|
||||
- Teaching/debugging for students
|
||||
- PhotonVision integration help
|
||||
|
||||
## Model Recommendation
|
||||
- Ollama cloud (qwen2.5-coder:14b for code review, or 7b for speed)
|
||||
- Or local on Pi: qwen2.5-coder:7b
|
||||
|
||||
## Notes
|
||||
- Students should learn, not just get answers — guide them to solutions
|
||||
- Seniors can mentor younger students
|
||||
- Useful for explaining PID, state machines, odometry, vision pipelines
|
||||
|
||||
## Decision Pending
|
||||
- Dedicated instance vs. add new agent to existing OpenClaw
|
||||
- Not yet implemented
|
||||
|
||||
## Alternative Git Hosts (school blocks github.com specifically)
|
||||
- [x] **Gitea** — Self-hosted on CasaOS server ✓
|
||||
|
||||
## Gitea Setup - Complete (2026-03-12)
|
||||
|
||||
### External Access
|
||||
- **URL:** http://2890.duckdns.org:3002
|
||||
- **Port:** 3002 (TCP, port forwarded)
|
||||
- **DDNS:** 2890.duckdns.org → 174.206.100.116
|
||||
- **Status:** ✅ Externally accessible
|
||||
- **User:** TopherSlater
|
||||
|
||||
### Mirrored Repos (from GitHub)
|
||||
| Repo | URL | Status |
|
||||
|------|-----|--------|
|
||||
| YAGSL | `http://2890.duckdns.org:3002/TopherSlater/YAGSL` | ✅ |
|
||||
| photonvision | `http://2890.duckdns.org:3002/TopherSlater/photonvision` | ✅ |
|
||||
| allwpilib | `http://2890.duckdns.org:3002/TopherSlater/allwpilib` | ✅ |
|
||||
|
||||
### Mirror Method
|
||||
```bash
|
||||
# Clone bare, push branches+tags only (skip PR refs)
|
||||
git clone --bare https://github.com/ORG/REPO.git REPO-mirror
|
||||
cd REPO-mirror
|
||||
git remote set-url origin https://USER:TOKEN@localhost:3002/USER/REPO.git
|
||||
git push --all origin
|
||||
git push --tags origin
|
||||
```
|
||||
|
||||
### Auto-Sync Script
|
||||
- **Location:** `/opt/gitea-mirrors/sync.sh` (on CasaOS server)
|
||||
- **Auth:** Gitea token embedded (no password prompts)
|
||||
- **Cron:** `*/30 * * * * /opt/gitea-mirrors/sync.sh` (every 30 min)
|
||||
- **Status:** ✅ Tested and working
|
||||
|
||||
### Architecture
|
||||
- **Home server** runs Gitea + syncs with GitHub
|
||||
- Pulls libraries (YAGSL, PhotonLib, etc.) from GitHub
|
||||
- Pushes team code to GitHub for outside mentors
|
||||
- **Students** pull/push only from local Gitea (never touch GitHub)
|
||||
- **Outside mentors** access via Gitea directly
|
||||
|
||||
### TODO
|
||||
- [ ] Test student access from school network
|
||||
- [ ] Create team code repo in Gitea
|
||||
- [ ] Verify mirrors sync properly over time
|
||||
- [ ] Configure team repo access
|
||||
- [ ] Mirror YAGSL + dependencies from GitHub to Gitea
|
||||
- YAGSL
|
||||
- PhotonLib
|
||||
- WPILib (via vendor JSON - check if still needed)
|
||||
- Other key dependencies
|
||||
- [ ] Ensure Gradle is available locally (WPILib distribution or standalone)
|
||||
- [ ] Test build from school network
|
||||
|
||||
````
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
74
sources/psb-thinking-systemic-settings-loss.md
Normal file
74
sources/psb-thinking-systemic-settings-loss.md
Normal file
@@ -0,0 +1,74 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-systemic-settings-loss
|
||||
title: psb-thinking-systemic-settings-loss
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/tasks/systemic-settings-loss.md
|
||||
ingestedAt: 2026-05-03T02:01:22.530Z
|
||||
updatedAt: 2026-05-03T02:01:22.530Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-systemic-settings-loss
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/tasks/systemic-settings-loss.md`
|
||||
- Bytes: 1550
|
||||
- Updated: 2026-05-03T02:01:22.530Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Task: Systemic OpenClaw Settings Loss — Investigate and Document
|
||||
|
||||
**Filed by:** psb-gemma (from PSB group chat, 2026-04-21)
|
||||
**Priority:** Medium
|
||||
**Status:** Open
|
||||
|
||||
---
|
||||
|
||||
## Issue Summary
|
||||
|
||||
OpenClaw agents are silently losing settings that were previously enabled. Two confirmed cases:
|
||||
|
||||
1. **WAL mode** — documented as enabled on all agents 2026-04-08, currently NOT active on any sqlite store
|
||||
2. **Discord Message Content Intent** — checked in Dev Portal but not registering (hits 4014 DisallowedIntents)
|
||||
|
||||
The pattern is the same: settings appear to be applied but silently fail or revert. No error output, no notification.
|
||||
|
||||
---
|
||||
|
||||
## Confirmed State Today
|
||||
|
||||
- psb-gemma sqlite store: WAL not active (checked via `openclaw memory status`)
|
||||
- psb-thinking sqlite store: WAL not active (psb-thinking confirmed via own check)
|
||||
- psb-business: No WAL at all
|
||||
- psb-gemma has since had WAL protocol added to AGENTS.md + HEARTBEAT.md
|
||||
|
||||
---
|
||||
|
||||
## Questions to Answer
|
||||
|
||||
1. Where does OpenClaw store sqlite journal_mode? Is it in the sqlite file itself, a config file, or set at connection time?
|
||||
2. Why would it silently revert to DELETE journal mode?
|
||||
3. Is there an update/restart that could reset this?
|
||||
4. Same question for Discord Intent — is this an OpenClaw bug or a Discord API issue?
|
||||
|
||||
---
|
||||
|
||||
## Outcome Wanted
|
||||
|
||||
- Root cause identified (or at minimum, filed as an OpenClaw issue upstream)
|
||||
- A way to enforce WAL persistence across restarts — either a startup script, config fix, or upstream report
|
||||
- Document findings in `memory/systemic-settings-loss.md`
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
33
sources/psb-thinking-test-sync.md
Normal file
33
sources/psb-thinking-test-sync.md
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.psb-thinking-test-sync
|
||||
title: psb-thinking-test-sync
|
||||
sourceType: local-file
|
||||
sourcePath: /home/topher/.openclaw/workspace-psb-thinking/memory/test-sync.md
|
||||
ingestedAt: 2026-05-03T02:01:45.822Z
|
||||
updatedAt: 2026-05-03T02:01:45.822Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# psb-thinking-test-sync
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/topher/.openclaw/workspace-psb-thinking/memory/test-sync.md`
|
||||
- Bytes: 35
|
||||
- Updated: 2026-05-03T02:01:45.822Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Test Sync
|
||||
OpenClaw dreaming test.
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
Reference in New Issue
Block a user