Commit Graph

22 Commits (8e421d09c13ea189a0f67f0370a7d4b86f40dc11)

Author SHA1 Message Date
VinPropane b043e8ac45 NS-18: InteractionRequest, client prototype, Postgres test UX
Server: POST /game/players/{id}/interact, HorizontalReach, prototype registry, DTOs, tests; default spawn (-5,0.9,-5); dev HttpLogging.

Client: terminal, radius glow preview, interaction_request_client (interact/E), main wiring; obstacle moved off center.

Tests: postgres.runsettings, launchSettings, Docker compose auto-start/teardown harness, async-safe init.

Docs: plan AC, E1.M1 snapshot, alignment table, server/client README, code review 2026-04-04.
2026-04-04 20:19:33 -04:00
VinPropane d1138bfe62 docs: E2.M1 contract column lists allowedXpSourceKinds (nit #2) 2026-04-03 21:34:49 -04:00
VinPropane fe38ebeb4f docs: drop classless terminology; rename Epic 2 to skills and progression
- Rename epic_02_classless_progression.md → epic_02_skills_and_progression.md
- Epic 2 / vision plan: Skills and Progression Framework; clarify gigs vs non-combat skills
- Replace classless prose in README, game-design, E2 modules, reviews, quest_scope
- Plan diagrams: SkillsProgression, SkillXpAndMastery
2026-04-03 21:33:53 -04:00
VinPropane aceb6027bf chore: align Epic 2 title with epic_02 filename (nit #1)
- Rename to Classless Progression Framework in epic, vision plan, README, E2 modules, game-design links
- Update 2026-04-03 review nit status
2026-04-03 21:30:53 -04:00
VinPropane 6599e136d6 chore: CI check for decomposition hybrid vocabulary (suggestion 4)
- Add scripts/check_decomposition_language.py (stdlib); PR gate step
- CT.M1, content README, docs-review-agent, 2026-04-03 review updates
2026-04-03 21:29:28 -04:00
VinPropane d11641159d chore: Epic 2 E2.M1 stub, content CI validation, doc follow-ups
- epic_02: expand E2.M1 module breakdown (non-combat SkillDef, allowedXpSourceKinds)
- PR gate: Python jsonschema validate content/skills vs skill-def.schema.json
- Add scripts/validate_content.py, requirements-content.txt; ignore .venv-content
- CT.M1, E2.M1, internal-content-authoring, content README: document CI spine
- Update 2026-04-03 branch review (suggestions 2–3 done)
2026-04-03 21:27:52 -04:00
VinPropane dd2fef797d chore: align game-design docs, SkillDef schema, and docs review agent
- Hybrid progression: encounter gig XP, mission skill rewards, Slice 3 split
- SkillDef JSON Schema: stable id, gather/process/make/tech, allowedXpSourceKinds
- Prototype skills: salvage, refine, intrusion; expand E2.M1/E2.M2 contracts
- Add docs-review-agent rule, skills coherence review, AGENTS.md row
- gigs/progression/overview/skills cross-links; explicit HTML anchors in skills.md
2026-04-03 21:21:33 -04:00
VinPropane 107eda77d8 chore: add CT content-tooling track and vision plan tooling epic
- Add docs/decomposition/tooling/internal_authoring.md and CT.M1–M3 module stubs
- Register CT modules and cross-cutting section in decomposition README
- Add internal-content-authoring execution plan
- Extend neon_sprawl_vision.plan.md with Tooling epic (CT) in Core Epic Map and modules
2026-03-30 23:18:40 -04:00
VinPropane e2d64a7a57 NS-17: PostgreSQL position persistence and integration tests
Wire IPositionStateStore to Npgsql when ConnectionStrings:NeonSprawl is set,
with versioned DDL under server/db/migrations and a shared PostgresPositionBootstrap
for schema plus dev-player seeding at host startup. In-memory tests override Postgres
registrations when CI sets the connection string globally.

Add GitHub Actions Postgres service for dotnet test, server README updates,
decomposition and implementation-plan docs, code review write-up, and C# brace
conventions in csharp-style rule.
2026-03-30 22:55:17 -04:00
VinPropane 3882b0e2c6 NS-16: MoveCommand → server PositionState, Godot sync, tests
Implement E1.M1 intent → authority: POST /game/players/{id}/move with v1 JSON
MoveCommandRequest (snap + sequence), extend in-memory store and
PositionStateApi. Godot client splits ground_pick and position_authority_client
with thin main.gd; snap_to_server on player.

Tests live under NeonSprawl.Server.Tests/Game/PositionState/ with AAA layout
and MethodName_ShouldExpectedOutcome_WhenScenario naming. Debug builds use
UseAppHost=false so Linux IDEs resolve .NET 10 from a user-local SDK.

Add NS-16 implementation plan, code review doc, godot-client-script-organization
rule, csharp test layout/naming rules, and refresh E1.M1 / alignment docs.
Server and client README updates include move API, prerequisites, and Rider
notes.

Made-with: Cursor
2026-03-30 19:54:17 -04:00
VinPropane 813baa670d docs: tidy data_and_ops_policy table and vision plan links
Widen content-reload policy table columns; use proper markdown links to
neon_sprawl_vision.plan.md (not code-span wrapped URLs).

Made-with: Cursor
2026-03-30 19:05:49 -04:00
VinPropane c47892c782 docs: documentation vs implementation alignment (#7)
Add documentation_and_implementation_alignment.md: register Status
semantics, Planned vs partial work, per-module snapshot guidance,
implementation tracking table (E1.M1 + NS-15).

Expand register Status legend; set E1.M1 to In Progress; E1.M1 module
doc Implementation snapshot and status. Link from contracts,
decomposition README, tech_stack.

Made-with: Cursor
2026-03-30 19:03:03 -04:00
VinPropane 4a510847b7 docs: data reload and telemetry operations policy (#6)
Add data_and_ops_policy.md: boot-time content load, optional dev
reload, E9.M3/E2.M4 for live tuning; telemetry PII rules, sampling,
retention principles; baseline events from vision plan with future
catalog as field source of truth.

Register cross-cutting + intro; E9.M1, E2.M2, contracts, decomposition
README, tech_stack (Related + Observability pointer).

Made-with: Cursor
2026-03-30 19:00:59 -04:00
VinPropane 0f25edb86a docs: drop conversation-only (#4)/(#5) from module doc titles
Made-with: Cursor
2026-03-30 19:00:06 -04:00
VinPropane 137da33dcc docs: quest scope and party rules (#5)
Add quest_scope_and_party.md: per-character QuestStepState default;
QuestDef modes for solo vs party credit and optional leader turn-in;
E8.M1 dependency for party features; E7.M2 per-character rewards;
open-world prototype default; instance_id binding deferred; edge cases
and telemetry.

Register cross-cutting subsection + intro link; update E7.M1, E7.M2,
E8.M1; contracts, decomposition README, tech_stack related docs.

Made-with: Cursor
2026-03-30 18:58:23 -04:00
VinPropane c9765da311 docs: PvP × combat engine integration (#4)
Add pvp_combat_integration.md: single E5.M1 pipeline for PvE/PvP;
E6.M1 gate before player-target hostility; stub for PvE-only milestones;
shared kernel + profiles escape hatch; deny reason / telemetry notes;
E6.M3 ordering after resolution.

Register cross-cutting subsection; links from E5.M1, E6.M1,
client_server_authority, contracts, decomposition README, tech_stack.
Fix E6.M1 master plan link markup.

Made-with: Cursor
2026-03-30 18:55:46 -04:00
VinPropane 837251d439 docs: client vs server authority (#3) policy
Add modules/client_server_authority.md: default server truth for
persistence/economy/combat; intents vs state table; E1.M1–E1.M4 and
E5.M1 ownership; economy/quest/zone/PvP blanket; deferred tick rate
and lag comp.

Link from contracts.md, register, decomposition README, tech_stack;
one-line Authority pointers in E1_M1, E1_M2, E5_M1. Fix contracts.md
baseline link formatting.

Made-with: Cursor
2026-03-30 18:53:29 -04:00
VinPropane 8ac9953c92 docs: define contract kinds and artifacts (wire, content, telemetry)
Add modules/contracts.md: Protobuf wire vs server-internal vs JSON Schema
content vs telemetry catalog; mapping Key contracts to kinds; proposed
contracts/ repo layout; versioning and Ready criteria.

Link from dependency register, decomposition README, tech_stack Related
docs; pointer from E9.M1 module doc.

Made-with: Cursor
2026-03-30 18:51:35 -04:00
VinPropane 293b8a4c79 docs: expand module register to full epic catalog (37 modules)
- Split dependency table by epic; every Depends On ID is a register row
- Add InteractionRequest to E1.M1 contract column per epic 1
- Footnote E4.M3 backend world services; E4.M3 register deps E4.M1 only
- Add 28 new module markdown files (E1.M3–E9.M4 gaps)
- Link per-module docs index to all 37 files
- Cross-link existing module docs; remove obsolete E1.M3 register note from E5.M1
- Update decomposition README modules blurb

Made-with: Cursor
2026-03-30 18:48:07 -04:00
VinPropane 93eb1fc936 docs: add per-module decomposition docs and register links
Add nine module documents aligned with module_dependency_register rows
(E1.M1, E1.M2, E2.M2, E3.M2, E4.M4, E5.M1, E6.M1, E7.M1, E9.M1) with
purpose, contracts, dependencies, dependents, slices, and risks.

Link register and decomposition README to the new files; note E1.M3
as E5.M1 dependency without a register row yet.

Made-with: Cursor
2026-03-30 18:41:57 -04:00
don b616b741ac Update module dependency register and README with new epic documentation and refined next actions. Added SecurityTierZoneFlags module and clarified dependencies in the planning documents. 2026-03-29 16:47:37 -04:00
don 328aec3a60 Initial project vision and decomposition planning baseline.
Capture the finalized MMO vision document and structured decomposition workspace for epics, modules, and milestones.

Made-with: Cursor
2026-03-29 16:09:57 -04:00