Commit Graph

369 Commits (d127de7bbb4203e1308a81ea441c47059c8d5443)

Author SHA1 Message Date
VinPropane d127de7bbb NEO-55: add code review for inventory GET/POST HTTP and Bruno. 2026-05-23 22:49:31 -04:00
VinPropane 69327f50b4 NEO-55: player inventory GET/POST HTTP, Bruno, and docs
Versioned snapshot read and mutationKind add/remove POST backed by
PlayerInventoryOperations; AAA API tests; Bruno happy path + deny case.
2026-05-23 22:45:27 -04:00
VinPropane db3b80d242 NEO-55: add implementation plan for inventory GET/POST + Bruno
Kickoff clarifications: single POST with mutationKind, full fixed slot
arrays, applied response field; no manual QA doc per user choice.
2026-05-23 22:41:05 -04:00
VinPropane ac3900c194 NEO-54: address code review suggestions for inventory tests and docs 2026-05-23 19:31:26 -04:00
VinPropane 362608ed5f NEO-54: add code review for inventory store and rules engine. 2026-05-23 19:29:37 -04:00
VinPropane 3724a54f07 NEO-54: note inventory DI chained from item catalog registration 2026-05-23 19:27:06 -04:00
VinPropane 01e391b03a NEO-54: player inventory store, stack/slot rules engine, and tests 2026-05-23 19:26:57 -04:00
VinPropane e5ffa1b951 NEO-54: add implementation plan for inventory store and rules engine 2026-05-23 19:20:01 -04:00
VinPropane 52590fa749 NEO-53: address code review suggestions
Register footnote NEO-53, Bruno exact id-order test, test indent fix,
review doc strikethroughs.
2026-05-23 19:12:20 -04:00
VinPropane 68c4980e42 NEO-53: Add code review for item-definitions HTTP + Bruno. 2026-05-23 19:11:28 -04:00
VinPropane 08428c4da4 NEO-53: GET world item-definitions, Bruno, docs, and tests
Registry-backed read model at /game/world/item-definitions; Bruno
collection, manual QA checklist, README and module alignment updates.
2026-05-23 19:09:46 -04:00
VinPropane 9e2e4ab3a7 NEO-53: add implementation plan for world item-definitions HTTP
Kickoff clarifications: required-five JSON fields, /game/world route,
manual QA doc — all adopted per user choices.
2026-05-23 19:08:24 -04:00
VinPropane 0d904527ac NEO-52: address code review doc suggestions for registry
Add NEO-52 registry bullet to E3.M3 module doc, extend dependency
register footnote, and mark review suggestions done.
2026-05-23 18:17:27 -04:00
VinPropane 7bd4064b93 NEO-52: Add code review for item definition registry + DI. 2026-05-23 18:16:17 -04:00
VinPropane 792b38d8a9 NEO-52: add IItemDefinitionRegistry with DI and lookup tests
Thin adapter over ItemDefinitionCatalog mirroring NEO-35 skill registry;
registers singleton in AddItemDefinitionCatalog with TryGetDefinition,
GetDefinitionsInIdOrder, and AAA unit + host DI tests.
2026-05-23 18:11:33 -04:00
VinPropane 1e9f1e9a3a NEO-52: add implementation plan for item definition registry + DI
Kickoff plan mirrors NEO-35 skill registry pattern on NEO-51 catalog;
includes GetDefinitionsInIdOrder and TryGetDefinition per kickoff answers.
2026-05-23 18:09:02 -04:00
VinPropane 38f0c56711 NEO-51: Address code review — tests, docs, review strikethroughs.
Add Slice 1 role/stackMax and missing-path loader tests; E3.M3 server
load bullet; register footnote; host test temp-dir cleanup.
2026-05-17 22:04:03 -04:00
VinPropane 1c9c93513e NEO-51: Add code review for item catalog fail-fast load. 2026-05-17 22:01:47 -04:00
VinPropane d23f6dd8ab NEO-51: Document item catalog boot and mark plan complete.
README, alignment register, and acceptance checklist updated.
2026-05-17 21:56:12 -04:00
VinPropane b461f3bf47 NEO-51: Record kickoff clarification answers in plan.
User confirmed strict NEO-52 split and loader plus host boot tests.
2026-05-17 21:52:15 -04:00
VinPropane b5674c4150 NEO-51: Add implementation plan for item catalog fail-fast load.
Kickoff clarifications adopt strict NEO-52 split, NEO-34 test pattern,
and in-process validation mirroring validate_content.py.
2026-05-17 21:50:50 -04:00
VinPropane 0ce952131a NEO-50: Address review — equip_stub gate by role, backlog sync. 2026-05-17 21:29:32 -04:00
VinPropane 8fa828daa0 NEO-50: Add code review — Approve for prototype item catalog + CI. 2026-05-17 21:27:59 -04:00
VinPropane bbc6b20fd3 NEO-50: Document frozen prototype item spine and update alignment. 2026-05-17 21:25:06 -04:00
VinPropane 6616bfbca5 NEO-50: Add implementation plan for prototype ItemDef catalog + CI. 2026-05-17 21:22:55 -04:00
VinPropane 56233bfe2c NEO-50: Add E3.M3 prototype backlog and decomposition doc links.
Documents Epic 3 Slice 1 story order (NEO-50–NEO-56), frozen prototype item ids,
and register/module pointers for ItemizationAndInventorySchema.
2026-05-17 21:15:42 -04:00
VinPropane e9c02eded7 NEO-48: mark review items resolved — Approve verdict 2026-05-17 20:38:02 -04:00
VinPropane aba26446d3 NEO-48: address r2 review — atomic fixture, tests, docs
Batch skillXp then resetPerkState with XP rollback; 400 for invalid skillXp;
MasteryFixtureApi gate tests; README fixture vs grant semantics; Bruno GET playerId.
2026-05-17 20:37:00 -04:00
VinPropane 2bb02d76e9 NEO-48: add re-review for mastery fixture testing refactor 2026-05-17 20:34:36 -04:00
VinPropane ffdbed26f2 NEO-48: dev mastery-fixture API for Bruno state setup
Replace fixture player ids with POST …/__dev/mastery-fixture (resetPerkState,
absolute skillXp). Bruno deny tests set state in pre-request on dev-local-1.
Gated to Development/Testing or Game:EnableMasteryFixtureApi.
2026-05-17 20:31:26 -04:00
VinPropane b72201b1f0 NEO-48: Bruno fixture players for deterministic perk deny tests
Seed neo48-perk-fresh and neo48-perk-branch via Game:FixturePlayerIds;
level_too_low uses isolated fresh player, branch_already_chosen sets up
neo48-perk-branch in pre-request instead of skipping on shared state.
2026-05-17 20:26:21 -04:00
VinPropane 3ba8300652 NEO-48: address code review — Bruno deny, API deny tests
Add self-contained branch_already_chosen Bruno request, HTTP deny smoke
for unknown track/tier/branch and null-body 400, folder docs for level_too_low.
2026-05-17 20:21:42 -04:00
VinPropane 0838e661c9 NEO-48: add code review for perk-state HTTP 2026-05-17 20:16:46 -04:00
VinPropane 39c54c3881 NEO-48: perk-state HTTP, Bruno, tests, and docs
GET/POST /game/players/{id}/perk-state with versioned JSON, engine-backed
branch selection, PerkStateApiTests, Bruno collection, README, and E2.M3 alignment.
2026-05-17 20:10:31 -04:00
VinPropane 5290044845 NEO-48: add implementation plan for perk-state HTTP
Kickoff plan for GET/POST /game/players/{id}/perk-state, Bruno, and API
tests; records user choices on route path and unlockedEvents on success.
2026-05-17 20:06:52 -04:00
VinPropane 5058bc1963 NEO-49: address code review follow-ups for telemetry hooks 2026-05-17 19:21:21 -04:00
VinPropane 7ce9dc172c NEO-49: add code review for perk_unlock telemetry hooks 2026-05-17 19:15:17 -04:00
VinPropane 38ef54c238 NEO-49: document perk_unlock hook sites in README, module, and manual QA 2026-05-17 19:10:14 -04:00
VinPropane f3e48f4077 NEO-49: kickoff implementation plan for perk_unlock telemetry hooks 2026-05-17 19:08:54 -04:00
VinPropane 76e710b491 NEO-47: re-review — follow-ups verified, approve for merge 2026-05-17 18:46:25 -04:00
VinPropane 0a2a6fe45b NEO-47: address code review follow-ups for perk unlock engine
Retroactive path-auto unlock on branch pick, unlock rollback, CanWritePlayer
gate, expanded deny tests, gather-hook smoke, decomposition docs, review strikethroughs.
2026-05-17 18:45:11 -04:00
VinPropane 2520a80b6e NEO-47: add code review for perk unlock engine 2026-05-17 18:42:28 -04:00
VinPropane 38774a5b39 NEO-47: perk unlock engine, PerkState persistence, and tests
Add V004 perk tables, in-memory/Postgres stores, PerkUnlockEngine (tier-1 branch
pick, path-auto tier-2 unlocks), level-up hook in skill XP grants, and AAA tests.
Bruno docs note internal perk reevaluation on level-up (HTTP in NEO-48).
2026-05-17 18:38:41 -04:00
VinPropane e297b3a023 NEO-47: add implementation plan for perk unlock engine
Kickoff clarifications, tier-2 auto-path recommendation, and file/test lists for PerkState persistence and level-up hooks.
2026-05-17 18:34:50 -04:00
VinPropane 07fc566e2c NEO-46: address code review follow-up.
Add loader deny-path and registry enumeration tests, tierIndex 1..N gate
in validate_content.py, E2.M3 handoff doc update, and review strikethroughs.
2026-05-17 18:12:39 -04:00
VinPropane 174c390aa4 NEO-46: fail-fast mastery catalog load at server startup.
Mirror validate_content.py gates in MasteryCatalogLoader, expose IMasteryCatalogRegistry, cross-check skillIds against the skill catalog, and enforce tierIndex 1..N per track.
2026-05-17 18:06:50 -04:00
VinPropane 898f935b4f NEO-46: add implementation plan for mastery catalog boot load. 2026-05-17 18:03:30 -04:00
VinPropane 594287c199 NEO-45: address docs review suggestions for E2.M3 Slice 4.
Expand data contract and NEO-46 handoff, gigs.md gig-mastery clarification,
acceptance footnote, and mark docs review items Done.
2026-05-17 13:16:49 -04:00
VinPropane 4a9730c577 NEO-45: address code review doc alignment and CI nits.
Align E2.M3 In Progress status, backlog checkboxes, perks map doc;
reject unreferenced PerkDef rows; tier-2 branch displayNames; review Done.
2026-05-16 20:05:51 -04:00
VinPropane f5f04d8258 NEO-45: lock prototype salvage mastery catalog, schemas, and CI.
Add mastery JSON schema and salvage-only Slice 4 catalog with tier/branch
freeze; extend validate_content.py for skillId, perkId, and branch gates;
update E2.M3 decomposition, content README, and implementation plan.
2026-05-16 19:50:09 -04:00