fix(@projects/@magic-civilization): 🐛 update objective priorities and dates
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
This commit is contained in:
parent
7a20affd5e
commit
109a5fb692
4 changed files with 61 additions and 38 deletions
|
|
@ -14,11 +14,11 @@
|
|||
|
||||
| Priority | ✅ | 🟡 | 🔴 | ❌ | ⚫ | Total |
|
||||
|---|---|---|---|---|---|---|
|
||||
| **P0** | 27 | 7 | 1 | 0 | 0 | 35 |
|
||||
| **P0** | 28 | 6 | 1 | 0 | 0 | 35 |
|
||||
| **P1** | 15 | 4 | 2 | 0 | 1 | 22 |
|
||||
| **P2** | 14 | 5 | 0 | 8 | 0 | 27 |
|
||||
| **P3 (oos)** | 0 | 0 | 0 | 0 | 17 | 17 |
|
||||
| **total** | **56** | **16** | **3** | **8** | **18** | **101** |
|
||||
| **total** | **57** | **15** | **3** | **8** | **18** | **101** |
|
||||
|
||||
</td><td valign='top' style='padding-left:2em'>
|
||||
|
||||
|
|
@ -27,8 +27,8 @@
|
|||
| Team Lead | Remaining |
|
||||
|---|---|
|
||||
| [asset-sprite](../team-leads/asset-sprite.md) | 7 |
|
||||
| [warcouncil](../team-leads/warcouncil.md) | 6 |
|
||||
| [wireguard](../team-leads/wireguard.md) | 6 |
|
||||
| [warcouncil](../team-leads/warcouncil.md) | 5 |
|
||||
| [shipwright](../team-leads/shipwright.md) | 2 |
|
||||
| [testwright](../team-leads/testwright.md) | 2 |
|
||||
| [asset-audio](../team-leads/asset-audio.md) | 1 |
|
||||
|
|
@ -39,8 +39,8 @@
|
|||
|
||||
| ID | Status | Title | Owner | Updated |
|
||||
|---|---|---|---|---|
|
||||
| [p0-01](p0-01-mcts-wiring.md) | 🟡 partial | Wire MCTS into gameplay AI | [warcouncil](../team-leads/warcouncil.md) | 2026-04-17 |
|
||||
| [p0-02](p0-02-clan-personalities.md) | 🟡 partial | Five AI clan personalities drive distinct playstyles | [warcouncil](../team-leads/warcouncil.md) | 2026-04-17 |
|
||||
| [p0-01](p0-01-mcts-wiring.md) | 🟡 partial | Wire MCTS into gameplay AI | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-02](p0-02-clan-personalities.md) | 🟡 partial | Five AI clan personalities drive distinct playstyles | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-03](p0-03-pvp-in-turn.md) | ✅ done | PvP combat resolved inside the authoritative turn processor | — | 2026-04-17 |
|
||||
| [p0-04](p0-04-wonder-tracking.md) | ✅ done | World wonder tracking in PlayerState and score victory | — | 2026-04-17 |
|
||||
| [p0-05](p0-05-culture-and-borders.md) | ✅ done | Culture generation and border expansion | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
|
|
@ -58,13 +58,13 @@
|
|||
| [p0-17](p0-17-wild-creature-lair-loop.md) | ✅ done | Wild creature and lair clearing loop | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-18](p0-18-strategic-resource-gate.md) | ✅ done | Strategic resources gate unit production (empire ledger) | — | 2026-04-17 |
|
||||
| [p0-19](p0-19-biome-economy-integration.md) | ✅ done | Biome-driven collectibles → tile yields → happiness end-to-end | — | 2026-04-16 |
|
||||
| [p0-20](p0-20-gpu-mcts-rollouts.md) | 🟡 partial | GPU-accelerated MCTS rollouts for look-ahead decision-making | [warcouncil](../team-leads/warcouncil.md) | 2026-04-17 |
|
||||
| [p0-20](p0-20-gpu-mcts-rollouts.md) | 🟡 partial | GPU-accelerated MCTS rollouts for look-ahead decision-making | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-21](p0-21-audio-system-capability.md) | ✅ done | Audio system capability — manifest + autoload + EventBus wiring | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-22](p0-22-ultimate-ai-stress-test.md) | 🟡 partial | Ultimate AI stress test — 5 clans, huge map, deep lookahead | [warcouncil](../team-leads/warcouncil.md) | 2026-04-17 |
|
||||
| [p0-22](p0-22-ultimate-ai-stress-test.md) | 🟡 partial | Ultimate AI stress test — 5 clans, huge map, deep lookahead | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-23](p0-23-sprite-rendering-capability.md) | ✅ done | Sprite rendering capability — replace procedural draw_* with texture rendering | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-24](p0-24-difficulty-calibrated-ai-progression.md) | 🔴 stub | Difficulty-calibrated AI progression — Easy / Normal / Hard tier-peak distributions | [warcouncil](../team-leads/warcouncil.md) | 2026-04-17 |
|
||||
| [p0-24](p0-24-difficulty-calibrated-ai-progression.md) | 🔴 stub | Difficulty-calibrated AI progression — Easy / Normal / Hard tier-peak distributions | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-25](p0-25-game-quality-metrics-instrumentation.md) | ✅ done | Game-quality metrics instrumentation — tier_peak, peak_unit_tier, wonder_count | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-26](p0-26-ai-tactical-rust-port.md) | 🟡 partial | Port tactical AI from GDScript to mc-ai (Rail-1 compliance) | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-26](p0-26-ai-tactical-rust-port.md) | ✅ done | Port tactical AI from GDScript to mc-ai (Rail-1 compliance) | [warcouncil](../team-leads/warcouncil.md) | 2026-04-18 |
|
||||
| [p0-27](p0-27-gd-culture-bridge.md) | ✅ done | GdCulture bridge — live game delegates culture to mc-culture | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-28](p0-28-gd-economy-bridge.md) | ✅ done | GdEconomy bridge — live game delegates gold/upkeep to mc-economy | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
| [p0-29](p0-29-gd-tech-bridge.md) | ✅ done | GdTechWeb bridge — live game delegates research to mc-tech | [shipwright](../team-leads/shipwright.md) | 2026-04-17 |
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ priority: p0
|
|||
status: partial
|
||||
scope: game1
|
||||
owner: warcouncil
|
||||
updated_at: 2026-04-17
|
||||
updated_at: 2026-04-18
|
||||
evidence:
|
||||
- src/simulator/crates/mc-ai/tests/ultimate_lookahead_stress.rs
|
||||
- tools/matchup-grid.sh
|
||||
|
|
@ -67,27 +67,28 @@ a foregone conclusion; the grid is the precondition.
|
|||
- ✓ `python3 tools/test_matchup_and_ultimate.py` passes 26/26
|
||||
unit tests for matchup_balance and ultimate_stress verdict fns.
|
||||
- ✗ **`tools/matchup-grid.sh` → `matchup_balance: PASS`** — NOT yet run.
|
||||
RUN host stabilized 2026-04-17 ~15:25 PDT (apricot flaky-services cleanup;
|
||||
10/10 sign-off batch clean — see p0-20 acceptance bullet for evidence
|
||||
path). Sole remaining blocker: `auto_play.gd` hardcodes 1v1 and doesn't
|
||||
honor `MAP_SIZE` / `NUM_PLAYERS` env vars, so the script can't target
|
||||
an asymmetric clan pair.
|
||||
Structural blocker RESOLVED 2026-04-18: `MAP_SIZE` + `NUM_PLAYERS` env vars
|
||||
now threaded through `scenes/tests/auto_play.gd` and both local-flatpak +
|
||||
remote-ssh paths of `autoplay-batch.sh`. Batch execution pending; expected
|
||||
to be gated by the shared p0-01 gameplay-balance issue (games resolve
|
||||
T39-T100 via rush domination, so per-pair median-turn may fall below
|
||||
ultimate_stress's ≥40% of cap threshold).
|
||||
- ✗ **`tools/huge-map-5clan.sh` → `ultimate_stress: PASS`** — NOT yet run.
|
||||
Same blocker as above — needs `MAP_SIZE=standard` and `NUM_PLAYERS=5`
|
||||
honored by the game binary. matchup_balance does not strictly precede
|
||||
this bullet for mechanical reasons, but the user has stated matchup_balance
|
||||
is the precondition per the "deeper validation" rationale in p0-02.
|
||||
Same env-wiring resolved 2026-04-18. Batch execution pending behind the
|
||||
matchup-grid precondition and the p0-01 balance fix.
|
||||
|
||||
## Remaining to reach done
|
||||
|
||||
1. **Game binary reads `MAP_SIZE` and `NUM_PLAYERS` env.** `auto_play.gd`
|
||||
currently hardcodes a 1v1 setup. Needs minimal wiring to read the env
|
||||
vars and size the player array / pick the map. This is the sole
|
||||
remaining blocker for both acceptance bullets.
|
||||
1. ~~**Game binary reads `MAP_SIZE` and `NUM_PLAYERS` env.**~~ DONE 2026-04-18.
|
||||
2. **Run matchup-grid** (C(5,2)=10 pairs × seeds). Cite verdict.
|
||||
3. **Run huge-map-5clan** (5 clans on Civ5 `standard` 80×52 map).
|
||||
Cite verdict.
|
||||
4. **MAX_PLAYERS POD expansion** — NOT a blocker for p0-22 (the Civ5
|
||||
4. **Both batches likely gated by p0-01 gameplay-balance tune** — median-turn
|
||||
gate in `ultimate_stress` requires ≥40% of cap (≥120 turns of 300). Current
|
||||
binary resolves most games T39-T100 via rush-domination. Running these
|
||||
batches now is expected to FAIL the verdict; waiting for p0-01's pacing
|
||||
tune to land is the cost-effective sequencing.
|
||||
5. **MAX_PLAYERS POD expansion** — NOT a blocker for p0-22 (the Civ5
|
||||
`standard` 80×52 runs 8 players but our 5-clan ultimate only needs
|
||||
5). If we later want to run the actual canonical `huge` (128×80,
|
||||
12-player) with 8+ AI, the POD's 4-slot-per-entry layout needs
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ priority: p0
|
|||
scope: game1
|
||||
owner: warcouncil
|
||||
status: stub
|
||||
updated_at: 2026-04-17
|
||||
updated_at: 2026-04-18
|
||||
evidence:
|
||||
- public/games/age-of-dwarves/data/difficulty.json
|
||||
---
|
||||
|
|
@ -23,11 +23,33 @@ Added 2026-04-17 as part of the TTV → state-at-end metric reframe (see p0-01).
|
|||
- ✗ Asymmetric Hard vs Normal, 10 seeds: Hard wins ≥ 7/10. Hard's median tier_peak exceeds Normal's by ≥ 1 era.
|
||||
- ✗ `difficulty.json` documents the exact knobs each tier modifies (build-speed multipliers, AI aggression clamps, MCTS rollout budgets, yield bonuses). Each knob has a rationale comment.
|
||||
|
||||
## Status note (2026-04-18)
|
||||
|
||||
`difficulty.json` defines four tiers (easy/normal/hard/insane) with
|
||||
`ai_modifiers.{production_mult, research_mult, gold_mult, combat_bonus,
|
||||
extra_starting_units, starting_gold_bonus}`. Grep confirms only
|
||||
`mc-tech::costs.rs` currently reads the tier (for research cost scaling);
|
||||
`mc-ai` + the tactical executor do NOT consume the production / gold / unit
|
||||
bonuses, so the knobs are data-only at the decision layer.
|
||||
|
||||
**Pre-work required before batches can be run:**
|
||||
1. Wire `ai_modifiers.production_mult` into `mc-ai::tactical::production` (or
|
||||
thread it through `TacticalState.player_stats.production_bonus`) so AI
|
||||
production outputs scale per tier.
|
||||
2. Wire `starting_gold_bonus` + `extra_starting_units` into the engine-side
|
||||
setup path (`auto_play.gd` or `game_state.gd` init).
|
||||
3. Surface the difficulty id through the game-setup env (`AI_DIFFICULTY=easy|normal|hard`)
|
||||
+ plumb down to both the mc-tech cost multiplier and the new mc-ai tactical
|
||||
hook.
|
||||
4. Unblock p0-01's gameplay-balance issue first — tier differentiation cannot
|
||||
be measured while every tier resolves T39-T100 via rush-domination.
|
||||
|
||||
## Depends on
|
||||
|
||||
- **p0-25** — new `turn_stats.jsonl` instrumentation (`tier_peak`, `peak_unit_tier`, `wonder_count`). Cannot measure without the fields.
|
||||
- **p0-01** — MCTS must be the AI driver under test.
|
||||
- **p0-25** — new `turn_stats.jsonl` instrumentation (`tier_peak`, `peak_unit_tier`, `wonder_count`). ✅ done.
|
||||
- **p0-01** — MCTS driver under test; also carries the balance-tune blocker.
|
||||
- **p0-02** — clan personalities multiplied into each difficulty tier; Easy-Blackhammer must still behave aggressively but less efficiently than Normal-Blackhammer.
|
||||
- **p0-26** — tactical AI port. ✅ done 2026-04-18; tactical knob hooks must now land in `mc-ai::tactical`, not the deleted GDScript executor.
|
||||
|
||||
## Non-goals
|
||||
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue