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 6197677126
Some checks failed
ci / check (push) Failing after 4s
CB-WP-0008-T01: bots — the kernel's first non-scenario consumer
A Policy trait, a seeded random policy and a greedy one with a stated
heuristic, a legal-command generator that filters candidates through
validate, and a driver that runs a 3-player all-bot game to GameEnded.
Same-seed runs are hash-identical (K8), and a different policy seed
produces a different game — without that second assertion the first is
satisfied by a bot that ignores its RNG.

Every failure is loud, because the one a bot driver must not have is the
silent one: no legal move, passing where an action is required, an
out-of-range index (not clamped), a rejected command, and a stall guard.

What the second consumer found, none of it fixed here:
- GR-A13 admits SOLVE against an already-claimed Problem and resolution
  then does nothing — the action is silently wasted. The policy avoids
  it; the rule is left for a ruling.
- The 3-player standard fixture cannot reach GR-E01's threshold of 7:
  three Problems valued 1,2,3 cap the total at 6. No scenario noticed
  because none plays to scoring.
- K13's Project trait still has zero implementors. T02 is its first.

Mutation-checked by hand. The first mutation was a no-op and survived;
removing the Resolve call outright turned three tests red for the stated
reason. Third instance of the weak-mutation class.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-01 14:29:45 +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-0006 T07: implement K18, amend K14 2026-08-01 12:47:16 +02:00
decisions ADR-0005 + CB-WP-0005: count assertions, not names 2026-07-31 14:25:26 +02:00
evidence CB-WP-0006 T08: control loop — 4 of 14 to 8 of 14, and a cost regression 2026-08-01 13:39:12 +02:00
games/ground CB-WP-0008-T01: bots — the kernel's first non-scenario consumer 2026-08-01 14:29:45 +02:00
history CB-WP-0008-T01: bots — the kernel's first non-scenario consumer 2026-08-01 14:29:45 +02:00
research CB-RES-0005 + CB-WP-0007: session shape measures the wrong window 2026-08-01 13:49:19 +02:00
scenarios CB-WP-0006 T06: K10 replay bundles, --replay, and AM-7 re-earned 2026-08-01 11:05:37 +02:00
specs CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
tools CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
workplans CB-WP-0008-T01: bots — the kernel's first non-scenario consumer 2026-08-01 14:29:45 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-08-01 13:41:21 +02:00
.gitignore chore: stop tracking tools/__pycache__ 2026-08-01 12:49:17 +02:00
Cargo.lock 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
Cargo.toml AM-4: gate scenario YAML, retarget on audited source, re-measure 2026-07-31 03:35:41 +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-0006 T07: implement K18, amend K14 2026-08-01 12:47:16 +02:00
INTENT.md Adopt TRSL V1C1 license; link ground-game and target-revenue sister repos 2026-07-31 00:25:30 +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-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +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 IDs for CB-WP-0008 2026-08-01 14:14:22 +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.