bayes for days
sds plan
41 files

README.md

Plan #

What sds is building, and roughly in what order. One file per epic.

The id is the commit scope #

Each epic's filename is its id, and that id never changes. plan/features.md is features, so its commits read feat(features): .... Archiving moves the file into complete/ and never renames it.

plan is a valid scope too, for changes to this register.

Status #

open - being worked on or ready to be.

blocked - cannot start until something in dependsOn lands.

continuous - no exit criterion. Worked whenever adjacent code is open.

declined - decided against. Not blocked, which is waiting: the answer is no rather than not yet. The file stays, because a decision that is not written down gets made again.

shipped - the exit criterion is met. A shipped epic with nothing open moves to complete/.

The tables are generated #

scripts/gen-plan-readme.py reads every epic's frontmatter and rewrites what sits between the <!-- generated: ... --> fences. Everything outside a fence is hand-written and passed through. The plan-register prek hook runs it with --check, so a row that disagrees with the file it points at fails the commit.

Adding an epic is one file and one command: write plan/<id>.md with the frontmatter keys every other epic carries, run the script, stage both.

Open #

id title status depends on
harness The benchmark produces results you can believe open -
scenarios A suite that spans sizes, maps and technology open -
protocol The observation carries what a bot needs to reason open -
hierarchy Units propose, forces decide open -
ev Damage as a distribution, not a mean open protocol
los Line of sight computed here, checked against MegaMek open -
features A normalised, named feature basis open protocol, los, ev
scoring One basis, not two open features
tactics A force is doing one nameable thing, and can be told to do another blocked scoring, hierarchy
beliefs What the bot thinks is happening blocked features
objectives What winning means, and what to do when it stops being available blocked tactics
doctrine Composable lenses - culture, commander, personality, experience blocked tactics
capability Forces and doctrines map to each other blocked tactics
difficulty Fallible, never absurd blocked beliefs, doctrine
training Weights fitted from recorded play blocked features, harness
shape A feature's weight is a curve, not a number blocked training, features
observability Read back what the bot believed and chose open beliefs
artillery A shell fired this round lands next round open ev, beliefs
battle-armor Battle armor plays, mounted and on foot open unit-types, candidates
bridges A bridge is a floor above the ground open protocol
buildings Buildings are terrain the bot can see, enter and destroy open los, protocol
c3 A C3 lance shoots from where its friends can see open los, candidates
candidates Propose positions, not four verbs open los, ev, features
chat The bot says what it is doing, in the match open observability
contract The wire is a contract, and every rule has one home open protocol, puzzles
exotic-ammo The round in the tube changes the shot open ev, features
exotic-weapons Weapons that disable rather than damage open ev, features
fire-modes Ultra and Rotary autocannon rates are a choice open ev
heat-damage Making the enemy hot is a way to win open ev, features
infantry A platoon is a headcount, not a body plan open unit-types, features
matchup The bot can see what it is up against open features, scenarios
melee The bot throws a punch open features, ev
mines Ground that hurts to walk on open protocol, beliefs
mounting A platoon aboard a transport is worth something the basis cannot say open candidates, features
smoke-and-fire Terrain that appears during the match open los, buildings
teams More than two sides open hierarchy, protocol
tsm Triple Strength Myomer rewards running hot open features
unit-types Vehicles and infantry play, not just Meks open protocol, features
vocabulary A diagrammed reference for every feature and label open features, training

Continuous #

id title status depends on

Not pursued #

id title status depends on

Complete #

Nothing open, nothing left to decide. These live in complete/ so the list above stays the list of things somebody might work on. They are not deleted: how something was built, and what it cost to learn, is worth more after it works than before. Their ids stay valid commit scopes.

id title