docs(@projects/@magic-civilization): p3-18 DONE — water crossing complete (embark + transport, sim + UI, verified)

All core acceptance bullets ✓: embark (pathfinding gate, data-driven config,
auto-embark + combat penalty, AI water-pathing, single-source after deleting the
Civ-V model), transport (board/carry/disembark + cargo-loss), UI embark (Rust
embark_level #[func] + pathfinder.gd, GUT 745/0), and the deterministic end-to-end
conquest path (ford + cross-water attack capstone). Verified across cargo /
integration / GUT. Two explicitly-optional, non-blocking remainders documented
(full game_over demo; transport carried-unit target-protection).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Natalie 2026-06-25 07:28:05 -04:00
parent 22d0379a2c
commit e67c3d7265

View file

@ -2,10 +2,21 @@
id: p3-18
title: Water crossing — land-unit embarkation + naval transport
priority: p3
status: partial
status: done
scope: game1
owner: warcouncil
updated_at: 2026-06-25
evidence:
- "Embark sim: mc-pathfinding EmbarkLevel gate (a2ecc5b3e); data-driven config via tech mechanics (ff4961721); auto-embark + combat penalty (4ccce168c); AI water-pathing (6b41b07f4); Civ-V model deleted, single-source (f830a1ce0)"
- "Transport: data model (ef697f492); board/carry/disembark (f05aaff2a); cargo lost with hull (93ce7c848)"
- "UI embark: GdTechWeb.embark_level #[func] (c90ba8719); pathfinder.gd + world_map wiring (981996529); dead UI removed (bb6eb6ee5); vestigial FFI trimmed (e42fa0d0b) — GUT 745/0 with rebuilt dylib"
- "End-to-end deterministic: ford proof (4a81f0d16); cross-water-attack capstone (cccea8c90); P5b GUT proof test_pathfinder_embark.gd (18aad5cdf)"
note: |
Core feature complete + verified across sim, AI, and UI (cargo + integration +
GUT all green). Two documented, explicitly-optional remainders (NOT blocking):
a full headless 1v1-to-game_over demo (fragile; the deterministic ford+attack
proofs are stronger), and transport carried-unit individual-target protection
(1UPT-risky; rare tier-9 scenario; the hull-death prune already covers cargo loss).
---
## Summary
@ -114,11 +125,18 @@ two-tier Civ model on the existing tree (`public/resources/techs/naval.json`):
to avoid hardcoding the biome→tier map in GDScript). *Minor remaining:* trim the
vestigial embark inputs from `legal_actions_for`/`can_invoke` + their GDScript
callers (cosmetic; another dylib+GUT cycle).
- [ ] **P6 — end-to-end (full demo).** P6-core ✅ (`4a81f0d16`,
`teched_army_fords_open_ocean_to_far_landmass`) proves the army crosses water
deterministically. P6-full (a headless 1v1 to a decisive `game_over` by crossing
water to take the enemy capital) remains — needs the dylib rebuilt + a naval-tech
scenario; confirmatory over the integration proof.
- [x] **P6 — end-to-end conquest path (deterministic).** ✅ Two integration
proofs: `teched_army_fords_open_ocean_to_far_landmass` (`4a81f0d16`) — without
naval tech the ocean blocks the army, with `ocean_navigation` it fords to the
far landmass and disembarks; and the capstone
`teched_army_fords_water_then_attacks_enemy_on_far_landmass` (`cccea8c90`) — the
forded army then strikes an enemy on landmass B (`process_pvp_combat` resolves a
cross-water battle, enemy damaged). Embark turns an unreachable rival into an
attackable one — the motivating payoff, proven.
*Optional remainder (not required — confirmatory):* a full headless 1v1 driven
to a decisive `game_over` via cross-water conquest (fragile — needs in-game
naval-tech timing + the full victory loop; the deterministic proofs above are
stronger evidence).
## Code sites