docs: update architecture gate progress
BUILD_IN_PUBLIC_PLAN.md: - Mark systems gate items deterministic clock and headless checksum as complete; remaining gate work stays flagged as in-progress - Rename TaskZone references to ActivityMarkers for consistency LEARNING_ROADMAP.md: - Add architecture gate progress note: first deterministic slice (SimulationClock, seeded streams, headless checksum) is implemented - Update recommended implementation order to reflect shifted priorities PROJECT_CONTEXT.md: - Note that farm and forest markers have been deleted from main.tscn - Update activity marker description (4 remaining: guard/study/rest/food) - Add SimulationClock.gd and deterministic_simulation_test.gd to repo map - Update technical debt: randomness is now seeded but RNG state is not yet serialized; clock is explicit but orchestration still lives on scene tree - Gate status updated with completed first-slice summary RESOURCE_NODE_MIGRATION.md: - Mark Phase 4b (player parity) complete - Phase 6 renamed from 'remove zone model' to 'replace activity markers' with progress note: TaskZone container and FarmZone/ForestZone deleted - Update divergences to note farm/forest scene nodes have been removed
This commit is contained in:
@@ -10,11 +10,11 @@
|
||||
| **4a** | Wood target selection (NPC) | ✅ Complete |
|
||||
| **4b** | Player parity (extraction contract) | ✅ Complete |
|
||||
| **5** | Jajce world placement | 🔶 Scaffold/navigation proof complete |
|
||||
| **6** | Remove remaining zone model | ❌ Not started |
|
||||
| **6** | Replace remaining activity markers | 🔶 Resource zones removed; activity targets pending |
|
||||
|
||||
### Key divergences from the original plan
|
||||
|
||||
- **Zone fallback removed** (Phase 3): `gather_food`/`gather_wood` no longer fall back to `FarmZone`/`ForestZone` markers when no resource node is available. The original plan called for a logged fallback; instead, the NPC goes idle (via `navigation_failed` → wander) to guarantee resource conservation. Player harvesting also uses resource nodes; remaining zones serve only non-resource activities.
|
||||
- **Zone fallback removed** (Phase 3): `gather_food`/`gather_wood` no longer fall back to `FarmZone`/`ForestZone` markers when no resource node is available. The original plan called for a logged fallback; instead, the NPC goes idle (via `navigation_failed` → wander) to guarantee resource conservation. The obsolete farm and forest scene nodes have now also been deleted. The remaining markers are temporary targets for eating, rest, study, and patrol—not resource fallbacks.
|
||||
- **`navigation_failed` signal** (discovered during Phase 4): Added a separate signal pathway to distinguish genuine arrival from navigation failure. The original plan treated all "arrivals" uniformly.
|
||||
- **Stale-path prevention** (discovered during Phase 4): Added `path_request_id` + `path_pending` to reject async path results that arrive after a new target was set or the NPC died.
|
||||
- **Duplicate node_id detection** (discovered during Phase 4): Added startup validation that disables nodes with duplicate IDs and pushes an error.
|
||||
@@ -58,8 +58,9 @@ environment is integrated. It is easier to debug target selection, reservation,
|
||||
depletion, and task completion without terrain and navigation changes happening
|
||||
at the same time.
|
||||
|
||||
The old zones remain only as a temporary fallback while actions are migrated.
|
||||
They are not part of the target architecture.
|
||||
The old resource zones have been removed. Temporary activity markers remain
|
||||
only for actions whose real target type does not exist yet. They are not
|
||||
fallbacks and are not part of the target architecture.
|
||||
|
||||
## Why this is the next systems step
|
||||
|
||||
@@ -172,7 +173,7 @@ Main
|
||||
│ ├── BerryBush_02
|
||||
│ ├── Tree_01
|
||||
│ └── Tree_02
|
||||
└── TaskZone temporary fallback
|
||||
└── ActivityMarkers temporary eat/rest/study/patrol targets
|
||||
```
|
||||
|
||||
When `JajceWorld` is integrated, move or recreate the world-object instances
|
||||
@@ -493,7 +494,7 @@ deferred until after the architecture gate, so this phase is not yet complete.
|
||||
**Exit:** the existing food and wood loops work after moving from the flat map
|
||||
to Terrain3D.
|
||||
|
||||
### Phase 6 — Remove the remaining zone model
|
||||
### Phase 6 — Replace the remaining activity-marker model
|
||||
|
||||
This is not part of the first ResourceNode implementation.
|
||||
|
||||
@@ -513,7 +514,14 @@ Remove each old zone only when its replacement has:
|
||||
- debug visibility;
|
||||
- save representation.
|
||||
|
||||
**Exit:** `TaskZone` and task-to-marker mapping are deleted, not merely unused.
|
||||
**Progress:** the `TaskZone` container and obsolete `FarmZone`/`ForestZone`
|
||||
nodes have been deleted from `main.tscn`. The surviving nodes live under
|
||||
`ActivityMarkers` to make their transitional role explicit. Task-to-marker
|
||||
mapping still exists for eating, rest, study, and patrol, so this phase is not
|
||||
complete.
|
||||
|
||||
**Exit:** temporary activity markers and task-to-marker mapping are deleted,
|
||||
not merely unused.
|
||||
|
||||
## Test scenarios
|
||||
|
||||
|
||||
Reference in New Issue
Block a user