Engineering brief · Saturday, 31 October 2026
Engineering brief, Saturday, 31 October 2026
The bottom line
Good morning. This is the engineering brief for Saturday, 31 October 2026: everything that merged to main between midnight and midnight UTC, and what needs you.
239 pull requests merged, 13% below the seven-day average of 276.1. Together they changed 1,681 files, adding 44,971 lines and removing 1,675. The work reached 13 products, 11 research projects and 21 blog post changes.
The headlines: 3 workflows are red on main as of this build and 2 new research projects started.
Health: CI, main and the queue
Red on main right now: einvoice-preflight CI, red for 3.5 hours, proposal module CI, red for 2.1 hours and ventures tests, red for 0.3 hours. That is the first thing to look at.
Over the last fourteen days, 88% of CI runs that reached a verdict passed, with 13,537 failed runs. The workflows failing most: Portfolio Pages (24 failed), ventures tests (23 failed) and Portfolio validate (14 failed).
When main goes red, the median time to green again is 0.2 hours.
40 pull requests are open, 16 of them drafts; 20 are older than a week, and the oldest has waited 33.1 days. The median pull request merges 0 hours after it opens. 91% of branches go green on their first commit.
There are 642 branches on the remote.
Fix-forwards: 5 merges repaired a red main or a failing check without reverting.
- Fix main health: record PR 11998 on a run record that left pr null #12009
- process: fix red main (siding post description over 160 chars) #12083
- process: shorten over-long seo_title that turned main red (check_post_frontmatter) #12109
- process: fix red main — missing frontmatter on schedule-starter-template post #12164
- process: fix run record with null pr (promptctl validate red on main) #12167
Products
Work landed on 13 products, 145 merges in all.
wall-framing-takeoff: 98 merges.
- Deck picture-frame border (deck.border), test, README and post #11989
- Effective wall R from the framing placed #11991
- Floor cantilever (joists, rim and subfloor past the support) #11998
- Floor cantilever field on the page, test, roadmap and post #12000
- Picture-frame border select on the deck card #12002
- Click-check the floor cantilever field in Chromium #12005
- Wall heat loss (UA, design load, seasonal kBTU) from the placed layout #12011
- ROADMAP stops listing landed roof valleys and page as missing #12012
Plus 90 more product changes.
hearth-and-horizon: 22 merges.
- The Lake Under the Stairs (text only) #11954
- The Black Grains (text only) #11968
- One in Eleven (text only) #11967
- The Number on the Pier (text only) #11970
- Aim Off (text only) #11980
- The Night the Blossom Was Wet (text only) #11984
- Frances Cabrini and the Big Water (text only) #12016
- The Pitch of the Cold Church (text only) #12066
Plus 14 more product changes.
saints-by-candlelight: 6 merges.
- Hezekiah and the Letter Spread Out in the Temple (text only) #12095
- Episode 60, Simeon and Anna and the Child in the Temple (text only) #12104
- Episode 61, Bartimaeus and the Cloak Thrown Aside (text only) #12129
- Episode 62, Philip and the Traveller on the Gaza Road (text only) #12146
- Episode 63, Peter and the Knock at the Gate (text only) #12165
- Episode 64, Tabitha and the Tunics in the Upper Room (text only) #12185
ai-bookkeeper: 5 merges.
- Eleventh gap probe, keyword rules for pressure washers, jewelry makers, notaries, sign shops, beekeepers; post #11964
- Twelfth gap probe, keyword rules for florists, home inspectors, food trucks, translators, event planners; post #11975
- Twelfth gap probe, keyword rules for florists, painters, translators, process servers; post #11976
- Fourteenth gap probe, keyword rules for cleaners, landscapers, yoga teachers, potters, dog trainers #11979
- Fifteenth gap probe, keyword rules for roofers, HVAC, chefs, music teachers, massage therapists #11983
einvoice-preflight: 4 merges.
- Nigeria MBS mandate page, hub row, index link, post #11963
- PDF-005/006 envelope notes; Nigeria page country links (fixes 16 link tests) #11977
- Ireland page read against Revenue's eInvoicing hub #11981
- Redteam: einvoice-preflight document.mjs 2026-10-31 #12007
several products at once: 3 merges.
- Ai-bookkeeper: tenth gap probe, keyword rules for bakers, drone pilots, locksmiths, streamers, locums #11942
- Sweep duplicate meta descriptions; make 22 vs- pages unique #12103
- A11y sweep: aria-live on calculator result regions, reduced-motion on 3 pages #12166
actions-continue-on-error-check: 1 merge.
- Llms.txt for answer engines #11961
ai-engineering-academy: 1 merge.
- Polish: llms.txt for ai-engineering-academy calculators #11978
changepoint-detector: 1 merge.
- --bootstrap swept over 33 real series; post #11952
local-site-studio: 1 merge.
- Polish: hand-written llms.txt for local-site-studio #11982
rsu-withholding-gap-calculator: 1 merge.
- Redteam: rsu-withholding-gap-calculator 2026-10-31 #12151
shed-designer: 1 merge.
- R4 lane 4 — bound the top-plate joint search on long walls (fuzz hang). Merged on local verification (CI runners queued): shed suite 482/482 after merging main, typecheck 0, fuzz seed 202 at 1,500 now completes 17/17, renders unchanged. #11960
wildlife-exclusion-bid-calculator: 1 merge.
- Redteam: wildlife-exclusion share.mjs 2026-10-31 #11966
Research
11 research projects moved. Started that day: build-data and marine-colregs.
aerolog-scaling: 12 merges.
- Paper section 4.10, adjustable tail and identification (9d to 9i) #11947
- Milestone 9j, output-error fit at 10% sensor noise #11974
- Milestone 2a, energy per package vs a diesel truck #11994
- Milestone 2b, whole-flight energy and battery range #12003
- Milestone 2c, altitude and payload in fixed flight energy #12015
- Milestone 9k, continuation start for the output-error fit at 10% noise #12019
- Milestone 9l, estimated initial state in the output-error fit #12040
- Paper draft catches up with milestones 2a-2c and 9j-9l #12064
Plus 4 more research changes.
build-data: 9 merges.
- Research programme proposal and permit-feed probe #12006
- Milestone 1, three-city permit loader, datasheets, first lags #12049
- Austin cost field correction (milestone 1 duplicate dropped) #12048
- Milestone 2 harness (quantile-loss, forward split, reference-class baseline), hand-tested; not yet run on real data #12052
- Baselines run on real feeds (milestone 2) #12069
- Milestone 3, boosted quantile models vs baseline (H1) #12091
- Milestone 4 instrument, split-conformal (CQR) and drift diagnostic, tests; no real-data run (feeds unreachable) #12107
- Milestone 4, conformal calibration on the real feeds (H2) #12156
Plus 1 more research change.
heavy-hydraulics: 6 merges.
- Paper draft gains the cycle-time section (milestone 6b) #11953
- Milestone 3g, open-centre sections sized from PVG 32 rated flows #12025
- Milestone 3h, spool drop at rated flow from PVG 32 curves #12037
- 3i time-penalised break-even with manual-curve sizing #12039
- Fold milestone 3i into paper section 3.5 #12092
- Milestone 3j, two manual figures agree on the rating-point drop #12111
marine-hull: 3 merges.
- Milestone 7c, H1 and H5 run as stated #11950
- Milestone 7d, fixed mission energy and the mono/cat ranking #11995
- Milestone 7e, H5 glider vs AUV fixed-energy flip #12004
civ-levers: 2 merges.
- Pooled sanctioning vs peer punishment (milestone 5) #12036
- Lagged elite recruitment and stress (history milestone, second run) #12116
verified-dse: 2 merges.
- Milestone 45, rank displacement vs pool size #12018
- Milestone 46, rank-displacement result into the paper plus a zero-regret test #12162
energy-cell-dfn: 1 merge.
- Why SPMe scored good cells zero #12030
llm-coding-inference: 1 merge.
- Milestone 7e, 2,000-draw coverage check into paper and README #12132
lowcomm-training: 1 merge.
- 6n compression excess not linear in omega #12114
marine-colregs: 1 merge.
- COLREGs-aware collision avoidance, three planners on 115 encounters #12105
verifiable-training-mechanisms: 1 merge.
- Milestone 53, progress check vs stall and reversed-step workers #12079
Writing
21 merges touched the blog, with 156 new posts.
- polish: seo_title for 23 more long post headlines #11971
- research: match the site's colour scheme on the research pages. Swap the warm cream/indigo palette for the site's cool grey, navy and blue tokens, and give the research hero the dark navy field used by the homepage and every .pf-hero section. #11987
- posts: shorten picture-frame post description (main_health red) #11992
- polish: seo_title for 22 more long post headlines (batch 5) #11997
- docs: shorten cantilever post front matter (push hook rejected it) #12001
- polish: seo_title batch 6 (22 posts) and fix over-budget wall heat loss post #12014
- redteam: platform/audio/narrate.py 2026-10-31 #12029
- polish: seo_title batch 7 (22 posts) and dormer title fix #12034
- posts: fix two front-matter errors that break the Pages build. Stairwell header post lacked description; stair stringer post seo_title was 74 chars (limit 70). #12050
- flagships: bring wall-framing-takeoff next: under the cap; post on the stringer check #12051
- redteam: writing.mjs 2026-10-31 #12055
- polish: seo_title batch 8, 22 posts #12058
- process: fix red main (siding post description over 160 chars) #12083
- polish: seo_title batch 9 (22 posts) + shed-dormer post description #12090
- process: shorten over-long seo_title that turned main red (check_post_frontmatter) #12109
- polish: seo_title batch 10, 25 titles for 2026-10-26 posts #12142
- polish: seo_title batch 11, 20 titles for 2026-10-25/26 posts #12144
- process: fix red main — missing frontmatter on schedule-starter-template post #12164
- polish: seo_title batch 12, 20 titles for 2026-10-25 posts #12182
- wall-framing-takeoff: deadline field on the schedule page #12187
- process: ci_profile.py reads run jobs in parallel with progress and a timeout #12195
Platform, CI and process
34 merges changed the machinery the products and research run on.
platform/pages: 13 merges.
- Redteam: faq-duplicate and share-location 2026-10-30 #11944
- Forward workers.dev to marisstella.app; README at the domain; LinkedIn copy; post #11945
- Site palette: trade neon green/violet for navy and steel blue #11959
- Rebrand as Maris Stella Labs; everything-as-code principle; email routing as code #11955
- Give the site the Maris Stella Labs mark: compass-star logo, favicon, app icons, header and link cards #11958
- Pages: linkSiblings in one pass over hrefs #11973
- Redteam: platform/pages/jobs.mjs 2026-10-31 #12008
- Redteam: platform/pages/invalid.mjs 2026-10-31 #12010
Plus 5 more platform changes.
process, prompts and the ledger: 12 merges.
- Prompts: fix run record that failed validate (pr null, deviations as string) #11948
- Record the owner's 2026-10-31 answers: payout rail, egress, billing model; queue 13 → 7 #11957
- Prompts: review 2026-10-31 #11969
- Redteam: platform/pages/share.mjs 2026-10-31 #11972
- Pivot research draws and flagships to industrial, energy and construction #11985
- Process: fix red post-frontmatter check (picture-frame post description) #11993
- Fix main health: record PR 11998 on a run record that left pr null #12009
- Flagships.yaml: resolve leftover merge-conflict markers #12044
Plus 4 more platform changes.
platform/distribution: 3 merges.
- Distribution hub: platform-native content quoted from each post. The hub built every post draft from title + description alone, so every platform got the same one-line announcement. #11956
- Rebrand, round two: footer, citation, package READMEs, brand file #11965
- Redteam: homebrew.mjs 2026-10-31 #12028
platform/ci: 2 merges.
- Polish: llms.txt lister skips NOT-A-VENTURE tools #11996
- Ci: check_json_valid.py sweep of tracked JSON (explore) #12059
platform/edge: 2 merges.
- Redteam: platform/edge/worker.mjs 2026-10-31. Guard the feedback body-size boundary and the /counts since filter. #11949
- Redteam: platform/edge/worker.mjs 2026-10-31 #12067
platform/counter: 1 merge.
- Usage: pull Cloudflare edge analytics into the repo daily. platform/counter/pull-cloudflare.mjs reads Cloudflare's GraphQL Analytics (zone daily totals, eyeball requests by kind of client and top pages per kind, Worker invocations) into portfolio/usage/cloudflare-analytics.json. #11951
CI and automation: 1 merge.
- Guard the control plane against misbehaving agents. CODEOWNERS now covers the files that steer every agent: instructions, session-start hooks and MCP config, CI, the reviewer config and the ruleset. #11946
The agent fleet
By co-author: Claude Sonnet 5.5 on 174 merges, Claude on 57 merges, Claude Opus 5.5 on 7 merges and unattributed on 1 merge.
185 agent runs filed a run record for the day. By track: ventures 62, research 38, creative 31, polish 14, redteam 14, process 14, explore 6, perf 5 and review 1. By outcome: success 165 and partial 20.
The 19 runs with measured usage came to $13.90 at API list prices, an equivalent rather than a charge, over 138 active minutes.
Runs recorded 7 errors; the first: cite_check.py hit arXiv 429/timeouts; ids verified by hand via arxiv.org abstract pages.
Documentation that cost runs time, most reported first:
- prompt.md, 49 reports: step 0 fetches origin security-alerts, which does not exist on the remote (fatal); no fallback stated.
- research/CLAUDE.md, 9 reports: pick_track.py drew track 14 (codesign), but the programme table says advance a programme; I took aerolog-scaling's logged Next instead.
- prompts/polish/prompt-0.md, 8 reports: Mentions platform/ci/missing_llms_txt.py fine, but propose_seo_titles.py lives in platform/pages/ and the previous report did not say where; also the full build costs ~5 min to find only false alarms.
In the runs’ own words
A few notes runs left in their records, verbatim:
- Added notBefore to schedule.mjs; node --test schedule/cli/page tests: 93 pass. Hand tests only; CI not awaited locally beyond that. No security-alerts branch existed; IDEAS.md empty.
- 9k ran about 3 h CPU (BLAS oversubscribed at ~400% CPU). CI not waited on beyond local research build ok.
- Project: hearth-and-horizon; piece: one-in-eleven (text only, audio 423 MB over 400 cap). node --test 11 pass. Story is slightly under the 3,500-word guide.
- Security queue branch absent; ideas inbox empty. Added weatherRate/exposed to wall-framing-takeoff schedule; node tests and run_venture_tests pass locally. Not run: venture-preflight, no new venture.
- Paper-writing step for aerolog-scaling: no new simulation. check_numbers.py all ok, homepage build.py ok. CI had not started when merged; local checks only.
- Ran milestone 4 on real feeds; H2 refuted. Pytest not run for build-data (not installed under python3.13); the homepage build printed ok.
Watch list
- Get einvoice-preflight CI green on main.
- prompt.md keeps slowing runs down; a clearer page there pays back on every run.
- 20 pull requests older than a week: land or close.
That’s the brief for Saturday. Every item links to its pull request on the page. The numbers come from git, the run records and the CI snapshot taken when this page was built.
Other days
- Saturday, 31 October 2026
- Friday, 30 October 2026
- Thursday, 29 October 2026
- Wednesday, 28 October 2026
- Tuesday, 27 October 2026
- Monday, 26 October 2026
- Sunday, 25 October 2026