bd: backup 2026-03-02 01:09

This commit is contained in:
zenchantlive 2026-03-01 17:09:23 -08:00
parent bead6b3996
commit 65fff3cf57
5 changed files with 72 additions and 14 deletions

View file

@ -1,13 +1,13 @@
{
"last_dolt_commit": "i3jb5m7gaih2erk0afei1e47uonm3qsr",
"last_dolt_commit": "epeu29kie3rkb82uo88m06hq1tbtgg3h",
"last_event_id": 0,
"timestamp": "2026-03-02T00:53:49.79089385Z",
"timestamp": "2026-03-02T01:09:22.3310961Z",
"counts": {
"issues": 437,
"events": 171,
"issues": 438,
"events": 186,
"comments": 2,
"dependencies": 540,
"labels": 655,
"dependencies": 580,
"labels": 657,
"config": 14
}
}

View file

@ -73,6 +73,7 @@
{"created_at":"2026-02-13T05:41:13Z","created_by":"zenchantlive","depends_on_id":"bb-6aj.7","issue_id":"bb-6aj.8","type":"blocks"}
{"created_at":"2026-02-13T05:41:30Z","created_by":"zenchantlive","depends_on_id":"bb-6aj","issue_id":"bb-6aj.9","type":"parent-child"}
{"created_at":"2026-02-13T05:41:30Z","created_by":"zenchantlive","depends_on_id":"bb-6aj.7","issue_id":"bb-6aj.9","type":"blocks"}
{"created_at":"2026-03-01T16:54:06Z","created_by":"ZenchantLive","depends_on_id":"beadboard-fga","issue_id":"bb-6bx","type":"relates-to"}
{"created_at":"2026-02-14T21:56:28Z","created_by":"zenchantlive","depends_on_id":"bb-6bx","issue_id":"bb-6bx.1","type":"parent-child"}
{"created_at":"2026-02-12T01:11:42Z","created_by":"zenchantlive","depends_on_id":"bb-92d","issue_id":"bb-92d.1","type":"parent-child"}
{"created_at":"2026-02-12T01:11:43Z","created_by":"zenchantlive","depends_on_id":"bb-92d","issue_id":"bb-92d.2","type":"parent-child"}
@ -183,6 +184,7 @@
{"created_at":"2026-02-14T23:04:47Z","created_by":"zenchantlive","depends_on_id":"bb-buff.4","issue_id":"bb-buff.4.5","type":"parent-child"}
{"created_at":"2026-02-14T23:04:48Z","created_by":"zenchantlive","depends_on_id":"bb-buff.4.4","issue_id":"bb-buff.4.5","type":"blocks"}
{"created_at":"2026-02-12T01:12:23Z","created_by":"zenchantlive","depends_on_id":"bb-trz","issue_id":"bb-bvn","type":"blocks"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"beadboard-60a","issue_id":"bb-bvn","type":"relates-to"}
{"created_at":"2026-02-12T01:12:10Z","created_by":"zenchantlive","depends_on_id":"bb-bvn","issue_id":"bb-bvn.1","type":"parent-child"}
{"created_at":"2026-02-12T04:10:03Z","created_by":"zenchantlive","depends_on_id":"bb-bvn.4","issue_id":"bb-bvn.1","type":"blocks"}
{"created_at":"2026-02-12T01:12:11Z","created_by":"zenchantlive","depends_on_id":"bb-bvn","issue_id":"bb-bvn.2","type":"parent-child"}
@ -211,6 +213,7 @@
{"created_at":"2026-02-13T20:57:09Z","created_by":"zenchantlive","depends_on_id":"bb-dcv.2","issue_id":"bb-dcv.7","type":"blocks"}
{"created_at":"2026-02-13T22:45:05Z","created_by":"zenchantlive","depends_on_id":"bb-dcv","issue_id":"bb-dcv.8","type":"parent-child"}
{"created_at":"2026-02-13T22:45:12Z","created_by":"zenchantlive","depends_on_id":"bb-dcv.5","issue_id":"bb-dcv.8","type":"blocks"}
{"created_at":"2026-03-01T16:54:06Z","created_by":"ZenchantLive","depends_on_id":"beadboard-fga","issue_id":"bb-ff6","type":"relates-to"}
{"created_at":"2026-02-14T21:47:43Z","created_by":"zenchantlive","depends_on_id":"bb-jp2","issue_id":"bb-jp2.1","type":"parent-child"}
{"created_at":"2026-02-14T21:47:48Z","created_by":"zenchantlive","depends_on_id":"bb-jp2","issue_id":"bb-jp2.2","type":"parent-child"}
{"created_at":"2026-02-14T21:47:54Z","created_by":"zenchantlive","depends_on_id":"bb-jp2","issue_id":"bb-jp2.3","type":"parent-child"}
@ -231,6 +234,7 @@
{"created_at":"2026-02-12T01:11:55Z","created_by":"zenchantlive","depends_on_id":"bb-tpc","issue_id":"bb-tpc.3","type":"parent-child"}
{"created_at":"2026-02-12T01:12:29Z","created_by":"zenchantlive","depends_on_id":"bb-tpc.2","issue_id":"bb-tpc.3","type":"blocks"}
{"created_at":"2026-02-12T04:09:59Z","created_by":"zenchantlive","depends_on_id":"bb-tpc.5","issue_id":"bb-tpc.3","type":"blocks"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"beadboard-6fv","issue_id":"bb-tpc.3","type":"relates-to"}
{"created_at":"2026-02-12T01:11:56Z","created_by":"zenchantlive","depends_on_id":"bb-tpc","issue_id":"bb-tpc.4","type":"parent-child"}
{"created_at":"2026-02-12T01:12:30Z","created_by":"zenchantlive","depends_on_id":"bb-tpc.3","issue_id":"bb-tpc.4","type":"blocks"}
{"created_at":"2026-02-12T04:10:01Z","created_by":"zenchantlive","depends_on_id":"bb-tpc.5","issue_id":"bb-tpc.4","type":"blocks"}
@ -255,6 +259,7 @@
{"created_at":"2026-02-12T01:12:15Z","created_by":"zenchantlive","depends_on_id":"bb-u6f","issue_id":"bb-u6f.3","type":"parent-child"}
{"created_at":"2026-02-12T01:12:38Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.2","issue_id":"bb-u6f.3","type":"blocks"}
{"created_at":"2026-02-12T04:09:56Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.4","issue_id":"bb-u6f.3","type":"blocks"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-duo","issue_id":"bb-u6f.3","type":"relates-to"}
{"created_at":"2026-02-14T06:47:28Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.3","issue_id":"bb-u6f.3.1","type":"parent-child"}
{"created_at":"2026-02-14T06:47:28Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.3","issue_id":"bb-u6f.3.2","type":"parent-child"}
{"created_at":"2026-02-14T06:47:29Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.3","issue_id":"bb-u6f.3.3","type":"parent-child"}
@ -266,7 +271,9 @@
{"created_at":"2026-02-14T05:50:37Z","created_by":"zenchantlive","depends_on_id":"bb-u6f","issue_id":"bb-u6f.5","type":"parent-child"}
{"created_at":"2026-02-14T05:51:41Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.3","issue_id":"bb-u6f.5","type":"blocks"}
{"created_at":"2026-02-14T17:53:06Z","created_by":"zenchantlive","depends_on_id":"bb-u6f","issue_id":"bb-u6f.6","type":"parent-child"}
{"created_at":"2026-03-01T16:53:58Z","created_by":"ZenchantLive","depends_on_id":"beadboard-dvp","issue_id":"bb-u6f.6","type":"relates-to"}
{"created_at":"2026-02-14T17:53:07Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.6","issue_id":"bb-u6f.6.1","type":"parent-child"}
{"created_at":"2026-03-01T16:53:59Z","created_by":"ZenchantLive","depends_on_id":"beadboard-dvp","issue_id":"bb-u6f.6.1","type":"relates-to"}
{"created_at":"2026-02-14T17:53:07Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.6","issue_id":"bb-u6f.6.2","type":"parent-child"}
{"created_at":"2026-02-14T17:53:07Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.6.1","issue_id":"bb-u6f.6.2","type":"blocks"}
{"created_at":"2026-02-14T17:53:08Z","created_by":"zenchantlive","depends_on_id":"bb-u6f.6","issue_id":"bb-u6f.6.3","type":"parent-child"}
@ -406,6 +413,7 @@
{"created_at":"2026-02-12T01:12:36Z","created_by":"zenchantlive","depends_on_id":"bb-xhm.2","issue_id":"bb-xhm.3","type":"blocks"}
{"created_at":"2026-02-12T04:10:07Z","created_by":"zenchantlive","depends_on_id":"bb-xhm.4","issue_id":"bb-xhm.3","type":"blocks"}
{"created_at":"2026-02-12T04:09:39Z","created_by":"zenchantlive","depends_on_id":"bb-xhm","issue_id":"bb-xhm.4","type":"parent-child"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"beadboard-6fv","issue_id":"bb-xtu","type":"relates-to"}
{"created_at":"2026-02-12T01:12:22Z","created_by":"zenchantlive","depends_on_id":"bb-tpc","issue_id":"bb-ymg","type":"blocks"}
{"created_at":"2026-02-12T01:12:21Z","created_by":"zenchantlive","depends_on_id":"bb-trz","issue_id":"bb-ymg","type":"blocks"}
{"created_at":"2026-02-12T01:12:32Z","created_by":"zenchantlive","depends_on_id":"bb-6aj.2","issue_id":"bb-ymg.1","type":"blocks"}
@ -419,6 +427,7 @@
{"created_at":"2026-02-12T01:12:35Z","created_by":"zenchantlive","depends_on_id":"bb-trz.1","issue_id":"bb-ymg.4","type":"blocks"}
{"created_at":"2026-02-12T01:12:05Z","created_by":"zenchantlive","depends_on_id":"bb-ymg","issue_id":"bb-ymg.4","type":"parent-child"}
{"created_at":"2026-02-12T01:12:34Z","created_by":"zenchantlive","depends_on_id":"bb-ymg.2","issue_id":"bb-ymg.4","type":"blocks"}
{"created_at":"2026-03-01T16:54:04Z","created_by":"ZenchantLive","depends_on_id":"beadboard-6fv","issue_id":"beadboard-03r","type":"relates-to"}
{"created_at":"2026-02-28T14:05:07Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-0fi","type":"blocks"}
{"created_at":"2026-02-28T14:03:37Z","created_by":"ZenchantLive","depends_on_id":"beadboard-0fi","issue_id":"beadboard-0fi.1","type":"parent-child"}
{"created_at":"2026-02-28T14:04:47Z","created_by":"ZenchantLive","depends_on_id":"beadboard-0fi","issue_id":"beadboard-0fi.2","type":"parent-child"}
@ -428,6 +437,7 @@
{"created_at":"2026-03-01T16:53:51Z","created_by":"ZenchantLive","depends_on_id":"bb-92d.6","issue_id":"beadboard-116","type":"relates-to"}
{"created_at":"2026-03-01T16:53:51Z","created_by":"ZenchantLive","depends_on_id":"beadboard-jgy","issue_id":"beadboard-116","type":"relates-to"}
{"created_at":"2026-03-01T16:39:57Z","created_by":"ZenchantLive","depends_on_id":"beadboard-nq9","issue_id":"beadboard-116","type":"relates-to"}
{"created_at":"2026-03-01T16:53:57Z","created_by":"ZenchantLive","depends_on_id":"beadboard-yz6","issue_id":"beadboard-116","type":"relates-to"}
{"created_at":"2026-02-24T01:38:23Z","created_by":"zenchantlive","depends_on_id":"beadboard-60s","issue_id":"beadboard-12l","type":"blocks"}
{"created_at":"2026-02-24T01:38:23Z","created_by":"zenchantlive","depends_on_id":"beadboard-cm8","issue_id":"beadboard-12l","type":"blocks"}
{"created_at":"2026-02-24T01:38:07Z","created_by":"zenchantlive","depends_on_id":"beadboard-uui","issue_id":"beadboard-12l","type":"parent"}
@ -442,14 +452,27 @@
{"created_at":"2026-03-01T16:39:58Z","created_by":"ZenchantLive","depends_on_id":"beadboard-dvp","issue_id":"beadboard-5r1","type":"relates-to"}
{"created_at":"2026-02-24T01:38:23Z","created_by":"zenchantlive","depends_on_id":"beadboard-ck0","issue_id":"beadboard-5sr","type":"blocks"}
{"created_at":"2026-02-24T01:38:07Z","created_by":"zenchantlive","depends_on_id":"beadboard-uui","issue_id":"beadboard-5sr","type":"parent"}
{"created_at":"2026-03-01T16:54:07Z","created_by":"ZenchantLive","depends_on_id":"beadboard-fga","issue_id":"beadboard-5vs","type":"relates-to"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"bb-bvn","issue_id":"beadboard-60a","type":"relates-to"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-60a","type":"relates-to"}
{"created_at":"2026-03-01T16:39:59Z","created_by":"ZenchantLive","depends_on_id":"beadboard-76p","issue_id":"beadboard-60a","type":"relates-to"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-60a","type":"relates-to"}
{"created_at":"2026-02-24T01:38:07Z","created_by":"zenchantlive","depends_on_id":"beadboard-uui","issue_id":"beadboard-60s","type":"parent"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"beadboard-60a","issue_id":"beadboard-68k","type":"relates-to"}
{"created_at":"2026-02-28T13:06:55Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-68k.1","type":"parent-child"}
{"created_at":"2026-02-28T13:07:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-68k.2","type":"parent-child"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-duo","issue_id":"beadboard-68k.2","type":"relates-to"}
{"created_at":"2026-02-28T13:07:13Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-68k.3","type":"parent-child"}
{"created_at":"2026-02-28T13:26:54Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k.2","issue_id":"beadboard-68k.3","type":"blocks"}
{"created_at":"2026-02-28T13:07:20Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-68k.4","type":"parent-child"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-duo","issue_id":"beadboard-68k.4","type":"relates-to"}
{"created_at":"2026-03-01T16:54:01Z","created_by":"ZenchantLive","depends_on_id":"beadboard-zas","issue_id":"beadboard-68k.4","type":"relates-to"}
{"created_at":"2026-02-28T13:07:27Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k","issue_id":"beadboard-68k.5","type":"parent-child"}
{"created_at":"2026-03-01T16:54:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-zas","issue_id":"beadboard-68k.5","type":"relates-to"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"bb-tpc.3","issue_id":"beadboard-6fv","type":"relates-to"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"bb-xtu","issue_id":"beadboard-6fv","type":"relates-to"}
{"created_at":"2026-03-01T16:54:04Z","created_by":"ZenchantLive","depends_on_id":"beadboard-03r","issue_id":"beadboard-6fv","type":"relates-to"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8rg","issue_id":"beadboard-6fv","type":"relates-to"}
{"created_at":"2026-03-01T16:40:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8st","issue_id":"beadboard-6fv","type":"relates-to"}
{"created_at":"2026-03-01T16:39:59Z","created_by":"ZenchantLive","depends_on_id":"beadboard-60a","issue_id":"beadboard-76p","type":"relates-to"}
{"created_at":"2026-03-01T16:40:01Z","created_by":"ZenchantLive","depends_on_id":"beadboard-zas","issue_id":"beadboard-76p","type":"relates-to"}
@ -477,6 +500,7 @@
{"created_at":"2026-02-28T14:29:36Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8ij.1","issue_id":"beadboard-8ij.3","type":"blocks"}
{"created_at":"2026-02-28T14:29:28Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8ij","issue_id":"beadboard-8ij.4","type":"parent-child"}
{"created_at":"2026-02-28T14:29:36Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8ij.1","issue_id":"beadboard-8ij.4","type":"blocks"}
{"created_at":"2026-03-01T16:54:05Z","created_by":"ZenchantLive","depends_on_id":"beadboard-6fv","issue_id":"beadboard-8rg","type":"relates-to"}
{"created_at":"2026-03-01T16:40:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-6fv","issue_id":"beadboard-8st","type":"relates-to"}
{"created_at":"2026-03-01T16:40:04Z","created_by":"ZenchantLive","depends_on_id":"beadboard-fga","issue_id":"beadboard-8st","type":"relates-to"}
{"created_at":"2026-02-21T18:50:43Z","created_by":"zenchantlive","depends_on_id":"beadboard-8u3","issue_id":"beadboard-8u3.1","type":"parent-child"}
@ -498,10 +522,19 @@
{"created_at":"2026-02-28T14:39:47Z","created_by":"ZenchantLive","depends_on_id":"beadboard-d2x","issue_id":"beadboard-d2x.2","type":"parent-child"}
{"created_at":"2026-02-28T14:39:56Z","created_by":"ZenchantLive","depends_on_id":"beadboard-d2x.1","issue_id":"beadboard-d2x.2","type":"blocks"}
{"created_at":"2026-02-24T01:38:07Z","created_by":"zenchantlive","depends_on_id":"beadboard-uui","issue_id":"beadboard-d4n","type":"parent"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"bb-u6f.3","issue_id":"beadboard-duo","type":"relates-to"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k.2","issue_id":"beadboard-duo","type":"relates-to"}
{"created_at":"2026-03-01T16:54:03Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k.4","issue_id":"beadboard-duo","type":"relates-to"}
{"created_at":"2026-03-01T16:40:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-fld","issue_id":"beadboard-duo","type":"relates-to"}
{"created_at":"2026-03-01T16:53:58Z","created_by":"ZenchantLive","depends_on_id":"bb-u6f.6","issue_id":"beadboard-dvp","type":"relates-to"}
{"created_at":"2026-03-01T16:53:59Z","created_by":"ZenchantLive","depends_on_id":"bb-u6f.6.1","issue_id":"beadboard-dvp","type":"relates-to"}
{"created_at":"2026-03-01T16:39:58Z","created_by":"ZenchantLive","depends_on_id":"beadboard-5r1","issue_id":"beadboard-dvp","type":"relates-to"}
{"created_at":"2026-03-01T16:53:59Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-dvp","type":"relates-to"}
{"created_at":"2026-02-21T04:03:20Z","created_by":"zenchantlive","depends_on_id":"beadboard-3xc","issue_id":"beadboard-eo8","type":"parent"}
{"created_at":"2026-02-21T04:03:22Z","created_by":"zenchantlive","depends_on_id":"beadboard-c08","issue_id":"beadboard-eo8","type":"blocks"}
{"created_at":"2026-03-01T16:54:06Z","created_by":"ZenchantLive","depends_on_id":"bb-6bx","issue_id":"beadboard-fga","type":"relates-to"}
{"created_at":"2026-03-01T16:54:06Z","created_by":"ZenchantLive","depends_on_id":"bb-ff6","issue_id":"beadboard-fga","type":"relates-to"}
{"created_at":"2026-03-01T16:54:07Z","created_by":"ZenchantLive","depends_on_id":"beadboard-5vs","issue_id":"beadboard-fga","type":"relates-to"}
{"created_at":"2026-03-01T16:40:04Z","created_by":"ZenchantLive","depends_on_id":"beadboard-8st","issue_id":"beadboard-fga","type":"relates-to"}
{"created_at":"2026-03-01T16:40:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-duo","issue_id":"beadboard-fld","type":"relates-to"}
{"created_at":"2026-02-24T01:42:05Z","created_by":"zenchantlive","depends_on_id":"beadboard-gb0","issue_id":"beadboard-gb0.1","type":"parent-child"}
@ -521,7 +554,10 @@
{"created_at":"2026-02-24T01:38:07Z","created_by":"zenchantlive","depends_on_id":"beadboard-uui","issue_id":"beadboard-j3u","type":"parent"}
{"created_at":"2026-03-01T16:53:51Z","created_by":"ZenchantLive","depends_on_id":"beadboard-116","issue_id":"beadboard-jgy","type":"relates-to"}
{"created_at":"2026-03-01T16:39:57Z","created_by":"ZenchantLive","depends_on_id":"beadboard-116","issue_id":"beadboard-nq9","type":"relates-to"}
{"created_at":"2026-03-01T16:54:00Z","created_by":"ZenchantLive","depends_on_id":"beadboard-60a","issue_id":"beadboard-r1i","type":"relates-to"}
{"created_at":"2026-03-01T16:53:59Z","created_by":"ZenchantLive","depends_on_id":"beadboard-dvp","issue_id":"beadboard-r1i","type":"relates-to"}
{"created_at":"2026-02-28T13:44:19Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-r1i.1","type":"parent-child"}
{"created_at":"2026-03-01T16:54:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-zas","issue_id":"beadboard-r1i.1","type":"relates-to"}
{"created_at":"2026-02-28T13:53:57Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-r1i.2","type":"parent-child"}
{"created_at":"2026-02-28T13:54:16Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i.1","issue_id":"beadboard-r1i.2","type":"blocks"}
{"created_at":"2026-02-28T13:54:08Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i","issue_id":"beadboard-r1i.3","type":"parent-child"}
@ -537,4 +573,8 @@
{"created_at":"2026-02-21T04:03:21Z","created_by":"zenchantlive","depends_on_id":"beadboard-3xc","issue_id":"beadboard-yad","type":"parent"}
{"created_at":"2026-02-21T04:03:22Z","created_by":"zenchantlive","depends_on_id":"beadboard-eo8","issue_id":"beadboard-yad","type":"blocks"}
{"created_at":"2026-02-24T04:15:12Z","created_by":"zenchantlive","depends_on_id":"beadboard-lgi","issue_id":"beadboard-yo5","type":"parent-child"}
{"created_at":"2026-03-01T16:53:57Z","created_by":"ZenchantLive","depends_on_id":"beadboard-116","issue_id":"beadboard-yz6","type":"relates-to"}
{"created_at":"2026-03-01T16:54:01Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k.4","issue_id":"beadboard-zas","type":"relates-to"}
{"created_at":"2026-03-01T16:54:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-68k.5","issue_id":"beadboard-zas","type":"relates-to"}
{"created_at":"2026-03-01T16:40:01Z","created_by":"ZenchantLive","depends_on_id":"beadboard-76p","issue_id":"beadboard-zas","type":"relates-to"}
{"created_at":"2026-03-01T16:54:02Z","created_by":"ZenchantLive","depends_on_id":"beadboard-r1i.1","issue_id":"beadboard-zas","type":"relates-to"}

View file

@ -169,3 +169,18 @@
{"actor":"ZenchantLive","comment":"Added label: memory","created_at":"2026-03-01T16:53:21Z","event_type":"label_added","id":169,"issue_id":"beadboard-i4c","new_value":null,"old_value":null}
{"actor":"ZenchantLive","comment":"Added label: memory-provenance","created_at":"2026-03-01T16:53:21Z","event_type":"label_added","id":170,"issue_id":"beadboard-i4c","new_value":null,"old_value":null}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:53:26Z","event_type":"status_changed","id":171,"issue_id":"beadboard-i4c","new_value":"{\"notes\":\"Starting provenance enrichment for canonical memories: source bead links + evidence metadata + doc protocol update.\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-i4c\",\"title\":\"Add provenance links and evidence metadata to canonical memory nodes\",\"description\":\"Strengthen memory retrieval for fresh agents by relating canonical memory nodes to source closed beads/plans and adding explicit evidence metadata fields.\",\"acceptance_criteria\":\"All existing canonical memory nodes have source bead relations and evidence_ids/plan_refs metadata; help docs require provenance capture.\",\"notes\":\"Scope: memory graph provenance + docs only.\",\"status\":\"open\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:53:19Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:53:19Z\"}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:53:58Z","event_type":"updated","id":172,"issue_id":"beadboard-116","new_value":"{\"metadata\":{\"domain\":\"memory-workflow\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-92d.6,beadboard-jgy,beadboard-yz6\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-03-01-beads-native-memory.md,docs/plans/2026-03-02-bd-memory-fabric-design.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: bb-92d.6, beadboard-jgy, beadboard-yz6\"}","old_value":"{\"id\":\"beadboard-116\",\"title\":\"[MEMORY][WORKFLOW][HARD] Evidence before completion claims\",\"description\":\"Scope: All new implementation tasks that change behavior or data flow.\\nOut of Scope: Purely informational discussions without code or workflow changes.\\nRule: Start from explicit verification evidence and update work state in bd before claiming progress complete.\\nRationale: Prevents status drift and false completion claims.\\nFailure Mode: Unverified completion claims lead to regressions and mistrust.\\n\",\"acceptance_criteria\":\"Given an implementation task, when work begins and ends, then bd state transitions and verification command evidence are recorded.\\nVerification command(s): bd show \\u003ctask-id\\u003e; npm run typecheck; npm run lint; npm run test\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:39:55Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:39:56Z\",\"closed_at\":\"2026-03-02T00:39:56Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-workflow\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:53:59Z","event_type":"updated","id":173,"issue_id":"beadboard-dvp","new_value":"{\"metadata\":{\"domain\":\"memory-agent\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-u6f.6,bb-u6f.6.1,beadboard-r1i\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: bb-u6f.6, bb-u6f.6.1, beadboard-r1i\"}","old_value":"{\"id\":\"beadboard-dvp\",\"title\":\"[MEMORY][AGENT][SOFT] Parallelize independent work with clear ownership\",\"description\":\"Scope: Any task with 2+ independent units of work.\\nOut of Scope: Single-file trivial edits.\\nRule: Parallelize independent reads/exploration and isolate ownership for independent execution threads.\\nRationale: Reduces cycle time while preserving traceability.\\nFailure Mode: Serial execution on independent work causes avoidable delays.\\n\",\"acceptance_criteria\":\"Given independent subtasks, when execution starts, then each subtask has explicit ownership and verification evidence.\\nVerification command(s): bd dep tree \\u003cepic-id\\u003e; bd ready; git status --short\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:39:56Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:39:57Z\",\"closed_at\":\"2026-03-02T00:39:57Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-agent\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:01Z","event_type":"updated","id":174,"issue_id":"beadboard-60a","new_value":"{\"metadata\":{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-bvn,beadboard-r1i,beadboard-68k\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-22-dag-views-ux-design.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: bb-bvn, beadboard-r1i, beadboard-68k\"}","old_value":"{\"id\":\"beadboard-60a\",\"title\":\"[MEMORY][ARCH][HARD] Dependencies model execution order, not visual order\",\"description\":\"Scope: Dependency graph design and updates.\\nOut of Scope: Visual layout decisions that do not alter execution semantics.\\nRule: Dependencies encode execution order and blocking semantics, never visual grouping.\\nRationale: Keeps ready/blocked states truthful and machine-reliable.\\nFailure Mode: Incorrect dependency direction causes false blocking or unsafe parallelism.\\n\",\"acceptance_criteria\":\"Given a dependency update, when graph state is queried, then blocked/ready outcomes match intended execution order.\\nVerification command(s): bd dep tree \\u003cissue-id\\u003e; bd blocked; bd ready\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:39:57Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:39:58Z\",\"closed_at\":\"2026-03-02T00:39:58Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:02Z","event_type":"updated","id":175,"issue_id":"beadboard-zas","new_value":"{\"metadata\":{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-68k.4,beadboard-68k.5,beadboard-r1i.1\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-22-dag-views-ux-design.md,docs/plans/2026-02-15-unified-ux-prd.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: beadboard-68k.4, beadboard-68k.5, beadboard-r1i.1\"}","old_value":"{\"id\":\"beadboard-zas\",\"title\":\"[MEMORY][ARCH][HARD] Shared logic for cross-view behavior\",\"description\":\"Scope: Repeated logic used by multiple views or pages.\\nOut of Scope: One-off prototypes and disposable experiments.\\nRule: Reuse shared paths/components for cross-view behavior; avoid one-off logic drift.\\nRationale: Prevents silent divergence between Kanban, Graph, and API views.\\nFailure Mode: Patching one surface only creates inconsistent user behavior.\\n\",\"acceptance_criteria\":\"Given a behavior change touching multiple views, when implementation lands, then shared logic path is reused and covered by tests.\\nVerification command(s): rg \\\"\\u003cshared-function-or-hook\\u003e\\\" src tests; npm run test\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:39:59Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:39:59Z\",\"closed_at\":\"2026-03-02T00:39:59Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:04Z","event_type":"updated","id":176,"issue_id":"beadboard-duo","new_value":"{\"metadata\":{\"domain\":\"memory-ux\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-68k.4,beadboard-68k.2,bb-u6f.3\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-16-social-view-redesign-plan.md,docs/plans/2026-02-15-unified-ux-prd.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: beadboard-68k.4, beadboard-68k.2, bb-u6f.3\"}","old_value":"{\"id\":\"beadboard-duo\",\"title\":\"[MEMORY][UX][SOFT] User-facing copy must stay simple and explicit\",\"description\":\"Scope: UI copy in labels, controls, and status messaging.\\nOut of Scope: Internal comments and engineering-only diagnostics.\\nRule: Use simple user-facing language and explicit status words.\\nRationale: Reduces ambiguity and onboarding friction.\\nFailure Mode: Dense or vague copy increases mistakes and support load.\\n\",\"acceptance_criteria\":\"Given newly introduced UI copy, when reviewed, then wording is concise and unambiguous for first-time users.\\nVerification command(s): npm run lint; targeted UI review in changed components\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:40:00Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:40:01Z\",\"closed_at\":\"2026-03-02T00:40:01Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-ux\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:06Z","event_type":"updated","id":177,"issue_id":"beadboard-6fv","new_value":"{\"metadata\":{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-03r,beadboard-8rg,bb-xtu,bb-tpc.3\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: beadboard-03r, beadboard-8rg, bb-xtu, bb-tpc.3\"}","old_value":"{\"id\":\"beadboard-6fv\",\"title\":\"[MEMORY][RELIABILITY][HARD] Triage stale-state bugs via parity and watcher checks\",\"description\":\"Scope: Bug triage and remediation for stale state, watcher, and refresh failures.\\nOut of Scope: Non-state-related cosmetic bugs.\\nRule: Verify source-of-truth parity first, then inspect read paths and watcher inputs before patching symptoms.\\nRationale: Prevents superficial fixes that hide core data flow faults.\\nFailure Mode: Repeated regressions when stale-state root cause remains unresolved.\\n\",\"acceptance_criteria\":\"Given a stale update bug, when triage starts, then parity, read path, and watcher inputs are explicitly checked before implementation.\\nVerification command(s): bd show \\u003cissue-id\\u003e; npm run test -- tests/lib/watcher.test.ts\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:40:01Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:40:02Z\",\"closed_at\":\"2026-03-02T00:40:02Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:07Z","event_type":"updated","id":178,"issue_id":"beadboard-fga","new_value":"{\"metadata\":{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-ff6,bb-6bx,beadboard-5vs\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md,docs/plans/2026-02-22-dag-views-ux-design.md\",\"superseded_by\":null,\"supersedes\":null},\"notes\":\"Provenance linked: bb-ff6, bb-6bx, beadboard-5vs\"}","old_value":"{\"id\":\"beadboard-fga\",\"title\":\"[MEMORY][RELIABILITY][SOFT] Workarounds require trigger rollback and owner\",\"description\":\"Scope: Temporary workaround decisions under delivery pressure.\\nOut of Scope: Final architecture decisions already ratified.\\nRule: Any workaround must include trigger conditions, rollback criteria, and owner for retirement.\\nRationale: Keeps tactical decisions from becoming accidental permanent architecture.\\nFailure Mode: Undocumented workaround debt accumulates and obscures system intent.\\n\",\"acceptance_criteria\":\"Given a workaround task, when created, then trigger, rollback criteria, and retirement owner are present.\\nVerification command(s): bd show \\u003cworkaround-id\\u003e\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"decision\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:40:02Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:40:03Z\",\"closed_at\":\"2026-03-02T00:40:03Z\",\"close_reason\":\"Ratified canonical memory\",\"metadata\":{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:57Z","event_type":"updated","id":179,"issue_id":"beadboard-i4c","new_value":"{\"notes\":\"Completed provenance upgrade: all 7 canonical memory beads now link to source closed beads and include metadata keys evidence_ids + plan_refs. Updated help/memory docs to require provenance capture and provenance checks in task-start workflow.\"}","old_value":"{\"id\":\"beadboard-i4c\",\"title\":\"Add provenance links and evidence metadata to canonical memory nodes\",\"description\":\"Strengthen memory retrieval for fresh agents by relating canonical memory nodes to source closed beads/plans and adding explicit evidence metadata fields.\",\"acceptance_criteria\":\"All existing canonical memory nodes have source bead relations and evidence_ids/plan_refs metadata; help docs require provenance capture.\",\"notes\":\"Starting provenance enrichment for canonical memories: source bead links + evidence metadata + doc protocol update.\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:53:19Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:53:24Z\"}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:54:57Z","event_type":"closed","id":180,"issue_id":"beadboard-i4c","new_value":"Canonical memory provenance linked to historical beads and help/memory updated","old_value":""}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:56:32Z","event_type":"created","id":181,"issue_id":"beadboard-ij8","new_value":"","old_value":""}
{"actor":"ZenchantLive","comment":"Added label: memory","created_at":"2026-03-01T16:56:32Z","event_type":"label_added","id":182,"issue_id":"beadboard-ij8","new_value":null,"old_value":null}
{"actor":"ZenchantLive","comment":"Added label: docs","created_at":"2026-03-01T16:56:32Z","event_type":"label_added","id":183,"issue_id":"beadboard-ij8","new_value":null,"old_value":null}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:56:39Z","event_type":"status_changed","id":184,"issue_id":"beadboard-ij8","new_value":"{\"notes\":\"Adding regular memory contribution cadence and provenance relation rules to both AGENTS manuals.\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-ij8\",\"title\":\"Enforce regular memory contribution + provenance relations in AGENTS manuals\",\"description\":\"Update root and beadboard AGENTS manuals to require recurring memory additions and explicit provenance relation/metadata rules for canonical memory nodes.\",\"acceptance_criteria\":\"Both manuals include mandatory post-close memory review cadence and provenance relation commands/requirements.\",\"notes\":\"Scope: AGENTS docs only.\",\"status\":\"open\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:56:31Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:56:31Z\"}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:57:17Z","event_type":"updated","id":185,"issue_id":"beadboard-ij8","new_value":"{\"notes\":\"Updated both AGENTS manuals: added mandatory post-close memory review cadence, provenance relation commands, required evidence_ids/plan_refs metadata, and fresh-agent provenance validation steps.\"}","old_value":"{\"id\":\"beadboard-ij8\",\"title\":\"Enforce regular memory contribution + provenance relations in AGENTS manuals\",\"description\":\"Update root and beadboard AGENTS manuals to require recurring memory additions and explicit provenance relation/metadata rules for canonical memory nodes.\",\"acceptance_criteria\":\"Both manuals include mandatory post-close memory review cadence and provenance relation commands/requirements.\",\"notes\":\"Adding regular memory contribution cadence and provenance relation rules to both AGENTS manuals.\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-02T00:56:31Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-02T00:56:36Z\"}"}
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-01T16:57:17Z","event_type":"closed","id":186,"issue_id":"beadboard-ij8","new_value":"AGENTS manuals now enforce regular memory additions and provenance relations","old_value":""}

View file

@ -319,7 +319,7 @@
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"actor prop added, localStorage reads/writes removed, syncs from prop via useEffect","closed_at":"2026-03-01T22:57:24Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"99d32b3b3fa6a04d55a25f5c72e26eab0ee258e3c6f0282e903abd71f3c2480f","created_at":"2026-02-28T22:04:48Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"TASK CONTEXT\n- Bead ID: beadboard-0fi.2\n- Title: Wire actor from shell to ConversationDrawer (remove localStorage read)\n- Parent/Epic: beadboard-0fi\n- Dependencies (must be done first): beadboard-0fi.1\n\nTASK CONTRACT\n- Goal: ConversationDrawer currently reads and writes actor identity from localStorage('bb.humanActor') at lines 125 and 167. Replace these with an actor prop received from UnifiedShell so identity is controlled by a single source of truth.\n- Success Criteria:\n - ConversationDrawer accepts actor: string prop\n - localStorage.getItem('bb.humanActor') call at line 125 removed — replaced with prop\n - localStorage.setItem call at line 167 removed — UnifiedShell owns persistence\n - Comments still include actor in the POST body\n - npm run typecheck passes\n- Scope:\n - src/components/sessions/conversation-drawer.tsx — replace localStorage reads with prop\n - src/components/shared/unified-shell.tsx — pass actor to ConversationDrawer call site\n - Verify ConversationDrawer is called in unified-shell.tsx or sessions-page.tsx and update accordingly\n- Out of Scope:\n - ConversationDrawer UI changes\n - ThreadDrawer (that is beadboard-0fi.3)\n\nIMPLEMENTATION CONSTRAINTS\n- Preserve existing backend/API contracts unless explicitly stated otherwise.\n- Reuse shared components and logic; avoid one-off forks.\n- Keep changes targeted and minimal for this bead.\n\nVERIFICATION REQUIREMENTS\n- Required commands:\n - npm run typecheck\n - npm run lint\n - npm run test\n- Report any remaining risks and follow-up beads explicitly.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-0fi.2","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Wire actor from shell to ConversationDrawer (remove localStorage read)","updated_at":"2026-03-01T22:57:24Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"actor prop added to ThreadDrawer, passes through to postComment, wired from UnifiedShell via ContextualRightPanel","closed_at":"2026-03-01T23:28:11Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"c24e96bd1fca43dd70de06964744a1fffaf8b8a0a38292ad09c5254ce5d72d7b","created_at":"2026-02-28T22:04:48Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"TASK CONTEXT\n- Bead ID: beadboard-0fi.3\n- Title: Wire actor from shell to ThreadDrawer postComment\n- Parent/Epic: beadboard-0fi\n- Dependencies (must be done first): beadboard-0fi.1\n\nTASK CONTRACT\n- Goal: ThreadDrawer currently posts comments with no actor field. Add an actor prop and include it in the comment POST body so comments from ThreadDrawer are attributed the same as ConversationDrawer comments.\n- Success Criteria:\n - ThreadDrawer accepts actor?: string prop\n - Comment POST body includes actor field when prop is provided\n - UnifiedShell passes actor to ThreadDrawer at its call site in unified-shell.tsx\n - Posted comments visible in the thread show the correct actor attribution\n - npm run typecheck passes\n- Scope:\n - src/components/shared/thread-drawer.tsx — add actor prop, include in POST\n - src/components/shared/unified-shell.tsx — pass actor to ThreadDrawer call site\n - Check thread-drawer.tsx postComment fetch call to find where to inject actor\n- Out of Scope:\n - Changing the comment API endpoint schema\n - ConversationDrawer (that is beadboard-0fi.2)\n\nIMPLEMENTATION CONSTRAINTS\n- Preserve existing backend/API contracts unless explicitly stated otherwise.\n- Reuse shared components and logic; avoid one-off forks.\n- Keep changes targeted and minimal for this bead.\n\nVERIFICATION REQUIREMENTS\n- Required commands:\n - npm run typecheck\n - npm run lint\n - npm run test\n- Report any remaining risks and follow-up beads explicitly.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-0fi.3","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Wire actor from shell to ThreadDrawer postComment","updated_at":"2026-03-01T23:28:11Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"046a1f52a7bb2c83e7cc4c6cbd2fb1c6d044a6c58c9650c1c119c10e74925927","created_at":"2026-02-21T19:49:41Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"This is just a test to verify SSE streams and cache busting are working.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-0ui","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Test Live Updates Cache Busting","updated_at":"2026-02-21T20:25:23Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Given an implementation task, when work begins and ends, then bd state transitions and verification command evidence are recorded.\nVerification command(s): bd show \u003ctask-id\u003e; npm run typecheck; npm run lint; npm run test","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:56Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"4bb7dfe9677649424d41010b675c5d92a5f0bd3c5a04f65a92a61aae90e64404","created_at":"2026-03-02T00:39:55Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: All new implementation tasks that change behavior or data flow.\nOut of Scope: Purely informational discussions without code or workflow changes.\nRule: Start from explicit verification evidence and update work state in bd before claiming progress complete.\nRationale: Prevents status drift and false completion claims.\nFailure Mode: Unverified completion claims lead to regressions and mistrust.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-116","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-workflow\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][WORKFLOW][HARD] Evidence before completion claims","updated_at":"2026-03-02T00:39:56Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given an implementation task, when work begins and ends, then bd state transitions and verification command evidence are recorded.\nVerification command(s): bd show \u003ctask-id\u003e; npm run typecheck; npm run lint; npm run test","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:56Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"4bb7dfe9677649424d41010b675c5d92a5f0bd3c5a04f65a92a61aae90e64404","created_at":"2026-03-02T00:39:55Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: All new implementation tasks that change behavior or data flow.\nOut of Scope: Purely informational discussions without code or workflow changes.\nRule: Start from explicit verification evidence and update work state in bd before claiming progress complete.\nRationale: Prevents status drift and false completion claims.\nFailure Mode: Unverified completion claims lead to regressions and mistrust.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-116","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-workflow\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-92d.6,beadboard-jgy,beadboard-yz6\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-03-01-beads-native-memory.md,docs/plans/2026-03-02-bd-memory-fabric-design.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: bb-92d.6, beadboard-jgy, beadboard-yz6","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][WORKFLOW][HARD] Evidence before completion claims","updated_at":"2026-03-02T00:53:56Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Deleted: src/components/swarm/swarm-workspace.tsx; Deleted: src/components/swarm/telemetry-grid.tsx; Deleted: src/components/swarm/specialized-agent-dag.tsx; No remaining imports of deleted files; npm run typecheck, lint, test all pass","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"34f0fcdadf9f8e5942f1cf97234e425872a3458d99431cee4b58c6bf824cd1cc","created_at":"2026-02-24T01:37:47Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-12l","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":2,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"tombstone","target":"","timeout_ns":0,"title":"Delete deprecated swarm files","updated_at":"2026-02-24T01:40:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"de16ff14799deec70c5d7d6460cbb45b8172a6a030fca033103eb2bf03f3132f","created_at":"2026-02-21T20:27:30Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-1sc","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Testing SSE Flow","updated_at":"2026-02-21T20:27:30Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"657bd72a18f1253a55fb518a8bc81650e522478f2680dbcda1e6cfad0c31545f","created_at":"2026-02-19T21:27:39Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"Swarm molecule orchestrating epic bb-ui2.\n\nEpic: bb-ui2\nCoordinator: ","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-2on","is_template":0,"issue_type":"molecule","last_activity":null,"metadata":"{}","mol_type":"swarm","notes":"","original_size":null,"owner":"","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Swarm: Unified UX - Earthy Dark Shell with Social/Graph/Swarm Views","updated_at":"2026-02-19T21:27:39Z","waiters":"","wisp_type":"","work_type":"mutex"}
@ -340,7 +340,7 @@
{"acceptance_criteria":"Canonical agent-operation memories are related to this anchor via bd dep relate.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"b245d13057ed914b8fcdd4cc434fa162807608a7e046c020b6b4e73b5d7415b6","created_at":"2026-03-02T00:39:17Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Domain anchor for multi-agent coordination, assignment discipline, and ownership rules.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-5r1","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"open","target":"","timeout_ns":0,"title":"[MEMORY-ANCHOR] Agent Operations","updated_at":"2026-03-02T00:39:17Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"SmartDag has toolbar with Filters toggle and Assign toggle; Filters toggle reveals: hop depth selector, hide closed checkbox, blocking-only toggle, sort ready first; Tab switcher: Tasks / Dependencies; Tasks tab renders TaskCardGrid; Dependencies tab renders DependencyFlowStrip + GraphSection; Exposes onAssignModeChange and onSelectedIssueChange callbacks; Passes assignMode to WorkflowGraph; npm run typecheck, lint, test all pass","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"af28074a5bac0a6d15fedd92edac3fbccedaf80766469dad72f0b7f9c55c3aca","created_at":"2026-02-24T01:37:40Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-5sr","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"tombstone","target":"","timeout_ns":0,"title":"Rewrite SmartDag with progressive disclosure + assign mode","updated_at":"2026-02-24T01:40:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Added history fetch on mount in SwarmCommandFeed, filtered client-side by contextBeadIds. All checks pass.","closed_at":"2026-03-01T23:31:30Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"7ae0a0d9236c0a17d397ea6be23d6a2c7677cd5a83f3fa3c0f9c3e2655638986","created_at":"2026-03-01T23:28:44Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"When user clicks an epic in LeftPanel, SwarmCommandFeed shows 'Waiting for agent signals...' because it only subscribes to future SSE events. It should also fetch the /api/activity history on mount (same as ActivityPanel does) and filter client-side by contextBeadIds. Also re-fetch when epicId or contextBeadIds changes.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-5vs","is_template":0,"issue_type":"bug","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"SwarmCommandFeed: load historical activity on mount filtered to epic","updated_at":"2026-03-01T23:31:30Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a dependency update, when graph state is queried, then blocked/ready outcomes match intended execution order.\nVerification command(s): bd dep tree \u003cissue-id\u003e; bd blocked; bd ready","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:58Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"0331a4e47c9bca893aae66ea06f9019f7ec0ae0d272eed7a1a9ecc33b77a657d","created_at":"2026-03-02T00:39:57Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Dependency graph design and updates.\nOut of Scope: Visual layout decisions that do not alter execution semantics.\nRule: Dependencies encode execution order and blocking semantics, never visual grouping.\nRationale: Keeps ready/blocked states truthful and machine-reliable.\nFailure Mode: Incorrect dependency direction causes false blocking or unsafe parallelism.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-60a","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][ARCH][HARD] Dependencies model execution order, not visual order","updated_at":"2026-03-02T00:39:58Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a dependency update, when graph state is queried, then blocked/ready outcomes match intended execution order.\nVerification command(s): bd dep tree \u003cissue-id\u003e; bd blocked; bd ready","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:58Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"0331a4e47c9bca893aae66ea06f9019f7ec0ae0d272eed7a1a9ecc33b77a657d","created_at":"2026-03-02T00:39:57Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Dependency graph design and updates.\nOut of Scope: Visual layout decisions that do not alter execution semantics.\nRule: Dependencies encode execution order and blocking semantics, never visual grouping.\nRationale: Keeps ready/blocked states truthful and machine-reliable.\nFailure Mode: Incorrect dependency direction causes false blocking or unsafe parallelism.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-60a","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-bvn,beadboard-r1i,beadboard-68k\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-22-dag-views-ux-design.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: bb-bvn, beadboard-r1i, beadboard-68k","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][ARCH][HARD] Dependencies model execution order, not visual order","updated_at":"2026-03-02T00:54:00Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"ViewType removes 'swarm' from union type; VALID_VIEWS array removes 'swarm'; Left panel views array removes swarm entry; Mobile nav tabs array removes swarm tab; ?view=swarm falls back to default view; npm run typecheck, lint, test all pass","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"2ab13977e8d89f5d86e18a1b273ae4b5cc7cdd1241c68ebe0084add0576cc05a","created_at":"2026-02-24T01:37:47Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-60s","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":2,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"tombstone","target":"","timeout_ns":0,"title":"Remove swarm view from navigation","updated_at":"2026-02-24T01:40:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"All Phase 0 wiring fixes complete: blockedOnly, activity ambient panel, thread drawer status, TopBar metrics.","closed_at":"2026-02-28T21:43:58Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"bb6b07c95162aad55ff13b2197ccac401f002024a3d5f980f20703248875ed11","created_at":"2026-02-28T21:03:22Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Five independent wiring fixes that are prerequisites for all subsequent UX work. Each connects infrastructure that already exists but is not yet wired together. No new components, no new design — pure plumbing.\n\nRef: docs/plans/2026-02-28-ux-redesign-synthesis-prd.md §8 Phase 0","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-68k","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Phase 0: UX Wiring Fixes","updated_at":"2026-02-28T21:43:58Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"blockedOnly destructured from useUrlState and passed to SocialPage in unified-shell.tsx","closed_at":"2026-02-28T21:42:49Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"9140222d2a30c11bfa5fd7ac70648a4293e4f87ac087bf0350c33f059d2bc30e","created_at":"2026-02-28T21:06:55Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"blockedOnly is already in useUrlState and SocialPage already accepts it as a prop, but UnifiedShell never passes it through. One-line fix.\n\nFile: src/components/shared/unified-shell.tsx (~line 128)\n\nChange: ensure blockedOnly is destructured from useUrlState() at line 38, then add prop to \u003cSocialPage\u003e:\n \u003cSocialPage\n issues={filteredIssues}\n selectedId={taskId ?? undefined}\n onSelect={handleCardSelect}\n projectScopeOptions={projectScopeOptions}\n blockedOnly={blockedOnly}\n /\u003e\n\nAcceptance: Clicking 'Blocked Items' toggle in TopBar immediately filters social feed to blocked cards only. Toggling off restores full list.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-68k.1","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Wire blockedOnly prop to SocialPage","updated_at":"2026-02-28T21:42:49Z","waiters":"","wisp_type":"","work_type":""}
@ -348,7 +348,7 @@
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Activity is ambient (right panel default), not a separate nav tab. Nav stays at Social + Graph only. Jump to Activity wiring handled in .2.","closed_at":"2026-02-28T21:40:11Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"9a961815e343851fdef5518ded410928e07af7dc36a576a2007f95d6e1ad4712","created_at":"2026-02-28T21:07:13Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Activity is a valid view but unreachable from navigation. Both LeftPanel views array and MobileNav tabs array only have Social and Graph.\n\nFile 1: src/components/shared/left-panel.tsx (~line 188)\n Add: { id: 'activity', label: 'Activity' } to views array\n\nFile 2: src/components/shared/mobile-nav.tsx (~line 6)\n Add Activity tab and replace Unicode glyphs with Lucide icons:\n import { LayoutList, Share2, Activity } from 'lucide-react'\n tabs: [\n { id: 'social', label: 'Social', icon: \u003cLayoutList className='h-5 w-5' /\u003e },\n { id: 'graph', label: 'Graph', icon: \u003cShare2 className='h-5 w-5' /\u003e },\n { id: 'activity', label: 'Activity', icon: \u003cActivity className='h-5 w-5' /\u003e },\n ]\n Add aria-label={tab.label} to each tab button.\n Check current mobile-nav render pattern before editing.\n\nAcceptance: Left panel and mobile nav both show 3 tabs. Mobile icons are Lucide SVGs with aria-labels.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-68k.3","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Add Activity tab to LeftPanel and MobileNav","updated_at":"2026-02-28T21:40:11Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"thread-drawer.tsx line 418: replaced hardcoded 'In Progress' with issue?.status formatted via replace(/_/g,' ')","closed_at":"2026-02-28T21:42:49Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"efe0272f2e8cc03118780bc25826cbf6757adf3b1182b0839a3846c46309ff0c","created_at":"2026-02-28T21:07:21Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Thread drawer shows 'In Progress' for every issue regardless of actual status. Line 418 has a hardcoded string.\n\nFile: src/components/shared/thread-drawer.tsx (line 418)\n\nCurrent:\n \u003cspan ...\u003eIn Progress\u003c/span\u003e\n\nChange to:\n \u003cspan ...\u003e\n {issue?.status?.replace(/_/g, ' ').replace(/\\b\\w/g, c =\u003e c.toUpperCase()) ?? 'Unknown'}\n \u003c/span\u003e\n\nNote: line 280 already reads issue.status correctly for a Badge — follow that same pattern.\n\nAcceptance: status='open' shows 'Open', status='in_progress' shows 'In Progress', status='blocked' shows 'Blocked'.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-68k.4","is_template":0,"issue_type":"bug","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Fix thread drawer status badge (hardcoded 'In Progress')","updated_at":"2026-02-28T21:42:49Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"TopBar now receives totalTasks, criticalAlerts, busyCount from live issues array in unified-shell.tsx","closed_at":"2026-02-28T21:42:49Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"6e8513805497f6db649d9e40df79780d2f0247a63945737b8f8f4bc8714d6581","created_at":"2026-02-28T21:07:28Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"TopBar metric tiles always show 0 because UnifiedShell passes no props. The live issues array is available in scope.\n\nFile: src/components/shared/unified-shell.tsx (TopBar call)\n\nChange: compute from issues and pass props:\n \u003cTopBar\n totalTasks={issues.filter(i =\u003e i.issue_type !== 'epic').length}\n criticalAlerts={issues.filter(i =\u003e i.status === 'blocked').length}\n busyCount={issues.filter(i =\u003e i.status === 'in_progress').length}\n idleCount={0}\n /\u003e\n\nFirst check top-bar.tsx prop types to confirm field names match.\nidleCount=0 explicitly until Phase 4 wires the liveness map.\n\nAcceptance: TopBar shows real blocked count and in-progress count. Values update when SSE pushes changes.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-68k.5","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Wire TopBar metric tiles from live issue data","updated_at":"2026-02-28T21:42:49Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a stale update bug, when triage starts, then parity, read path, and watcher inputs are explicitly checked before implementation.\nVerification command(s): bd show \u003cissue-id\u003e; npm run test -- tests/lib/watcher.test.ts","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:02Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"bbe1ec504fa93a449a6213ddddb3855247c8db34af65a6960198b0582a738558","created_at":"2026-03-02T00:40:01Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Bug triage and remediation for stale state, watcher, and refresh failures.\nOut of Scope: Non-state-related cosmetic bugs.\nRule: Verify source-of-truth parity first, then inspect read paths and watcher inputs before patching symptoms.\nRationale: Prevents superficial fixes that hide core data flow faults.\nFailure Mode: Repeated regressions when stale-state root cause remains unresolved.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-6fv","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][RELIABILITY][HARD] Triage stale-state bugs via parity and watcher checks","updated_at":"2026-03-02T00:40:02Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a stale update bug, when triage starts, then parity, read path, and watcher inputs are explicitly checked before implementation.\nVerification command(s): bd show \u003cissue-id\u003e; npm run test -- tests/lib/watcher.test.ts","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:02Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"bbe1ec504fa93a449a6213ddddb3855247c8db34af65a6960198b0582a738558","created_at":"2026-03-02T00:40:01Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Bug triage and remediation for stale state, watcher, and refresh failures.\nOut of Scope: Non-state-related cosmetic bugs.\nRule: Verify source-of-truth parity first, then inspect read paths and watcher inputs before patching symptoms.\nRationale: Prevents superficial fixes that hide core data flow faults.\nFailure Mode: Repeated regressions when stale-state root cause remains unresolved.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-6fv","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-03r,beadboard-8rg,bb-xtu,bb-tpc.3\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: beadboard-03r, beadboard-8rg, bb-xtu, bb-tpc.3","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][RELIABILITY][HARD] Triage stale-state bugs via parity and watcher checks","updated_at":"2026-03-02T00:54:05Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"bf5c6b303e055cbf850699726821e46ad1c082a5c64a38b31804f44957545abe","created_at":"2026-02-21T19:53:05Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-6lq","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Testing CURL","updated_at":"2026-02-21T19:53:05Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"test","closed_at":"2026-02-21T21:21:14Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"3270adeb60c4f28981bd6ec8bc489b081cdc7d7ea53369481f1f7d9f20f1b879","created_at":"2026-02-21T21:21:12Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-6xd","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":2,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Realtime Test","updated_at":"2026-02-21T21:21:14Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Canonical architecture memories are related to this anchor via bd dep relate.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"7187d6f3fabf12f10f20f59b03ebad7e76a504087323844c11fae6f3dcc52449","created_at":"2026-03-02T00:39:15Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Domain anchor for architecture constraints and design decisions. Use this as the root index for canonical architecture memories.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-76p","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"open","target":"","timeout_ns":0,"title":"[MEMORY-ANCHOR] Architecture","updated_at":"2026-03-02T00:39:15Z","waiters":"","wisp_type":"","work_type":""}
@ -389,10 +389,10 @@
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"93c0c0ce899172851d9d6422d3a21859f3df78de06e8c56c6326fe3d28441e81","created_at":"2026-02-28T22:39:47Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"TASK CONTEXT\n- Bead ID: beadboard-d2x.2\n- Title: Reroute TopBar blocked button to open BlockedTriageModal\n- Parent/Epic: beadboard-d2x\n- Dependencies (must be done first): beadboard-d2x.1\n\nTASK CONTRACT\n- Goal: The TopBar 'Blocked Items' button currently toggles a URL param (blockedOnly). Replace this with a modal open trigger that opens BlockedTriageModal, keeping the blockedOnly filter wired from Phase 0 for the social feed but making the primary triage action the modal.\n- Success Criteria:\n - Clicking 'Blocked Items' in TopBar opens BlockedTriageModal\n - BlockedTriageModal receives issues and projectRoot from UnifiedShell\n - Existing blockedOnly URL toggle in TopBar is either removed or made secondary (decide when reading the component — do not break Phase 0 work)\n - npm run typecheck passes\n- Scope:\n - src/components/shared/top-bar.tsx — change blocked button handler\n - src/components/shared/unified-shell.tsx — add modal open state, pass to TopBar and BlockedTriageModal\n- Out of Scope:\n - Changing BlockedTriageModal internals (beadboard-d2x.1)\n - Phase 0 blockedOnly social feed filter\n\nIMPLEMENTATION CONSTRAINTS\n- Preserve existing backend/API contracts unless explicitly stated otherwise.\n- Reuse shared components and logic; avoid one-off forks.\n- Keep changes targeted and minimal for this bead.\n\nVERIFICATION REQUIREMENTS\n- Required commands:\n - npm run typecheck\n - npm run lint\n - npm run test\n- Report any remaining risks and follow-up beads explicitly.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-d2x.2","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":2,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"open","target":"","timeout_ns":0,"title":"Reroute TopBar blocked button to open BlockedTriageModal","updated_at":"2026-02-28T22:39:47Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"File created: src/components/graph/assignment-panel.tsx; Archetypes/Templates buttons open inspector modals; Task assignment section shows selected issue details; Archetype picker dropdown populated from useArchetypes; Prep Task for Swarm button calls /api/swarm/prep; Condensed squad roster shows active agents; npm run typecheck passes","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"6125f57d0c2fc09352deb2de82632197bccfb2fc6e320d50e5c4f53baf58c645","created_at":"2026-02-24T01:37:40Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-d4n","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"tombstone","target":"","timeout_ns":0,"title":"Create AssignmentPanel component","updated_at":"2026-02-24T01:40:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"6c33dd19c5fab28ffb3ec7fed3b423630107c24616fda2ff2234fadd30cf2069","created_at":"2026-02-21T20:30:26Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-dp2","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Testing from curl","updated_at":"2026-02-21T20:30:26Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Given newly introduced UI copy, when reviewed, then wording is concise and unambiguous for first-time users.\nVerification command(s): npm run lint; targeted UI review in changed components","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:01Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"211674ee3309e1029490d7490617c2b5a29ed26507221e66dd15f83664657869","created_at":"2026-03-02T00:40:00Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: UI copy in labels, controls, and status messaging.\nOut of Scope: Internal comments and engineering-only diagnostics.\nRule: Use simple user-facing language and explicit status words.\nRationale: Reduces ambiguity and onboarding friction.\nFailure Mode: Dense or vague copy increases mistakes and support load.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-duo","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-ux\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][UX][SOFT] User-facing copy must stay simple and explicit","updated_at":"2026-03-02T00:40:01Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given independent subtasks, when execution starts, then each subtask has explicit ownership and verification evidence.\nVerification command(s): bd dep tree \u003cepic-id\u003e; bd ready; git status --short","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:57Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"58dedbce1a26e2564d00aa59ee8560b614f3e5f388d7006ae544abf591f37d40","created_at":"2026-03-02T00:39:56Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Any task with 2+ independent units of work.\nOut of Scope: Single-file trivial edits.\nRule: Parallelize independent reads/exploration and isolate ownership for independent execution threads.\nRationale: Reduces cycle time while preserving traceability.\nFailure Mode: Serial execution on independent work causes avoidable delays.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-dvp","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-agent\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][AGENT][SOFT] Parallelize independent work with clear ownership","updated_at":"2026-03-02T00:39:57Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given newly introduced UI copy, when reviewed, then wording is concise and unambiguous for first-time users.\nVerification command(s): npm run lint; targeted UI review in changed components","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:01Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"211674ee3309e1029490d7490617c2b5a29ed26507221e66dd15f83664657869","created_at":"2026-03-02T00:40:00Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: UI copy in labels, controls, and status messaging.\nOut of Scope: Internal comments and engineering-only diagnostics.\nRule: Use simple user-facing language and explicit status words.\nRationale: Reduces ambiguity and onboarding friction.\nFailure Mode: Dense or vague copy increases mistakes and support load.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-duo","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-ux\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-68k.4,beadboard-68k.2,bb-u6f.3\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-16-social-view-redesign-plan.md,docs/plans/2026-02-15-unified-ux-prd.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: beadboard-68k.4, beadboard-68k.2, bb-u6f.3","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][UX][SOFT] User-facing copy must stay simple and explicit","updated_at":"2026-03-02T00:54:03Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given independent subtasks, when execution starts, then each subtask has explicit ownership and verification evidence.\nVerification command(s): bd dep tree \u003cepic-id\u003e; bd ready; git status --short","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:57Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"58dedbce1a26e2564d00aa59ee8560b614f3e5f388d7006ae544abf591f37d40","created_at":"2026-03-02T00:39:56Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Any task with 2+ independent units of work.\nOut of Scope: Single-file trivial edits.\nRule: Parallelize independent reads/exploration and isolate ownership for independent execution threads.\nRationale: Reduces cycle time while preserving traceability.\nFailure Mode: Serial execution on independent work causes avoidable delays.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-dvp","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-agent\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-u6f.6,bb-u6f.6.1,beadboard-r1i\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: bb-u6f.6, bb-u6f.6.1, beadboard-r1i","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][AGENT][SOFT] Parallelize independent work with clear ownership","updated_at":"2026-03-02T00:53:58Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":"sysarchitect-01","await_id":"","await_type":"","close_reason":"","closed_at":"2026-02-26T01:53:00Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"8f7527a166f80da24341c6f5e75236a288ffeeb01edae418ed05484aec5a767f","created_at":"2026-02-21T04:01:11Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-eo8","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Design New Component","updated_at":"2026-02-26T01:53:00Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Given a workaround task, when created, then trigger, rollback criteria, and retirement owner are present.\nVerification command(s): bd show \u003cworkaround-id\u003e","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:03Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"b63e0ea4d4920bde46d19ad0a3bbe214fb4669e0f0a1d346cca2a4dabe8d252e","created_at":"2026-03-02T00:40:02Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Temporary workaround decisions under delivery pressure.\nOut of Scope: Final architecture decisions already ratified.\nRule: Any workaround must include trigger conditions, rollback criteria, and owner for retirement.\nRationale: Keeps tactical decisions from becoming accidental permanent architecture.\nFailure Mode: Undocumented workaround debt accumulates and obscures system intent.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-fga","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][RELIABILITY][SOFT] Workarounds require trigger rollback and owner","updated_at":"2026-03-02T00:40:03Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a workaround task, when created, then trigger, rollback criteria, and retirement owner are present.\nVerification command(s): bd show \u003cworkaround-id\u003e","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:40:03Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"b63e0ea4d4920bde46d19ad0a3bbe214fb4669e0f0a1d346cca2a4dabe8d252e","created_at":"2026-03-02T00:40:02Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Temporary workaround decisions under delivery pressure.\nOut of Scope: Final architecture decisions already ratified.\nRule: Any workaround must include trigger conditions, rollback criteria, and owner for retirement.\nRationale: Keeps tactical decisions from becoming accidental permanent architecture.\nFailure Mode: Undocumented workaround debt accumulates and obscures system intent.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-fga","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-reliability\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"bb-ff6,bb-6bx,beadboard-5vs\",\"memory_strength\":\"soft\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-28-bd-only-coordination-migration-plan.md,docs/plans/2026-02-22-dag-views-ux-design.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: bb-ff6, bb-6bx, beadboard-5vs","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][RELIABILITY][SOFT] Workarounds require trigger rollback and owner","updated_at":"2026-03-02T00:54:07Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Canonical UI/UX memories are related to this anchor via bd dep relate.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"20f7b859593b2616b5e07a51d20d07e392aa37468421e31d2854243508fbacde","created_at":"2026-03-02T00:39:16Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Domain anchor for UI/UX rules, accessibility constraints, and component usage patterns.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-fld","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"open","target":"","timeout_ns":0,"title":"[MEMORY-ANCHOR] UI/UX","updated_at":"2026-03-02T00:39:16Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"6 archetypes with comprehensive system prompts (200-400 lines each), handoff protocols defined, all prompts follow structured format (phases, output format, examples), archetypes load correctly in UI, test-agent.json deleted","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Completed 6 comprehensive agent archetypes with detailed system prompts (200-400 lines each), handoff protocols, workflow phases, and examples. All verification gates pass.","closed_at":"2026-02-26T03:14:31Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"35fb89e510008e4ecc977565f01996e074296f356dce072ed6d74097d8a87fcb","created_at":"2026-02-26T02:52:12Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-fp5","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"Created 6 comprehensive archetypes: architect, engineer, reviewer, tester, investigator, shipper. Each has 200+ line system prompts with workflow phases, handoff protocols, and examples. Deleted test-agent.json placeholder. All verification gates pass (typecheck, lint warnings only, tests pass).","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Comprehensive Agent Archetype System v2","updated_at":"2026-02-26T03:14:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"8fd7102d911f66fc12c0218596be2d43b56c8a8252a0b8895bfdd5dea5e0cf27","created_at":"2026-02-24T01:41:40Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-gb0","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"## TASK CONTEXT\n- Bead ID: beadboard-gb0\n- Title: Unify Graph + Swarm into Single Enhanced Graph View\n- Parent/Epic: None (this is the epic)\n- Dependencies: None\n\n## GOAL\nMerge the duplicate graph implementations (`?view=graph`, `?view=swarm`, and `/graph` page) into one enhanced graph view with two modes:\n- **Analysis mode** (default): Full dependency DAG with progressive disclosure (filters toolbar, tabs)\n- **Assign mode** (toggled): DAG highlights ready nodes, right panel transforms into assignment controls\n\n## PROBLEM STATEMENT\nBeadBoard has two views that both render the same `WorkflowGraph` DAG component, creating duplication:\n- `?view=graph` is a bare 49-line wrapper (`SmartDag`) with no rich features\n- `?view=swarm` duplicates the DAG with swarm-specific UI\n- Standalone `/graph` page (`DependencyGraphPage`) has rich features stranded from the shell view\n\n## SUCCESS CRITERIA\n- `?view=graph` shows enhanced DAG with all dependency analysis features\n- 'Assign' toggle enables task assignment workflow\n- `?view=swarm` deprecated (falls back to default view)\n- Archetypes/Templates accessible from assign mode right panel\n- All child tasks completed and verified\n- `npm run typecheck \u0026\u0026 npm run lint \u0026\u0026 npm run test` all pass\n\n## SCOPE\n- SmartDag rewrite with progressive disclosure + tabs + assign mode\n- AssignmentPanel component for assign mode\n- useGraphAnalysis hook extraction\n- Swarm view removal from navigation\n- Delete deprecated swarm files (swarm-workspace.tsx, telemetry-grid.tsx, specialized-agent-dag.tsx)\n\n## OUT OF SCOPE\n- Backend API changes (use existing `/api/swarm/prep`)\n- New archetypes/templates features\n- Mobile-specific layouts\n- Changes to archetype-inspector.tsx, template-inspector.tsx (kept for AssignmentPanel)\n\n## REFERENCE\n- PRD: `docs/prd/unified-graph-view.md`\n- Step 1 (agent animations): Already COMPLETED\n\n## CHILD TASKS\n1. `beadboard-gb0.4`: Create useGraphAnalysis hook (INDEPENDENT)\n2. `beadboard-gb0.2`: Add assign mode to WorkflowGraph + GraphNodeCard (INDEPENDENT)\n3. `beadboard-gb0.3`: Create AssignmentPanel component (INDEPENDENT)\n4. `beadboard-gb0.8`: Remove swarm view from navigation (INDEPENDENT)\n5. `beadboard-gb0.1`: Rewrite SmartDag with progressive disclosure (BLOCKED BY: gb0.4)\n6. `beadboard-gb0.5`: Wire assign mode into UnifiedShell (BLOCKED BY: gb0.3, gb0.1)\n7. `beadboard-gb0.7`: Delete deprecated swarm files (BLOCKED BY: gb0.5, gb0.8)\n8. `beadboard-gb0.6`: Update standalone /graph page (BLOCKED BY: gb0.7)\n\n## PARALLELIZATION\nPhase 1 (parallel): gb0.4, gb0.2, gb0.3, gb0.8\nPhase 2 (sequential): gb0.1 (after gb0.4)\nPhase 3 (sequential): gb0.5 (after gb0.3, gb0.1)\nPhase 4 (sequential): gb0.7 (after gb0.5, gb0.8)\nPhase 5 (sequential): gb0.6 (after gb0.7)","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Unify Graph + Swarm into Single Enhanced Graph View","updated_at":"2026-02-24T01:43:10Z","waiters":"","wisp_type":"","work_type":"mutex"}
@ -406,7 +406,8 @@
{"acceptance_criteria":"ViewType removes swarm; VALID_VIEWS removes swarm; Left panel removes swarm entry; Mobile nav removes swarm tab; npm run typecheck, lint, test pass","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Removed swarm view from navigation across all components and updated tests. All gates pass.","closed_at":"2026-02-24T02:11:59Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"0bf894def5cec06893c6d1d15a50458974915ca99cfd17f3837653c8db8bdcf2","created_at":"2026-02-24T01:42:12Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-gb0.8","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"## Evidence\n- use-url-state.ts: ViewType removes 'swarm' (line 6)\n- use-url-state.ts: VALID_VIEWS removes 'swarm' (line 46)\n- left-panel.tsx: views array removes swarm entry (lines 187-190)\n- mobile-nav.tsx: tabs array removes swarm tab (lines 6-9)\n- unified-shell.tsx: Removed dead view === 'swarm' branches\n- swarm-mission-picker.tsx: Changed setView('swarm') to setView('graph')\n- Updated tests for swarm fallback behavior\n- npm run typecheck: PASS\n- npm run lint: PASS (0 errors)\n- npm run test: PASS (31/31)\n\n## Files Changed\n- MODIFIED: src/hooks/use-url-state.ts\n- MODIFIED: src/components/shared/left-panel.tsx\n- MODIFIED: src/components/shared/mobile-nav.tsx\n- MODIFIED: src/components/shared/unified-shell.tsx\n- MODIFIED: src/components/swarm/swarm-mission-picker.tsx\n- MODIFIED: tests/hooks/url-state-integration.test.ts\n- MODIFIED: tests/components/shared/top-bar.test.tsx\n- MODIFIED: tests/components/shared/mobile-nav.test.tsx","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":2,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Remove swarm view from navigation","updated_at":"2026-02-24T02:11:59Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Color palette with presets + custom picker, icon/emoji selector, live preview in inspector, suggested capabilities, duplicate/clone feature, archetype cards show icon/emoji","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Completed full archetype customization: color palette (30 presets), icon/emoji selector (40 emojis), capability autocomplete (30 suggestions), live preview, clone functionality, icon field support in all display components. All verification gates pass.","closed_at":"2026-02-26T04:01:05Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"eab91d6249aa43e9e6f8c0885bc476e42b9d17d60a26f2f8cf255f94b02c4a59","created_at":"2026-02-26T03:26:35Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"Enable users to fully customize their archetypes with color presets, icons/emojis, and better UX","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-gv7","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"Completed: color palette with 30 presets, icon/emoji selector with 40 emojis, suggested capabilities with autocomplete, live preview, clone functionality, updated all display components to use icon field. All verification gates pass.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Enhanced Archetype Customization","updated_at":"2026-02-26T04:01:05Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"ae28ed72ac9799b7b4dce806bbaa0033e83ce60e3495d03df1d5eae9a2dc9a3e","created_at":"2026-02-21T20:28:30Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-hhy","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"open","target":"","timeout_ns":0,"title":"Testing another flow","updated_at":"2026-02-21T20:28:30Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"All existing canonical memory nodes have source bead relations and evidence_ids/plan_refs metadata; help docs require provenance capture.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"dca0bf2efdbf8f386504ed0c7473105b39e0471986abd0f6ea621aac7d191504","created_at":"2026-03-02T00:53:19Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Strengthen memory retrieval for fresh agents by relating canonical memory nodes to source closed beads/plans and adding explicit evidence metadata fields.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-i4c","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"Starting provenance enrichment for canonical memories: source bead links + evidence metadata + doc protocol update.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"in_progress","target":"","timeout_ns":0,"title":"Add provenance links and evidence metadata to canonical memory nodes","updated_at":"2026-03-02T00:53:24Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"All existing canonical memory nodes have source bead relations and evidence_ids/plan_refs metadata; help docs require provenance capture.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Canonical memory provenance linked to historical beads and help/memory updated","closed_at":"2026-03-02T00:54:56Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"dca0bf2efdbf8f386504ed0c7473105b39e0471986abd0f6ea621aac7d191504","created_at":"2026-03-02T00:53:19Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Strengthen memory retrieval for fresh agents by relating canonical memory nodes to source closed beads/plans and adding explicit evidence metadata fields.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-i4c","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"Completed provenance upgrade: all 7 canonical memory beads now link to source closed beads and include metadata keys evidence_ids + plan_refs. Updated help/memory docs to require provenance capture and provenance checks in task-start workflow.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Add provenance links and evidence metadata to canonical memory nodes","updated_at":"2026-03-02T00:54:56Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Both manuals include mandatory post-close memory review cadence and provenance relation commands/requirements.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"AGENTS manuals now enforce regular memory additions and provenance relations","closed_at":"2026-03-02T00:57:15Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"94801679101f97c806f8bada08cbf366d258173ce388dafbb4135a3bfec22b49","created_at":"2026-03-02T00:56:31Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Update root and beadboard AGENTS manuals to require recurring memory additions and explicit provenance relation/metadata rules for canonical memory nodes.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-ij8","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"Updated both AGENTS manuals: added mandatory post-close memory review cadence, provenance relation commands, required evidence_ids/plan_refs metadata, and fresh-agent provenance validation steps.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Enforce regular memory contribution + provenance relations in AGENTS manuals","updated_at":"2026-03-02T00:57:15Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"WorkflowGraphProps includes assignMode?: boolean; GraphNodeData includes isAssignMode?: boolean; When isAssignMode=true and !isActionable: node has opacity-20; When isAssignMode=true and isActionable: node has ring-2 ring-emerald-400/50 shadow-[0_0_24px_rgba(16,185,129,0.2)]; npm run typecheck passes","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"","closed_at":null,"closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"dd64afe3fa8c5aebaa14f15c73385a964cf584eed523b103825eecfe2e8257bc","created_at":"2026-02-24T01:37:40Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-j3u","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"## TASK CONTEXT\n- Bead ID: beadboard-j3u\n- Title: Add assign mode data flow to WorkflowGraph + GraphNodeCard\n- Parent/Epic: beadboard-uui (Unify Graph + Swarm into Single Enhanced Graph View)\n- Dependencies (must be done first): None\n\n## GOAL\nEnable visual differentiation of actionable vs non-actionable nodes when assign mode is active. This provides the visual foundation for the 'Assign' toggle functionality.\n\n## SUCCESS CRITERIA\n- WorkflowGraphProps interface includes assignMode?: boolean\n- GraphNodeData interface includes isAssignMode?: boolean\n- In WorkflowGraphInner, pass isAssignMode: assignMode to each node's data\n- In GraphNodeCard, when data.isAssignMode is true:\n - If !data.isActionable: add opacity-20 class (extra dimming)\n - If data.isActionable: add ring-2 ring-emerald-400/50 shadow-[0_0_24px_rgba(16,185,129,0.2)] (highlight ring)\n- npm run typecheck passes\n\n## SCOPE\n- Modify src/components/shared/workflow-graph.tsx:\n - Add assignMode?: boolean to WorkflowGraphProps (line 24-31)\n - Pass assignMode to WorkflowGraphInner\n - In flowModel useMemo, add isAssignMode: assignMode to each node's data (line 154-175)\n- Modify src/components/graph/graph-node-card.tsx:\n - Add isAssignMode?: boolean to GraphNodeData interface\n - Add conditional styling based on isAssignMode \u0026\u0026 isActionable\n\n## OUT OF SCOPE\n- SmartDag changes (beadboard-5sr)\n- AssignmentPanel component (beadboard-d4n)\n- UnifiedShell wiring (beadboard-cm8)\n\n## IMPLEMENTATION NOTES\nThe visual treatment should:\n1. Non-actionable nodes in assign mode: fade them out so user focuses on ready nodes\n2. Actionable nodes in assign mode: glowing emerald ring to draw attention\n3. Preserve existing styling for non-assign mode\n\n## VERIFICATION REQUIREMENTS\n- Required commands:\n - npm run typecheck\n- Manual verification:\n - When assignMode=true, actionable nodes have green ring\n - When assignMode=true, non-actionable nodes are dimmed\n - When assignMode=false, existing styling preserved","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"tombstone","target":"","timeout_ns":0,"title":"Add assign mode data flow to WorkflowGraph + GraphNodeCard","updated_at":"2026-02-24T01:40:31Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"help/memory folder exists with workflow docs; both AGENTS manuals reference and enforce memory workflow commands and schema.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Memory workflow docs and AGENTS integration added","closed_at":"2026-03-02T00:46:38Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"8542172d8d6c8ac3d885d5d13059206681e450bdb5f0891ae91b825c5f612abd","created_at":"2026-03-02T00:45:20Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Add critical operational docs for the bd-native memory system under help/memory and update root+beadboard AGENTS.md with explicit memory workflow protocol and command patterns.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-jgy","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"Added help/memory index+workflow+query+schema docs; updated AGENTS.md with mandatory Native Memory Workflow section and command contracts.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Document memory workflow in help/memory and AGENTS manuals","updated_at":"2026-03-02T00:46:38Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"User can assign archetypes to tasks via graph nodes and sidebar. Shows assigned archetype badges on nodes. Shows Needs Agent / Pre-assigned / Active Workers sections in sidebar.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Epic complete. Users can now assign archetypes to tasks via graph nodes (dropdown with archetype selection) and sidebar (Needs Agent section with quick assign). Shows archetype badges on nodes. AssignmentPanel shows three sections: Needs Agent, Pre-assigned, and Squad Roster (active workers scoped to epic).","closed_at":"2026-02-24T08:12:02Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"c92148b19bcb16a4c63bfa35b0a534867a3fc85ecb7f79a6443ae8524f0efc4f","created_at":"2026-02-24T04:14:38Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-lgi","is_template":0,"issue_type":"epic","last_activity":null,"metadata":"{}","mol_type":"","notes":"## Final Fix: Single Archetype Per Task\n\n### Design Decision\nAfter discussion, we determined that bd (bead) is designed for ONE agent\narchetype per task - clear ownership model.\n\n### Implementation\n- handleAssignAgent now removes existing agent: labels before adding new one\n- Calls DELETE first, then POST\n- Optimistic UI reflects single archetype constraint\n- Reassigning still works (click different archetype to replace)\n\n### Test Coverage\n- 5 new tests in graph-node-single-archetype.test.tsx\n\n### Commit\n211e503 - feat(graph): enforce single archetype per task","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Assign Archetypes to Tasks - UI System","updated_at":"2026-02-25T01:05:17Z","waiters":"","wisp_type":"","work_type":"mutex"}
@ -434,4 +435,4 @@
{"acceptance_criteria":"","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Recreating as proper children of Phase 0 epic with correct naming","closed_at":"2026-02-28T21:02:57Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"2140bb9fc04d3ec765c3a43b24ad5e8385f639bb70a1166667075da137fd5a19","created_at":"2026-02-28T20:59:38Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"view=activity is a valid ViewType (in VALID_VIEWS in use-url-state.ts) but renderMiddleContent() in UnifiedShell returns null for it. SocialCard 'Jump to Activity' navigates users here, so they land on a blank page.\n\nFile: src/components/shared/unified-shell.tsx\nLocation: renderMiddleContent() function (around lines 103-140)\n\nChange: Add before the final 'return null':\n if (view === 'activity') {\n return (\n \u003cActivityPanel\n issues={filteredIssues}\n projectRoot={projectRoot}\n /\u003e\n );\n }\n\nImport: ActivityPanel is already used in contextual-right-panel.tsx:\n import { ActivityPanel } from '../activity/activity-panel';\nCheck ActivityPanel's props signature before adding - confirm it accepts issues and projectRoot.\n\nAcceptance: Navigating to /?view=activity renders the activity feed. SocialCard 'Jump to Activity' link lands on content, not a blank page.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-yh3","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":0,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"P0.2: Add activity render case to renderMiddleContent()","updated_at":"2026-02-28T21:02:57Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"GraphNodeData interface includes labels field. WorkflowGraph passes issue.labels to node data. Tests verify labels are present in node data.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Completed. Added labels field to GraphNodeData interface and passed issue.labels through WorkflowGraph and dependency-graph-page. All 4 TDD tests pass. All verification gates pass.","closed_at":"2026-02-24T04:20:57Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"61552df0e260d87fe90969800bbe754766ae094d37244bd295360241f6dedab8","created_at":"2026-02-24T04:15:00Z","created_by":"zenchantlive","crystallizes":0,"defer_until":null,"description":"","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-yo5","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"## Completed Implementation\n\n### Files Changed\n- **src/components/graph/graph-node-card.tsx**: Added `labels: string[]` field to GraphNodeData interface\n- **src/components/shared/workflow-graph.tsx**: Added `labels: issue.labels` to node data\n- **src/components/graph/dependency-graph-page.tsx**: Added `labels: issue.labels` to node data (deprecated page kept working)\n- **tests/components/graph/graph-node-labels.test.tsx**: Created 4 TDD tests\n- **package.json**: Added new test file to test script\n\n### Tests Written (TDD)\nAll 4 tests pass:\n1. GraphNodeData interface includes labels field\n2. GraphNodeData labels is typed as string array\n3. WorkflowGraph passes issue.labels to node data\n4. WorkflowGraph uses labels from issue in node mapping\n\n### Verification Gates\n- npm run typecheck: ✓ PASS\n- npm run lint: ✓ PASS (0 errors, 21 warnings - all pre-existing)\n- npm run test: ✓ PASS (all tests)\n\n### Evidence\n```\nnpm run typecheck\n\u003e tsc --noEmit\n(no output = success)\n\nnpm run lint\n✖ 21 problems (0 errors, 21 warnings)\n\nnpm run test\n# tests 13 (including new graph-node-labels suite)\n# pass 13\n# fail 0\n```","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":".","source_system":"","spec_id":null,"status":"closed","target":"","timeout_ns":0,"title":"Pass labels to graph nodes","updated_at":"2026-02-24T04:20:57Z","waiters":"","wisp_type":"","work_type":"mutex"}
{"acceptance_criteria":"Anchors exist, at least 5 canonical memory nodes exist and are closed, links to anchors exist, and plan docs updated.","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Phase 1 memory fabric bootstrapped in bd with anchors and canonical memory nodes","closed_at":"2026-03-02T00:40:49Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"de3a851d3aa09e12495ce3aeec0c1933496e90dbe6893794b8d34316f38eccb4","created_at":"2026-03-02T00:38:49Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Implement Phase 1 native memory system in bd: create domain anchors, seed canonical memory decisions with strict schema labels, link via relates_to, and document evidence.","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-yz6","is_template":0,"issue_type":"task","last_activity":null,"metadata":"{}","mol_type":"","notes":"Evidence: created anchors beadboard-76p/fld/nq9/5r1/8st; created+closed canonical nodes beadboard-116,dvp,60a,zas,duo,6fv,fga; verified retrieval via bd query label=memory+mem-canonical+status=closed and connectivity via bd dep list.","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"Bootstrap Phase 1 Memory Fabric (anchors + canonical nodes)","updated_at":"2026-03-02T00:40:49Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a behavior change touching multiple views, when implementation lands, then shared logic path is reused and covered by tests.\nVerification command(s): rg \"\u003cshared-function-or-hook\u003e\" src tests; npm run test","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:59Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"2103a5356ed4ed273497387c9676eef14c41f9ea886a1c91a654efcb81fef218","created_at":"2026-03-02T00:39:59Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Repeated logic used by multiple views or pages.\nOut of Scope: One-off prototypes and disposable experiments.\nRule: Reuse shared paths/components for cross-view behavior; avoid one-off logic drift.\nRationale: Prevents silent divergence between Kanban, Graph, and API views.\nFailure Mode: Patching one surface only creates inconsistent user behavior.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-zas","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][ARCH][HARD] Shared logic for cross-view behavior","updated_at":"2026-03-02T00:39:59Z","waiters":"","wisp_type":"","work_type":""}
{"acceptance_criteria":"Given a behavior change touching multiple views, when implementation lands, then shared logic path is reused and covered by tests.\nVerification command(s): rg \"\u003cshared-function-or-hook\u003e\" src tests; npm run test","actor":"","agent_state":"","assignee":null,"await_id":"","await_type":"","close_reason":"Ratified canonical memory","closed_at":"2026-03-02T00:39:59Z","closed_by_session":"","compacted_at":null,"compacted_at_commit":null,"compaction_level":0,"content_hash":"2103a5356ed4ed273497387c9676eef14c41f9ea886a1c91a654efcb81fef218","created_at":"2026-03-02T00:39:59Z","created_by":"ZenchantLive","crystallizes":0,"defer_until":null,"description":"Scope: Repeated logic used by multiple views or pages.\nOut of Scope: One-off prototypes and disposable experiments.\nRule: Reuse shared paths/components for cross-view behavior; avoid one-off logic drift.\nRationale: Prevents silent divergence between Kanban, Graph, and API views.\nFailure Mode: Patching one surface only creates inconsistent user behavior.\n","design":"","due_at":null,"ephemeral":0,"estimated_minutes":null,"event_kind":"","external_ref":null,"hook_bead":"","id":"beadboard-zas","is_template":0,"issue_type":"decision","last_activity":null,"metadata":"{\"domain\":\"memory-arch\",\"effective_date\":\"2026-03-02\",\"evidence_ids\":\"beadboard-68k.4,beadboard-68k.5,beadboard-r1i.1\",\"memory_strength\":\"hard\",\"memory_version\":1,\"owner\":\"team\",\"plan_refs\":\"docs/plans/2026-02-22-dag-views-ux-design.md,docs/plans/2026-02-15-unified-ux-prd.md\",\"superseded_by\":null,\"supersedes\":null}","mol_type":"","notes":"Provenance linked: beadboard-68k.4, beadboard-68k.5, beadboard-r1i.1","original_size":null,"owner":"jordanlive121@gmail.com","payload":"","pinned":0,"priority":1,"quality_score":null,"rig":"","role_bead":"","role_type":"","sender":"","source_repo":"","source_system":"","spec_id":"","status":"closed","target":"","timeout_ns":0,"title":"[MEMORY][ARCH][HARD] Shared logic for cross-view behavior","updated_at":"2026-03-02T00:54:01Z","waiters":"","wisp_type":"","work_type":""}

View file

@ -641,6 +641,8 @@
{"issue_id":"beadboard-fld","label":"memory-ux"}
{"issue_id":"beadboard-i4c","label":"memory"}
{"issue_id":"beadboard-i4c","label":"memory-provenance"}
{"issue_id":"beadboard-ij8","label":"docs"}
{"issue_id":"beadboard-ij8","label":"memory"}
{"issue_id":"beadboard-jgy","label":"docs"}
{"issue_id":"beadboard-jgy","label":"memory"}
{"issue_id":"beadboard-nq9","label":"memory"}