Tasks
🟢 IN FLIGHT
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | ||||||
|---|---|---|---|---|---|---|---|---|---|
| ✅ | Chat: instructions v2 + B-Brain deck, Word and visuals templates (David 10:15, 10:25) | Coco | docs/CLAUDE_PROJECT_INSTRUCTIONS.md v2 (B-Brain connector only in capitals, every chart through viz, deck and document rules, brand, demo questions); world/brand/B-Brain.pptx + dark + example, B-Brain.docx + example, built by build_deck_template.py (byte-identical reruns); gate tools/check_chat_instructions.py 18 checks, 7 tests; docs/16-chat-surfaces.md · screenshots sent to David · agents/coco/REPORT.md | 86db824 | |||||
| ✅ | viz chart works outside the site | Joan | standalone SVG with literal Treeline colours (read from theme.css), white surface, title and legend inside, plus a 1200px PNG image block (headless Chrome, cached under data/brain/viz, git-ignored); 60 tests, selftest ok; live after the connector restart · Nikola (11:10): the Ask B panel shows the PNG on a figure card; gate skips the pop-out page | 20b0943 | |||||
| ✅ | Clean site rebuild pushed (Bernie 10:17, 91411350) | one-row header with Find and the lock-up, Ask B panel on every page, refresh line in the banner, Sun dot, favicon rim; Louis's tiles, S42 and Emmy's canonical tag go in the next build | |||||||
| 🟢 | STAGE-25 CASCADE (watchdog pid 33916, since 07:33) | ai_stage --stage all --parallel 3 --max-rounds 4 over 75 organisations; stage 1 of 11 (object_read) at 900 of 945 slices, 1,391 accepted, 544 to retry (09:41); then signals, doc_rollup, person_insight, staff_insight, assessment, next_step, narrative, call_prep, portfolio, tree; then site build and push · Applies at the next pass: Alonzo's gate relaxations 9b709241 (236 of 492 refusals recovered on replay) and Katherine's brace repair 578fcadb (the 108 missing document reads) · Risk: the tree stage will stop on an empty key-facts payload (org_066, org_073) until Eileen commits her fix · Estimate: the complete 25% site mid-afternoon; later if the subscription limit makes the watchdog sleep | |||||||
| ✅ | S37 Customer page like wz-intel | Eileen | customer row; [AI facts, AI opinion, Next step \ | Profile, Key facts] as 1.5 stacks (the schema allows 1 or 1.5; 2\ | 1 needs STACK_SPANS); story \ | ARR; usage; documents \ | open deals; open tickets \ | activity; contacts; evidence trail; one-line facts with tooltips, ARR once, title once; key facts pending when empty (unblocks the tree build); tests/build+site 174 passed · agents/eileen/REPORT.md · live after the next tree + site build | a119f99 |
| 🟢 | S41 SaaS metrics pages in Commercial | Rachel | Rachel ✅ review agents/rachel/REPORT.md (43 metrics, 97 DAX measures, six tabs, input contract, quality findings, tab-by-tab fit) · Next: Bernie writes the contract docs/16-saas-metrics-contract.md once David answers the three questions under NEEDS DAVID |
🔴 NEEDS DAVID
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
| 🔴 | Chat: three steps (Coco) | (1) in the B-Brain Project and any open chat, switch off every connector except B-Brain, Microsoft 365 above all; (2) replace the Project instructions with the whole of docs/CLAUDE_PROJECT_INSTRUCTIONS.md (a new chat's "hi" menu should end "or a deck or document on any of them"); (3) add world/brand/B-Brain.pptx and world/brand/B-Brain.docx to the Project's files (and B-Brain-dark.pptx for dark decks), then try "Make me a three-slide deck on the renewals at risk" | ||
| 🔴 | (folded into the three steps above) Project: turn off the Microsoft 365 connector – in the B-Brain Project (and ideally that chat), disable every connector except B-Brain; that is why the chat reached Wazoku's SharePoint; then paste the v2 instructions when Coco delivers and add world/brand/B-Brain.pptx to the Project's files | (folded into the three steps above) Project: turn off the Microsoft 365 connector – in the B-Brain Project (and ideally that chat), disable every connector except B-Brain; that is why the chat reached Wazoku's SharePoint; then paste the v2 instructions when Coco delivers and add world/brand/B-Brain.pptx to the Project's files | ||
| 🔴 | Claude Project URL | the header's Claude tile opens the B-Brain Project; send the URL from the address bar (goes into site/site_config.json) | ||
| 🔴 | S39 Ask B tile | Louis | Louis made Ask B the home mark as a tile with a thin rim and no "?" (unreadable at 28px); keep it, or want a different glyph on it? | |
| 🔴 | S30 fonts | the specimen page world/brand/colours-v3-treeline.html shows fallback fonts because it loads no web fonts; the site shows the brand fonts (Public Sans, Bricolage, JetBrains Mono). Keep the brand fonts and make the specimen load them? (Everything else in S30 is closed.) | ||
| 🔴 | S41 SaaS metrics: three decisions before the contract | (1) build the four ARR-side tabs first (Logos/ARR/Deals, ARR, ARR transactions, the ARR tiles of the Dashboard: all from data the sim has) and the P&L, Budget and cost tiles second (they need new simulated inputs: cost of sales, a department-to-role map, a budget generated from the plan, our own illustrative targets file)? (2) Rachel's definitions in our words, with her fixes (one ARR engine, no annualising single months, one logo-count rule, time anchored to the as-of date, budget from plan not actuals): agree? (3) BVIZ gains a bridge (waterfall) chart and a sparkline on stat: agree? | ||
| 🔴 | Site privacy | b-brain.uk is public today; say if it should sit behind Cloudflare Access (one-time PIN, email allow list) | ||
| 🔴 | Try Ask B on your phone | (live): open any page under b-brain.uk/demo/, press Ask B, type the passphrase once (the BB_CONNECTOR_PASSPHRASE line of secrets\connector.env), ask "When does Brackwell renew?" |
👀 FOR DAVID TO CHECK
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
| 👀 | S18, S21, S28, S29 | built (Massimo c81e77e0 36319ea0, Hans usage dashboard): stacked call tiles, customer page order, one title per block, the Platform usage dashboard with cross-filtering; check against wz-intel | 36319ea, c81e77e | |
| 👀 | Sonnet transcript quality | data/text/_runs/ sample or agents/linus/REPORT.md | ||
| 👀 | Decisions recorded | docs 01–06, 11–15; skim docs/06-brain-build.md §4 (pages kept and dropped) and §6 (improvements over wz-intel) |
🎯 SITE REQUIREMENTS (David's words; each one is a task for the production renderer)
TASKS.md as saved 2026-10-11 11:28 UTC
Done (✅, gate-checked or verified by Bernie): S1 Ask Brain → Ask B · S2 portraits + logos on calls · S3 document map like wz-intel · S4 compact key facts · S5 platform usage block · S6 lineage explorer · S7 logo-only header (now the mark + "brain" lock-up, S38) · S8 dark/light · S9 Claude mark + Ask in the header · S10 Help & Support · S11 plain one-colour links · S12 full-width pages · S13 nav starts with Summary · S14 Claude-coloured logo · S15 Find in the header · S16 hover menus + mobile · S17 cartoon avatars + emblems · S19 BVIZ · S20 prose with companions · S22 Summary layout rules L1–L34 · S23 Tasks page live · S24 lineage as wz-intel · S25 wide screens gain columns · S26 lists scroll in their card · S27 Find over everything, grouped · S31 mark: clean B, Sun dot · S32 Ask B as an icon · S33 one header row · S34 baseline 1180 (iPad 11 landscape) · S35 data-refresh line in the blue bar, no STALE · S36 Summary: This week prose, two full-width call blocks · S38 lock-up, quiet refresh line · S40 one address (bbrain.uk 301 to b-brain.uk, canonical link)
| Task | Who | Detail | Commits | ||
|---|---|---|---|---|---|
| 👀 | S18 (amended 00:52) | "on the calls blocks put the logo and person icon on top of each other so there is more space for the text" → logo tile above the portrait tile in one narrow column; text takes the width | |||
| 👀 | S21 Customer page order and title like wz-intel | "You seem to have reorganised customers order and block arrangement, I prefer wz-intel. I also much prefer the line up of the title" (10 Oct 00:20) → one title line, [assessment 2 \ | Key facts over Profile 1], Next step two wide; superseded in part by S37 | ||
| 👀 | S28 One title per block | "Do not need 2 titles for each here, maybe just one title saying calls, then you can see the dates" (10 Oct 00:54) | |||
| 👀 | S29 Platform usage = all customers, filters, cross-filtering | "Platform usage should be for all customers with customer filters, more similar to wz-intel including some kind of grouping of activity that you can cross filter on as well as customers by level of activity" (10 Oct 00:57) → BVIZ dashboard over every customer (Hans) | |||
| 👀 | S30 Theme as the specimen | "Theme seems different to the colours-v3-treeline.html" (11 Oct, about 08:45) → tokens matched (48 of 48); Louis closed 15 differences in use (bar 50px, mark 30px, nav 13px, banner 30px, paddings 16, chips mono 500, lists 14px, table cells 6px, no chevrons, Sky underline); fonts question under NEEDS DAVID | |||
| ✅ | S37 Customer page like wz-intel | "Need the profile and Key facts to look more like this with only 1 line for each fact and tool tips for detail. You should copy most of the fields here. But I don't like that you have the value of ARR 2 times and then a renewal"; "The layout should be closer to wz-intel as follows: Customer Row · AI Facts · Profile \ | Key Facts · AI Opinion · Next Step · The story · ARR Journey · Platform Usage · Documents · Open deals · Open Tickets · Activity · Contacts · Evidence trail"; "Also do not repeat the title" (11 Oct, about 08:45) · Eileen a119f99b | a119f99 | |
| 👀 | S39 Claude and Ask B as tiles | "lets make the Claude logo like the attached and do something similar with Ask B so it is just a logo" (11 Oct, about 09:45) → Louis 3cdc4595: Claude = clay tile with a white burst (simple geometry; a site/assets/claude-mark.svg file would be used instead if added), Ask B = the mark as a tile with a rim · question under NEEDS DAVID | 3cdc459 | ||
| ⬜ S41 SaaS metrics pages in Commercial – "Here is a Power BI template that I built to help analyse a SaaS business, I would like to have a similar idea of the visible pages and included in the Commercial section using our theme and BVIZ. Tabs to include: Dashboard; Logos, ARR and Deals; Profit and Loss Account; ARR; ARR Transactions last 3 months; Budget Analysis" (11 Oct, about 09:45) → Rachel's review done; contract next (NEEDS DAVID) | ⬜ S41 SaaS metrics pages in Commercial – "Here is a Power BI template that I built to help analyse a SaaS business, I would like to have a similar idea of the visible pages and included in the Commercial section using our theme and BVIZ. Tabs to include: Dashboard; Logos, ARR and Deals; Profit and Loss Account; ARR; ARR Transactions last 3 months; Budget Analysis" (11 Oct, about 09:45) → Rachel's review done; contract next (NEEDS DAVID) | ||||
| ✅ | S42 No "Summary" in the nav | "it doesn't make sense on the top Menu to have Summary and Logo link to the same page, you should remove the word Summary and just have Bbrain as discussed earlier" (11 Oct, about 10:10) → the lock-up is the only home link; nav starts with Organisations; crumbs start with "B-Brain" · Louis (sent 10:12) | |||
| ⬜ S43 Commercial views like wz-intel, with the SaaS metrics folded in – "when I have looked at the Commercial views they all need updated to reflect similar to what is in wz-intel but incorporating SaaS Metrics so there is no doubling up and all looks great" (11 Oct, about 10:15) → one Commercial design: wz-intel's pages (ARR customers, renewals, deals, tickets, finance) re-read from docs/reference, the six SaaS tabs (S41) as the money pages, no measure shown twice; part of the docs/16 contract | ⬜ S43 Commercial views like wz-intel, with the SaaS metrics folded in – "when I have looked at the Commercial views they all need updated to reflect similar to what is in wz-intel but incorporating SaaS Metrics so there is no doubling up and all looks great" (11 Oct, about 10:15) → one Commercial design: wz-intel's pages (ARR customers, renewals, deals, tickets, finance) re-read from docs/reference, the six SaaS tabs (S41) as the money pages, no measure shown twice; part of the docs/16 contract | ||||
| ✅ | S44 Header wordmark like David's image | "I want the logo to look more like the attached but cleaned up by you" (11 Oct, about 10:25, agents/louis/lockup-ref.png: big white B with the Sun dot, then "brain" smaller, tight, no tile) → Louis 30919ab8: one-stroke B 26px + Sun dot, "brain" Public Sans 500 19px, no tile; B and dot alone below 440px | 30919ab | ||
| ✅ | S45 Ask B tile = the simple B with the yellow dot | "the logo for the chat should just be the simple B logo with yellow dot" → the mark as the favicon shows it, no rim, no badge · Louis 30919ab8 · for David: on the green bar the tile merges with the bar, so the button looks like the wordmark's B; only the tooltip differs | 30919ab | ||
| ✅ | S46 Portal at b-brain.uk, the brain under /demo/ | "Can you create a couple of basic pages that refer to what this is and then the site should probably be bbrain.uk/demo. It should really be a simple portal into the demo" → Isamu 1dadad60 + Emmy 6eeb8dd4 (old paths 301 to /demo/) · live 11:14 (0c08dd05: portal 200, /demo/ 200, old org page 301); connector restarted on the /demo/ root 11:16 | 0c08dd0, 1dadad6, 6eeb8dd | ||
| ✅ | S47 Portal v2: on brand, USP block, less demo detail, Contact | "The demo should not be described in too much detail in the home page that should be a separate page. Also the home page has text orphaned on the left. This should be a block and then there should be a narrower block on the left showing the key benefits or USPs ... There should be a page that you can link through to for each. There should be a contact us page ... currently provided as a service with Snowflake and sites via SharePoint or Cloudflare but will be developed into a license. Get in early as a consulting gig and you can have licence for free for 3 years once available. You should also refer to B-Brain is your business's brain"; "this does not look like on brand please sort"; "Lineage view should be evidence trail"; "USP should also be to visualise your document store"; "the AI running through all calls, emails and other objects is key but to indicate that it also analyses your documents is really important" (11 Oct, 11:30-11:38) → Isamu: the brain's own page grammar and renderer, six USPs each with a page (visual brain that reads calls, emails, tickets, news and documents; auditable chats; Evidence trail; see your document store; chat in the Claude app or on site; one number one source), The demo page, Contact page · Isamu a34110ea (12 portal pages on the brain's grammar; live 12:20) | a34110e | ||
| 🟢 | S48 BB-Demo is the company in the demo; B-Brain is the tool | "B-Brain should be the name of the company providing this tool and BB-Demo should be the name of the Co in the demo" (11 Oct, about 11:30) → Ursula · Opus · since 11:42 · tools/rename_company.py: dry run and hash-stable apply over world, sim, text, raw, brain, derived, tree; applied by Bernie after the cascade, then entity store, tree, site; renderer labels and docs (CLAUDE.md, docs/01, chat instructions) by hand | |||
| ✅ | S49 Summary: Platform usage as a full-row visual | "platform usage on the summary page should be a view from the platform usage page, not a bunch of text. So probably a full row with some simple visuals showing usage trends and you can click through to the usage page" (11 Oct, about 11:50) → Zaha: a compact mode of the usage dashboard renderer in a span-3 block, title linking to the Platform usage page; Key risks beside Support tickets, Actions beside News, Key numbers over Deals · Zaha a83e4dd3 · live 12:20 | a83e4dd | ||
| ✅ | S50 Portal: Start small | "there should also be a start small section where you don't have to go all in, you could just pick one data stream and see how it works. Give examples such as calls, crm, email. The power is in having everything but this could just be a taster" (11 Oct, about 11:58) → Isamu, in portal v2: a Start small row and page with example cards (Calls, CRM, Email, Support tickets) linking into the demo · Isamu a34110ea · live 12:20 | a34110e | ||
| Rule (David 10 Oct): site feedback lives HERE as tasks, in his words, numbered S1, S2 … | Rule | Rule (David 10 Oct): site feedback lives HERE as tasks, in his words, numbered S1, S2 … |
📝 NEXT (ready to brief)
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
⬜ Next step "When" shows the raw value – this_week appears unformatted in the Next step block (next-step renderer); label it | ⬜ Next step "When" shows the raw value – this_week appears unformatted in the Next step block (next-step renderer); label it | |||
| ⬜ docs/06 §6 improvements to record – Profile and Key facts share one renderer and row shape; tooltip text is tree data the MCP also sees; AI facts and AI opinion are two blocks of one kind; freshness in the as-of bar, no stale flags; one relay process shares the connector's tunnel, auth and log | ⬜ docs/06 §6 improvements to record – Profile and Key facts share one renderer and row shape; tooltip text is tree data the MCP also sees; AI facts and AI opinion are two blocks of one kind; freshness in the as-of bar, no stale flags; one relay process shares the connector's tunnel, auth and log | |||
⬜ After the cascade: stage-25 expectations – re-derive docs/08-demo-script.md figures and qa/demo_expectations.json from the stage-25 signals (renewals 90d: 8 orgs / 303,300; reconciliation 1,359,650 / 1,219,541 / 1,220,300; July incident 24 tickets, 14 customers); drop the MVP literal in tests/mcp/test_tools.py::test_facts_reconciliation_totals_equal_the_facts_table; then python -m pytest tests -q green at stage 25 (20 failures wait for this today) | ⬜ After the cascade: stage-25 expectations – re-derive docs/08-demo-script.md figures and qa/demo_expectations.json from the stage-25 signals (renewals 90d: 8 orgs / 303,300; reconciliation 1,359,650 / 1,219,541 / 1,220,300; July incident 24 tickets, 14 customers); drop the MVP literal in tests/mcp/test_tools.py::test_facts_reconciliation_totals_equal_the_facts_table; then python -m pytest tests -q green at stage 25 (20 failures wait for this today) | |||
⬜ SaaS metrics contract (S41) – docs/16-saas-metrics-contract.md on Rachel §6–7: measures, pages, BVIZ bridge + sparkline, sim inputs (P&L role map, cost of sales, plan-based budget, targets file), ownership table; then a wave of workers | ⬜ SaaS metrics contract (S41) – docs/16-saas-metrics-contract.md on Rachel §6–7: measures, pages, BVIZ bridge + sparkline, sim inputs (P&L role map, cost of sales, plan-based budget, targets file), ownership table; then a wave of workers | |||
⬜ Pro-rated invoices (contract Q4) – at stage 25 org_009 2026-06 invoiced ARR is 54,405 in DuckDB against 58,000 in the sim because raw invoice lines carry no annual value for co-termed pro-rata lines; the sim export must state annual_value on invoice lines (engine + exporter + facts SQL); two xfails in tests/build mark it. Not mid-run: it changes writer events | ⬜ Pro-rated invoices (contract Q4) – at stage 25 org_009 2026-06 invoiced ARR is 54,405 in DuckDB against 58,000 in the sim because raw invoice lines carry no annual value for co-termed pro-rata lines; the sim export must state annual_value on invoice lines (engine + exporter + facts SQL); two xfails in tests/build mark it. Not mid-run: it changes writer events | |||
| ⬜ "4.12" demo figure – the release number is written "four-twelve" in the release-notes text because the writer gate had no 4.12 in its allowed figures; the sim's writer events must carry the release number as an allowed figure, then reopen that document | ⬜ "4.12" demo figure – the release number is written "four-twelve" in the release-notes text because the writer gate had no 4.12 in its allowed figures; the sim's writer events must carry the release number as an allowed figure, then reopen that document | |||
| ⬜ "24%" gate gap – the writer gate's figure rule never sees "24%" before punctuation (NUM needs a word boundary after "%"); fixing it newly refuses artefacts, so do it between runs with a reingest | ⬜ "24%" gate gap – the writer gate's figure rule never sees "24%" before punctuation (NUM needs a word boundary after "%"); fixing it newly refuses artefacts, so do it between runs with a reingest | |||
⬜ Mark leftovers (Dieter) – fallback mark in site/render/page.py 51-55, the mockup mark, build_treeline.py Sun rows: align with the clean B | ⬜ Mark leftovers (Dieter) – fallback mark in site/render/page.py 51-55, the mockup mark, build_treeline.py Sun rows: align with the clean B | |||
| ⬜ Emblem tie-break – org_050 and org_062 share the visible emblem (SL, slot c2, freight); the logo generator needs a tie-break when initials, slot and glyph match | ⬜ Emblem tie-break – org_050 and org_062 share the visible emblem (SL, slot c2, freight); the logo generator needs a tie-break when initials, slot and glyph match | |||
⬜ tests/sim conftest import – tests/sim/test_stage25.py does from conftest import and picks the wrong conftest in mixed runs | ⬜ tests/sim conftest import – tests/sim/test_stage25.py does from conftest import and picks the wrong conftest in mixed runs | |||
⬜ Logon task for the tunnel – .\tools\tunnel.ps1 task (David, once) so the connector and tunnel start after a reboot; today they start by hand with tunnel.ps1 start | ⬜ Logon task for the tunnel – .\tools\tunnel.ps1 task (David, once) so the connector and tunnel start after a reboot; today they start by hand with tunnel.ps1 start | |||
| ⬜ Stage-25 people voice cards – 355 people, 87 cards; add cards for the most-mentioned stage-25 people (Virginia's pattern) | ⬜ Stage-25 people voice cards – 355 people, 87 cards; add cards for the most-mentioned stage-25 people (Virginia's pattern) | |||
⬜ Sim realism for stage 25 (Grace) – CRM contact id per record + new email for the moved contact (per_0501); check the two booked Brackwell renewal calls (call_002_053 Mon 12 Oct, call_002_054 Tue 13 Oct) are intended | ⬜ Sim realism for stage 25 (Grace) – CRM contact id per record + new email for the moved contact (per_0501); check the two booked Brackwell renewal calls (call_002_053 Mon 12 Oct, call_002_054 Tue 13 Oct) are intended |
📋 BACKLOG (not yet briefed)
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
⬜ Stages 50/75/100 – world files and storylines for later stages (engine already supports --stage) | ⬜ Stages 50/75/100 – world files and storylines for later stages (engine already supports --stage) | |||
⬜ Text into raw exports – fold transcripts, email bodies, ticket comments and document bodies into data/raw/ as connector sources | ⬜ Text into raw exports – fold transcripts, email bodies, ticket comments and document bodies into data/raw/ as connector sources | |||
⬜ Date shift for derived prose – extend tools/shift_dates.py to data/brain/derived/ records and stamps so a shift does not re-author everything | ⬜ Date shift for derived prose – extend tools/shift_dates.py to data/brain/derived/ records and stamps so a shift does not re-author everything | |||
| ⬜ Learnings stage – a People › Learnings AI stage; MVP builds it from staff_insight signals | ⬜ Learnings stage – a People › Learnings AI stage; MVP builds it from staff_insight signals | |||
| ⬜ Per-entity page count – ~3,700 pages at 25%, ~15,000 at 100%: revisit before stage 50 | ⬜ Per-entity page count – ~3,700 pages at 25%, ~15,000 at 100%: revisit before stage 50 | |||
| ⬜ Branded documents – templates + worked examples, then the standard B-Brain document set as real files in the store | ⬜ Branded documents – templates + worked examples, then the standard B-Brain document set as real files in the store | |||
⬜ Ask B for prospects – the relay runs on David's subscription and only while SILVER is on; an API-key route on the Worker can replace it without changing the panel (docs/15-site-chat.md) | ⬜ Ask B for prospects – the relay runs on David's subscription and only while SILVER is on; an API-key route on the Worker can replace it without changing the panel (docs/15-site-chat.md) | |||
| ⬜ Semantic search in Phase 3 – Cortex Search once on Snowflake; local hybrid search (BM25 + bge-small) serves until then | ⬜ Semantic search in Phase 3 – Cortex Search once on Snowflake; local hybrid search (BM25 + bge-small) serves until then |
📅 WHAT HAPPENED
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
| 11 Oct 2026 (night and morning) | stage 25 written and the site reshaped on David's review · Writer run: five relaunches with scoped gate relaxations (Ken, Edsger) and reingests; finished 07:31 with 2,890 of 2,891 texts accepted · Cascade started 07:33; AI gate false refusals measured and fixed on replay (Alonzo), the 108 brace-truncated document reads repaired (Katherine) · Domains: David bought b-brain.uk and bbrain.uk; both live by 08:12 (a config-file route attempt took the Worker down for two minutes, reverted); bbrain.uk now 301s to b-brain.uk (Emmy); decision: B-Brain / b-brain.uk everywhere · Phone chat: named tunnel mcp.b-brain.uk (David's cloudflared login 09:12), claude.ai connector and Project working by 09:20 · Site chat: Ask B relay on SILVER through the connector, Ku-shaped panel (Nikola); connector restarted with it 09:38 · Header and brand: one-row header with Find and the B + "brain" lock-up, Ask B and Claude as tiles, data-refresh line in the blue bar, no STALE, clean B with the Sun dot, favicon rim, 1180 baseline, iPad nav (Charles, Dieter, Louis) · Summary: This week as prose, two full-width call blocks (Zaha); customer page in progress (Eileen) · Tests: stage-25 debt cleared except the 18 that wait for the cascade (Margaret); the Tasks page republishes on its own (Lise) · Rachel reviewed David's SaaS metrics pack and Power BI template for the Commercial pages (S41) · Lessons: never guess timestamps (use the commit clock); the Bash heredoc collapses backslashes (use byte values); a worker's uncommitted renderer edits reach the live site if the Tasks page is republished mid-edit (build in a clean worktree) | |||
| 10 Oct 2026 (evening) – SILVER set up | · gh CLI signed in as davidconsettbyrne (a separate PowerShell window; the app's terminal cannot complete the device flow); per-path git credentials for the two accounts; bb-brain cloned, identity set, push proven · pytest + pyyaml installed; pytest.ini so tests/build is collected; claude CLI repointed to 2.1.289 and signed in · David confirmed the ten site requirements and the gate before stage 25; wz-intel pulled to latest and read-only from then on; "wz-intel must not be changed" restated in capitals · Theme Treeline on David's five anchors; waves 1–4 (writers, exports, DuckDB, entity store, AI stages, site, search, MCP) built and the MVP site live on Cloudflare by 03:00; night runner launched 22:44 | |||
| 10 Oct 2026 (late) | foundations: demo script and storylines (Ada), simulation engine with stages (Grace), world to 25% (Marie), author loop + QA gate (Linus), site mockup (Frida), 12 wz-intel reference notes (Alan) | |||
| 10 Oct 2026 | planning: wz-intel reviewed read-only (docs/05-plan-review.md); David's answers in docs 01–04; docs/06-brain-build.md and docs/ORCHESTRATION.md; repo and remote; name settled as B-Brain; pages kept and dropped |
✅ DONE (newest first; detail in each worker's `agents/<name>/REPORT.md`)
TASKS.md as saved 2026-10-11 11:28 UTC
| Task | Who | Detail | Commits | |
|---|---|---|---|---|
| ✅ | Site rebuilt (Bernie 12:20, 517ef07c) | portal v2 (on brand, six benefits with pages, Start small, The demo, Contact), Summary with the usage dashboard row, tree over the cascade's records so far (assessments, next steps, person and staff insights, document roll-ups for all 75); gate 28 of 29 (only the 3 MVP demo figures) | ||
| ✅ | Site rebuilt with the tree (Bernie 11:14, 0c08dd05) | portal at the root, brain under /demo/, Summary rows (Zaha), customer page (Eileen), wordmark and plain Ask B tile (Louis), no Summary nav item, canonical links; gate: only the 3 MVP demo figures and the pop-out page's chrome checks (now exempt, Nikola 3ad65e6f) failed | 3ad65e6 | |
| ✅ | Louis follow-up: iPad nav + logo tiles | 3cdc4595 · full nav at 1180 on touch, Menu under 861 or touch under 1180; Claude clay tile, Ask B mark tile; 82 site tests | 3cdc459 | |
| ✅ | S40 One address | Emmy | bbrain.uk and www 301 to b-brain.uk (Worker script beside the assets), canonical link on every page; probed live 09:54 | a94402f, d337a64 |
| ✅ | SaaS Reporting review | Rachel | agents/rachel/REPORT.md · read-only; structure, 43 metrics, six tabs, DAX measures, input contract, quality findings, fit with bb-brain; no Wazoku figures carried | |
| ✅ | Reply parse repair | Katherine | parse_reply repairs missing closing braces (771 -> 879 of 879 saved replies parse), specific refusal text; 58 tests | 578fcad |
| ✅ | Ask B site chat | Nikola | relay mcp/bb_ask.py on the connector, five tools only, SSE; Ku-shaped panel with maximise, pop out, model picker, attachments, Send; docs/15-site-chat.md; 12 tests; connector restarted 09:38, /ask/health ok | 8d9cdc3 |
| ✅ | Page chrome S30 S32 S33 S34 S35 S38 | Louis | one header row (lock-up, nav, Find, Ask B, Claude, Help, theme), refresh line in the banner, no STALE, no empty crumb row, Sun dot, favicon rim, theme.md L31–L34, 15 specimen differences closed; 81 site tests | a6c4928 |
| ✅ | S36 Summary | Zaha | This week prose beside its list; last and next 5 working days as two full-width day blocks (full key); no stale_days | 60031b0 |
| ✅ | AI gate false refusals | Alonzo | scoped relaxations (employee and same-org names, verbs, date words, normalised excerpts, spoken figures, brief dates, price in words) recover 236 of 492 on replay; tools/regate_ai.py; 55 tests | 9b70924 |
| ✅ | Name: b-brain everywhere | David | recorded in docs/01-plan-overview.md Key decisions | |
| ✅ | Phone chat works | claude.ai connector on https://mcp.b-brain.uk/mcp signed in 09:18; facts, search and viz calls in the log | ||
| ✅ | Named tunnel mcp.b-brain.uk | David | David's cloudflared login + create + tunnel.ps1 config + start (09:12–09:14); tunnel.ps1 path fixed 66f2e57b; signing key set | 66f2e57 |
| ✅ | Tasks page republish tool | Lise | tools/publish_tasks.py re-renders System › Tasks from TASKS.md, commits and pushes; 3 tests | 4f421e1 |
| ✅ | Stage-25 test debt | Margaret | 10 tests stage-agnostic, 3 server fixes (bb_public keep-alive 401, get_document fallback, selftest totals); 18 left wait for the cascade | 9940540 |
| ✅ | Site pushed mid-cascade | Bernie | Charles's header, Dieter's mark, the stage-25 tree (3,729 pages); AI blocks pending until the stages finish | a65df44 |
| ✅ | Phone header: one row, Ask B | Charles | one 55px row down to 360px; "Ask B" wording everywhere; 79 site tests | 875cae2 |
| ✅ | B mark redrawn | Dieter | clean one-stroke B; the dot went Rose then back to Sun on David's word (Louis) | 0c7cfa5 |
| ✅ | Domains live | b-brain.uk, bbrain.uk and www answer from Cloudflare (08:12); route attempt 214cec2e reverted 21f7de1d after error 1042 | 214cec2, 21f7de1 | |
| ✅ | STAGE 25 writer run | finished 07:31: 2,890 of 2,891 texts (9a14a53b); five relaunches 03:48–05:53 with Ken's gate relaxations (7d262e15 c2592c4d 2dafb843 99e7320f 735312bb 315f6f6a bd32b553 26faf0ad), Edsger's output-sized slices 87e33504, tools/reingest_replies.py | 26faf0a, 2dafb84, 315f6f6, 735312b, 7d262e1, 87e3350, 99e7320, 9a14a53, bd32b55, c2592c4 | |
| ✅ | STAGE 25 data | Bernie | sim/run.py --stage 25 (75 orgs, 355 people, CRM ARR 1,359,650; MVP six byte-identical), raw re-exported, DuckDB reloaded, entity store 3,607; Hedy made tests/build stage-agnostic | 862559b |
| ✅ | Public MCP connector | Radia | mcp/bb_public.py + bb_auth.py (Streamable HTTP, OAuth 2.1 + DCR + PKCE, passphrase page, signed tokens, rate limits), tools/tunnel.ps1, docs/14, docs/CLAUDE_PROJECT_INSTRUCTIONS.md; 8 tests + e2e | 38ae4c8 |
| ✅ | Platform usage dashboard (S29) | Hans | site/render/usage.py + bviz.js cross-filtering; 78 site tests | bcb2389 |
| ✅ | BVIZ charts (S19) | Hans | site/render/bviz.py line/columns/barlist/stat on Treeline tokens; 16 tests | de2673e |
| ✅ | Dash gate + reopen tool + writer-gate relaxations | Ken | qa/gate.py, tools/reopen_text.py, tools/reingest_replies.py, qa/allowed_names.txt, qa/allowed_systems.txt; 65 tests | |
| ✅ | Author loop: per-slice checkpointing and output-sized slices | Edsger | tools/author_loop.py as_completed + SLICE_MAX; 19 tests | |
| ✅ | Night runner | Dennis | tools/night_runner.py watchdog (phases A–E, sleeps on a limit, night.stop); 52 tests; keepawake tools/keepawake.py | 7fc98ff |
| ✅ | Site = page types filled from the dataset | Tim | 12 templates + build/page_resolver.py; per-entity pages no longer stored; S20–S24, S29 blocks, lineage edges | da6dad9 |
| ✅ | Site renderer core (wave 4) | Massimo | 3e32efb … c81e77e 36319ea · S13–S16, S18, S20–S22, S25–S27, Treeline layout panel, stacks, one title per block | 36319ea, 3e32efb, c81e77e |
| ✅ | Site visual blocks (wave 4) | Edward | Edward 3dd472f 87fc3e6 6523706 bf2b502 · key facts, usage, document bubble map, lineage explorer on wz-intel's shape | 3dd472f, 87fc3e6, bf2b502 |
| ✅ | Logos, portraits, search, avatars, emblems, grouped search, embeddings | Susan | 41d5f41 1e2c8b0 · deterministic logos and 55 cartoon avatars, BM25 + bge-small hybrid search, Python/JS parity | 1e2c8b0, 41d5f41 |
| ✅ | MCP server and Ask Brain (wave 4) | Vint | 5 tools, selftest; 37 tests | 79ce2d2, 8273b96 |
| ✅ | AI stage runner, gate, demo check (wave 3) | Barbara | build/ai_stage.py, qa/ai_gate.py, qa/demo_check.py; 70 tests; --stage all continues past stalls | 44f40ea, a0c218b, aef53d1 |
| ✅ | Object reads and people (wave 3) | Karen | object_read per kind, person and staff insights | 67cc183, 9b25564 |
| ✅ | Signals and org stages (wave 3) | Florence | signals 82 of 89 docs/08 values; incident pack | 373df06, d6cace6, fcb9c42 |
| ✅ | Site tree (wave 3) | Tim | 1,061 pages, lineage, search rows | 89fb313, e27b683 |
| ✅ | Wave 2: raw exports, DuckDB, entity store | Hedy | Hedy 73906d5 03e9642, Edwin, Rosalind 3d309ab · 32 raw files, facts = truth, 1,010 entities; integration 150 tests | 03e9642, 3d309ab, 73906d5 |
| ✅ | Wave 3 + 4 contracts | Katherine | docs/12, docs/13 and 8 briefs; Wave 2 contract – Niels 91be1e5 · docs/11 | 91be1e5, b997685 |
| ✅ | Theme: Treeline | Josef | David's five anchors; 84 contrast checks; LAYOUT rules L1–L30 in world/brand/theme.md | 61f4217, 6422f48 |
| ✅ | Wave 1 writer run (MVP six) | 398 of 848 round 1, then the rest; object reads 396 of 398 (10 Oct evening) | ||
| ✅ | Voice cards for 22 MVP people | Virginia | 8f634bf | |
| ✅ | pytest.ini | Bernie | tests/build collected (default norecursedirs skipped it) | be381ab |
| ✅ | Foundations (10 Oct) | simulation engine (Grace aed604f 83a49e1), demo script and storylines (Ada 46f3ff9 3f6df93), world (Marie 380bf62 019833b), author loop + QA gate (Linus 61e2d0d 499343b), site mockup (Frida 1e0b958), wz-intel reference notes (Alan ec4ca36), brand options and colour schemes (Saul, Dieter), plan review 8a0ff7c, GitHub set up | 019833b, 1e0b958, 380bf62, 3f6df93, 46f3ff9, 499343b, 61e2d0d, 83a49e1, 8a0ff7c, aed604f, ec4ca36 | |
| ✅ | SILVER set up (10 Oct evening) | gh on both accounts with per-path credentials, wz-intel pulled to latest and read-only, claude CLI signed in, mcp package not needed |