jpmschweitzer and Claude Fable 5
257d979aed
refactor(simulation): split the input.rs and dialogue.rs dispatchers (T-1062)
...
input.rs 2,739 → 858 lines: per-domain action handlers moved to their
owning modules (inventory, movement, stance, examine, follow, interaction,
save_io, settings, bridge::debug, economy, vision_cone, bookmark,
test_world reset + new teleport.rs); input.rs keeps the queue, the thin
dispatch table, and pause/cooldown glue. All 9 type_complexity allows
dissolved via one PlayerInputQuery alias.
dialogue.rs → dialogue/ directory module: selection (631), response
(1,473), confrontation (714), mod.rs (226, shared session components +
re-exports — public paths preserved). Documented seam deviation:
process_walk_away lives with confrontation (D-064/D-063 share the same
world-response shape).
Mechanical, zero behavior change: determinism + golden_suite byte-identical
(independently re-verified); 1,504 lib tests unchanged — 23 input tests
moved with their subjects, 53 dialogue tests redistributed, zero deleted.
System scheduling registrations untouched (input_plugin.rs 0-line diff).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-06-12 17:07:36 +02:00
jpmschweitzer and Claude Opus 4.6
d0663c4193
refactor(server): apply rustfmt and clippy suggestions
...
Formatting pass across simulation, perception, knowledge, NPC, and
test modules. Includes two clippy fixes in monologue.rs (.values()
instead of for (_, v) pattern).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-16 00:40:43 +01:00
jpmschweitzer and Claude Opus 4.6
98f4cedc03
feat(simulation): Sprint 6 Touch — stance, tile presence, verbs, protocol v6
...
Implements the core Sprint 6: Touch systems across 5 tickets:
- #449 ObserverSnapshot v6: add player_stance (MovementStance) and
player_inventory (Vec<InventoryItem>) wire fields with serde defaults
for backward compatibility. Bump PROTOCOL_VERSION 5→6.
- #417 Stance system: Sprint/Walk/Careful/Crouch movement stance with
tick-based speed (1/2/3/4 ticks per move), monologue rate multipliers,
and PlayerMoveCooldown component. ToggleStanceUp/Down player actions.
- #420 TilePresence: posture-layer collision system allowing same-tile
occupancy for different layers (Standing/Prone/Seated/Fixture).
Layer-based collision in validate_movement.
- #421 ObjectType component: Readable/Container/Terminal/Door/Pickup/
Furniture types with Phase 1 verb sets computed from type + proximity.
- #422 Phase 2 verb filter: KG-gated observer-side verb processing —
POI priority flips, Confront injection at KnowsDetails+, contradiction
marking, archetype-specific label relabeling (Smuggler/Detective).
217 unit tests + 17 integration tests passing. All MessagePack fixtures
regenerated for v6 wire format.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-14 15:38:59 +01:00