Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/decisions/log.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Decisions that are cheap and local to reverse, one row each — newest first. Th

| Date | Decision | Why | Change/PR |
|---|---|---|---|
| 2026-07-23 | The Rumble design roadmap becomes active plan P-003 (M-005..M-009), one milestone per roadmap change | The umbrella design names this as its next step; future rumble proposals need a plan item to serve | CH-005 |
| 2026-07-19 | Drop the never-built `npmPublishDryRun` task from CAP-013 (retire TNP-001) instead of building it | `npmPack` already produces the `.tgz` and shows what would be published without uploading, so a dry-run task is redundant | CH-002 |
| 2026-07-19 | TypeScript npm publishing authenticates via the `npmjs-api-key` Gradle property, not an `NPM_TOKEN` env var (retire TNP-002/003, remint TNP-005/006) | Reconciles the corpus to the shipped code and matches the Sonatype/PyPI credential pattern and the `/release` skill | CH-002 |
| 2026-07-19 | Extracted criteria are born `status: draft`; a capability's criteria go `active` when its tests carry purpose tags | Draft criteria are exempt from the AC↔test wall, which turns the four-language tagging backlog (P-001/M-002) into per-capability increments instead of one blocking big bang | CH-001 |
Expand Down
24 changes: 24 additions & 0 deletions docs/plans/P-003-rumble.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
id: P-003
type: plan
status: active
links: [G-001]
title: Tank Royale Rumble
provenance: inferred
---

# P-003 — Tank Royale Rumble

Build the Tank Royale Rumble: an automated, serverless, community-driven tournament system in the RoboRumble/LiteRumble tradition, as designed in [docs/design/rumble/](../design/rumble/README.md). Bot authors submit source code via pull requests, community members run battles on their own machines, and CI aggregates results into rankings published on a static dashboard — all inside Git repositories, at zero infrastructure cost. Serves G-001 directly: the rumble is the competition half of "learning and competition".

The milestones mirror the design's Change Proposal Roadmap in order. Each milestone is delivered by its own change proposal that stops for maintainer approval before implementation, as the design mandates. Milestones M-006 through M-008 create artifacts outside this repository (the `rumble-bots` and `rumble-data` repositories and the client); their proposals and decision records still live here, in the system of record.

| ID | Milestone | Exit criterion | Status | Evidence |
|---|---|---|---|---|
| M-005 | Tank Royale prepared for rumble | `behaviorVersion` exists server-side and in the schema; SPDX `license` field in the booter bot config; Battle Runner exposes battle results for the client; rumble game presets defined; deterministic replay-regression hook in place | todo | |
| M-006 | `rumble-bots` repository live | Repository scaffolded under the community organization with validation CI, templates, and governance; a sample bot PR passes validation end to end | todo | |
| M-007 | `rumble-data` repository live | Result inbox drained by CI into immutable raw facts; aggregation produces leaderboard, pairings, and matches-needed projections; dashboard published on Pages | todo | |
| M-008 | Rumble client runs ranked battles | Client pulls the bot catalog and matchmaking advice, runs a ranked battle, and its submitted result lands in `rumble-data` via issue-ops with no human in the loop | todo | |
| M-009 | Rumble documentation published | User guides live under `/web/docs/rumble/` with one quickstart per audience: bot author, battle contributor, moderator | todo | |

M-006 and M-007 both depend only on M-005 and may proceed in parallel; M-008 depends on the `rumble-bots` catalog and the `rumble-data` engine/matchmaking files; M-009 depends on the interfaces settled by the earlier milestones.
3 changes: 2 additions & 1 deletion docs/plans/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@ Every change proposal names the plan item it serves, or explicitly declares itse

<!-- clue:index:start -->
- [P-001 — Cliewen adoption](P-001-cliewen-adoption.md) · `active`
- [P-002 — TypeScript Bot API reaches npm](P-002-typescript-bot-api-npm.md) · `active`
- [P-002 — TypeScript Bot API reaches npm](P-002-typescript-bot-api-npm.md) · `completed`
- [P-003 — Tank Royale Rumble](P-003-rumble.md) · `active`
<!-- clue:index:end -->
Loading