A rebuild from scratch simulation and games engine framework set up to assimilate and optimize techniques and implementations useful for games, simulations, robotics.
Find a file
tegwick 25b18bddf7
Some checks failed
ci / check (push) Failing after 4s
CB-WP-0044: the page says which rules it plays
Reported as "I did a session and noted no changes" — correct, and the
fault was ours twice.

make ground passes no --variant, so the session was baseline, and
CB-WP-0043 deliberately leaves the baseline layout untouched because a
variant that redraws the baseline invalidates every prior look at it.

But the deeper defect is that nothing said so. The page named the round,
the step, the Lead, the scoring mode and the viewer, and never which rules
it was playing — GroundView did not even carry the variant. There was no
way from the screen to tell baseline from H1 from H2. A session that
cannot say which rules it is playing cannot report a rules change; the
player did the right thing and the instrument had nothing to tell them.

Now: variant on GroundView, `rules <id>` in the page header beside the
scoring mode, `rules <id>` in the inspector because a replay that cannot
say which rules produced it is the same defect in the other tool, and
make ground VARIANT=h2 so the capability is reachable.

Both coverage probes caught the new field independently — the render
crate's and cb-play's — the second time in two passes that they have
turned an addition into a legibility requirement instead of letting it be
silent state.

Verified by fetching the served page rather than by reading the code:
make ground VARIANT=h2 prints "rules: h2" and the page carries
"rules h2-scoped-problem-stress" with the scope labels; the baseline says
"rules ground-darvo-r0" and keeps its row.

Still open: nothing explains what a scope DOES, and the trial log header
does not record the variant either — the same defect one artifact along.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 17:47:31 +02:00
.forgejo/workflows T01: audit every InnerLoop rule, and make the checkable ones executable 2026-07-31 09:16:00 +02:00
benchmarks CB-WP-0006 T07: implement K18, amend K14 2026-08-01 12:47:16 +02:00
crates CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
decisions ADR-0021: the chaos roll is retired, and the condition that retired it was wrong 2026-08-08 15:51:52 +02:00
editions CB-WP-0042 T01-T04: H2's scoped stress, with the named defects caught 2026-08-08 16:06:21 +02:00
evidence H2's ATTACK dynamics, and a construction hazard found while measuring them 2026-08-08 16:56:27 +02:00
games/ground CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
history CB-WP-0025 T02: the review withdrew the finding, and the fifth wrong 2026-08-05 18:06:03 +02:00
research CB-RES-0009: extensive form is the lingua franca 2026-08-08 14:57:25 +02:00
reviews CB-REV-0003: round 3, and three of four FATAL came from round 2's fixes 2026-08-08 10:26:25 +02:00
scenarios CB-WP-0026: collect the rulings -- ten answers that arrived and were never applied 2026-08-05 16:13:37 +02:00
simulators CB-RES-0009: extensive form is the lingua franca 2026-08-08 14:57:25 +02:00
specs ADR-0021: the chaos roll is retired, and the condition that retired it was wrong 2026-08-08 15:51:52 +02:00
tools CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
trials CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
workplans CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-08-08 16:12:20 +02:00
.gitignore chore: stop tracking tools/__pycache__ 2026-08-01 12:49:17 +02:00
Cargo.lock CB-WP-0016: the drop target that was never there 2026-08-02 20:48:18 +02:00
Cargo.toml CB-WP-0012-T04: cb-render-html — stage 1 draws, and the browser is the toolkit 2026-08-02 04:27:25 +02:00
clippy.toml T07: Cargo workspace scaffold — cb-kernel/cb-events/cb-game-runtime/games-ground/cb-sim, HashMap deny-lint, scenario format + runner stub, Criterion skeleton, Makefile, CI 2026-07-31 01:57:13 +02:00
facts.toml CB-WP-0023: SOLVE is legal only where it can do something 2026-08-04 00:18:40 +02:00
gates.toml CB-WP-0041 T01: perfect recall fails on the projection, holds on the history 2026-08-08 15:18:36 +02:00
INTENT.md simulators/: persist the survey, and let it shrink two of the three tracks 2026-08-08 11:56:27 +02:00
LICENSE Adopt TRSL V1C1 license; link ground-game and target-revenue sister repos 2026-07-31 00:25:30 +02:00
Makefile CB-WP-0044: the page says which rules it plays 2026-08-08 17:47:31 +02:00
README.md CB-WP-0004 T01: fix environment friction at the root 2026-07-31 10:13:52 +02:00
rust-toolchain.toml T07: Cargo workspace scaffold — cb-kernel/cb-events/cb-game-runtime/games-ground/cb-sim, HashMap deny-lint, scenario format + runner stub, Criterion skeleton, Makefile, CI 2026-07-31 01:57:13 +02:00
WORK-RECORDS.md Sync hub id for CB-WP-0043 2026-08-08 17:30:59 +02:00

clay-borg

A rebuild from scratch simulation and games engine framework set up to assimilate and optimize techniques and implementations useful for games, simulations, robotics.

Licensed under the Target Revenue Source License (TRSL V1C1) — see LICENSE; canonical text lives in the org's target-revenue repository.

Running the gates

make all                      # every gate, from a clean shell
make -C /path/to/clay-borg all   # …or from any other directory

There is no environment setup step. No cd, no export PATH, no activation script. make locates the repo from its own path and cargo from the standard rustup locations; the Python tools do the same via tools/repo.py. The only prerequisites are a rustup toolchain and Python 3.11+.

This is deliberate and enforced: make env-test runs every tool from / with a PATH containing no cargo, and make all includes it. CB-RES-0003 measured 84 agent turns and $15.33 spent prefixing commands with cd and export PATH before that friction was fixed at the root (CB-WP-0004 T01).

Other useful targets: make cost (spend per task), make cost-budget (spend since the last commit), make cost-mix (mechanical vs judgment turns), make loop-lint (executable InnerLoop rules), make self-tests (every tool's positive control).

GROUND

The first product vertical is a virtual tabletop implementation of GROUND — A Game of Bonds and Rivalry: DARVO Edition. The boardgame itself (rules, editions, content) is at home in the sister repository ground-game — that repo is authoritative for what GROUND is; clay-borg implements the engine that runs it.