Commit Graph

726 Commits (bc2e9d60458565c0739bbd3dd6bfcc61b092f943)

Author SHA1 Message Date
VinPropane b36fe6d863 NEO-122: Address code review HUD error and test gaps.
Surface quest-definitions sync failures on QuestProgressLabel, add accept
failure and busy-guard GdUnit coverage, inline render helper, and reconcile
review doc with strikethroughs.
2026-06-07 12:45:47 -04:00
VinPropane 4e75ec6493 NEO-122: Add code review for quest progress HUD. 2026-06-07 12:44:35 -04:00
VinPropane e37671d815 NEO-122: Add Godot quest progress and accept HUD.
Wire quest-progress GET and accept POST clients with four-quest HUD labels,
Q/Shift+Q accept bindings, and event-driven refresh after gather, craft, and
NPC defeats; includes GdUnit coverage and manual QA checklist.
2026-06-07 12:43:27 -04:00
VinPropane 150cb73f9a NEO-122: Add kickoff implementation plan for quest progress HUD. 2026-06-07 12:40:40 -04:00
VinPropane 88d01778a1 NEO-121: Address review nits for quest telemetry hook sites.
Add schemaVersion to quest_start comment, thread playerId/questId into
DenyAccept, and merge duplicate deny snapshot helpers.
2026-06-07 12:33:34 -04:00
VinPropane 89affe2b32 NEO-121: Add code review for quest telemetry hook sites. 2026-06-07 12:32:35 -04:00
VinPropane 705a7cd028 NEO-121: Add comment-only quest telemetry hook sites in QuestStateOperations.
Document quest_start, quest_step_complete, quest_complete, and quest_accept_denied
anchors for future E9.M1 ingest with README, manual QA, and module doc updates.
2026-06-07 12:29:52 -04:00
VinPropane 72b98a627c NEO-121: Add kickoff implementation plan for quest telemetry hooks. 2026-06-07 12:28:11 -04:00
VinPropane ea3b7cceb5 NEO-120: Address code review test coverage gaps.
Add HTTP tests for already_completed deny snapshot and empty {} body;
tighten already_active AAA arrange. Strike through resolved review items.
2026-06-07 12:21:19 -04:00
VinPropane 14bdec367c NEO-120: Add code review for quest accept POST branch. 2026-06-07 12:19:56 -04:00
VinPropane 9fe6cb36fd NEO-120: Document quest accept POST and reconcile plan.
Update server README, E7.M1 module docs, alignment register, backlog, and
implementation plan reconciliation for shipped accept HTTP.
2026-06-07 12:18:53 -04:00
VinPropane b22b68ad1f NEO-120: Add implementation plan for quest accept POST.
Kickoff plan for E7M1-09 — wire QuestStateOperations.TryAccept over HTTP
with Bruno and integration tests; client counterpart NEO-122.
2026-06-07 12:16:57 -04:00
VinPropane ad906fec40 NEO-119: Tighten quest-progress order and side-effect test coverage. 2026-06-07 12:10:55 -04:00
VinPropane 1565d2cde7 NEO-119: Add code review for quest-progress GET branch. 2026-06-07 12:09:57 -04:00
VinPropane 9e4c52f653 NEO-119: Document quest-progress GET and reconcile plan docs. 2026-06-07 11:56:31 -04:00
VinPropane 78e5de3338 NEO-119: Add kickoff implementation plan for quest progress GET. 2026-06-07 11:50:11 -04:00
VinPropane 71dbdd9a3e NEO-118: Wire quest objectives to gather, craft, and encounter events.
Add QuestObjectiveWiring with auto step advance/complete, hook into
GatherOperations, CraftOperations, EncounterCompletionOperations, and
QuestStateOperations accept/advance for inventory_has_item checks.
2026-06-06 19:54:37 -04:00
VinPropane 286a1a036f NEO-118: Add kickoff implementation plan for quest objective wiring. 2026-06-06 19:48:27 -04:00
VinPropane 540257d12d NEO-117: Fix Bugbot deny-code misclassification on quest accept.
Add CanWritePlayer to IPlayerQuestStateStore and check before
prerequisite gate; map TryActivate/TryAdvanceStep store failures
from progress snapshots instead of always unknown_player.
2026-06-06 19:36:41 -04:00
VinPropane 025c3250d2 NEO-117: Address code review findings for QuestStateOperations.
Align test DI resolution with encounter pattern, add unknown_quest
advance/complete tests, catalog quest id constants, refactor
TryMarkComplete readability, and update decomposition docs.
2026-06-06 19:30:21 -04:00
VinPropane 84847e20f0 NEO-117: Add code review for QuestStateOperations branch. 2026-06-06 19:29:10 -04:00
VinPropane f053ffbb39 NEO-117: Add QuestStateOperations with reason codes and tests.
Server-authoritative accept, step advance, and idempotent complete
wrapping IPlayerQuestStateStore with prerequisite enforcement.
2026-06-06 19:26:37 -04:00
VinPropane 44ef5f2484 NEO-117: Add kickoff implementation plan for QuestStateOperations. 2026-06-06 19:23:55 -04:00
VinPropane de611ac294 NEO-116: Address code review findings for quest state store.
Fix persistence test AAA layout, empty-id denial theory, frozen id constants,
Postgres rollback/JSONB read, XML doc cref, README Bruno link, and review doc.
2026-06-03 23:19:52 -04:00
VinPropane af87b5d12c NEO-116: Add code review for player quest state store. 2026-06-03 23:16:48 -04:00
VinPropane 395b70c030 NEO-116: Add player quest state store with Postgres persistence.
Introduces IPlayerQuestStateStore (in-memory + V008 Postgres), QuestStepState
snapshots, DI wiring, AAA unit tests, and docs for E7M1-05 before NEO-117 ops.
2026-06-03 23:04:50 -04:00
VinPropane 065872405c NEO-116: Add kickoff implementation plan for player quest state store.
Documents store contract, Postgres V008, tests, and kickoff decisions
(in-memory + Postgres when configured) before E7M1-06 operations land.
2026-06-03 23:01:59 -04:00
VinPropane ab315f326b NEO-115: address code review findings for quest definitions GET.
Derive expected quest id order from PrototypeE7M1QuestCatalogRules,
assert refine craft_recipe objective in integration test, and update
module dependency register plus review doc strikethroughs.
2026-06-03 22:22:44 -04:00
VinPropane 31ffee1f7a NEO-115: add code review for quest definitions GET API. 2026-06-03 22:16:48 -04:00
VinPropane b3f90ded53 NEO-115: reconcile plan, backlog, and E7.M1 alignment docs.
Mark E7M1-04 acceptance landed and document the quest definitions HTTP slice.
2026-06-03 22:14:39 -04:00
VinPropane a5be355a22 NEO-115: add kickoff implementation plan for quest definitions GET. 2026-06-03 22:12:14 -04:00
VinPropane 5d302742f7 NEO-114: Address code review — backlog wording and empty-id test. 2026-06-01 21:49:57 -04:00
VinPropane b4e5e612d4 NEO-114: Add code review for quest definition registry. 2026-06-01 21:49:16 -04:00
VinPropane 0bcbb4b041 NEO-114: Document quest registry and reconcile E7.M1 alignment. 2026-06-01 21:47:01 -04:00
VinPropane 9056a9b005 NEO-114: Add kickoff implementation plan for quest definition registry. 2026-06-01 21:36:07 -04:00
VinPropane 9c2ab5ae4d NEO-113: address code review — docs, schema and chain terminal tests. 2026-05-31 22:36:26 -04:00
VinPropane 38310d6ed3 NEO-113: add code review for quest catalog load branch. 2026-05-31 22:35:26 -04:00
VinPropane 1044547cc5 NEO-113: document quest catalog load and reconcile plan. 2026-05-31 22:33:43 -04:00
VinPropane cb4761b0b4 NEO-113: add kickoff implementation plan for quest catalog load. 2026-05-31 21:31:14 -04:00
VinPropane a4ed4abadb NEO-112: enforce objective id uniqueness per quest in CI
Move obj_ids_seen to quest scope so duplicate objective ids are
rejected across steps, matching CT.M1 documentation and E7M1-04
HTTP projection expectations (Bugbot PR #151).
2026-05-31 21:23:45 -04:00
VinPropane 50956bac11 NEO-112: address code review doc alignment findings 2026-05-31 21:17:37 -04:00
VinPropane c55c373f7f NEO-112: add code review for QuestDef catalog + CI gates 2026-05-31 21:16:56 -04:00
VinPropane 765075f3cf NEO-112: document quest catalog CI and reconcile implementation plan 2026-05-31 21:16:12 -04:00
VinPropane 140d857398 NEO-112: add E7M1 prototype backlog and decomposition cross-links 2026-05-31 21:13:03 -04:00
VinPropane be1dae3872 NEO-112: add kickoff implementation plan for QuestDef catalog + CI 2026-05-31 21:12:54 -04:00
VinPropane 5e4816eddd NEO-111: record manual QA pass; mark E5.M3 Ready.
Capstone checklist passed in Godot; Epic 5 Slice 3 client complete.
2026-05-31 20:11:15 -04:00
VinPropane 2e54fe39f8 NEO-111: reconcile plan and module docs for encounter capstone.
Document shipped capstone artifacts; manual Godot QA pass still pending
before E5.M3 Ready and backlog AC checkboxes.
2026-05-31 20:02:14 -04:00
VinPropane e900ba992b NEO-111: add capstone manual QA script and README loop section.
Single-session Godot checklist with flexible defeat order, inventory
verification, and Godot-restart idempotency; cross-link from NEO-110.
2026-05-31 20:02:14 -04:00
VinPropane 385cabe883 NEO-111: kickoff implementation plan for encounter clear capstone.
Docs-primary Slice 3 capstone: manual QA script, README loop section,
and module alignment; integration fixes only if Godot QA fails.
2026-05-31 20:01:11 -04:00
VinPropane 82c966d7d2 NEO-110: record manual QA pass on plan; add test script uid. 2026-05-31 19:57:13 -04:00
VinPropane c8d475670c NEO-110: address review — loot label helper, defs re-paint, tests. 2026-05-31 19:38:07 -04:00
VinPropane 3ce645a0f0 NEO-110: code review — request changes for loot label helper. 2026-05-31 19:37:21 -04:00
VinPropane bcc9bf1c69 NEO-110: manual QA, README, plan reconciliation, and module docs. 2026-05-31 19:35:56 -04:00
VinPropane 3128f36df9 NEO-110: kickoff implementation plan for encounter HUD client. 2026-05-31 19:34:27 -04:00
VinPropane df248308c7 NEO-109: Restore early return on completion failure guard.
Bugbot PR #148: keep consistent guard-clause pattern in
EncounterCombatWiring.TryProcessCastOutcome.
2026-05-31 19:25:33 -04:00
VinPropane c40bcd3ffe NEO-109: Address code review hook-anchor findings.
Move encounter_start comments after successful TryActivate; clarify
encounter_complete_denied caller context; strike through review items.
2026-05-31 19:06:01 -04:00
VinPropane d1a67a89bd NEO-109: Add code review for encounter telemetry hook sites. 2026-05-31 19:04:55 -04:00
VinPropane 8cda0d76da NEO-109: Document encounter telemetry hooks in README and module docs.
Reconcile plan, backlog, alignment register, and E5.M3 module snapshot.
2026-05-31 19:03:03 -04:00
VinPropane e6debc2968 NEO-109: Add kickoff implementation plan.
Documents comment-only encounter_start, encounter_complete, and
reward_attribution hook sites with kickoff decisions adopted.
2026-05-31 19:01:28 -04:00
VinPropane 25f3714554 NEO-108: Address code review findings for encounter-progress GET.
Add BuildSnapshot invariant tests, whitespace 404, idempotent second GET,
grant-order assertions; dedupe MapRow progress lookup; strike review items.
2026-05-31 18:39:52 -04:00
VinPropane ebb27aed2d NEO-108: Add code review for encounter-progress GET. 2026-05-31 18:38:31 -04:00
VinPropane 07ebb9efb8 NEO-108: Add Bruno smokes and document encounter-progress GET.
Bruno folder covers inactive default and three-NPC defeat spine; README and
E5.M3 docs mark E5M3-08 landed with plan reconciliation.
2026-05-31 18:37:43 -04:00
VinPropane 16018586b7 NEO-108: Add kickoff implementation plan for encounter-progress GET.
Documents HTTP projection from progress, completion, and event stores,
Bruno defeat spine, and adopted grant-summary source from kickoff.
2026-05-31 18:35:42 -04:00
VinPropane f51617f8b5 NEO-107: Address code review findings for event store persistence.
Update E5.M3 module summary and NEO-105 snapshot, fix store test AAA
layout, add empty encounter id fail-closed test, strike through review items.
2026-05-31 18:27:28 -04:00
VinPropane 29217c0fa0 NEO-107: Add code review for EncounterCompleteEvent persistence. 2026-05-31 18:26:51 -04:00
VinPropane 555c3235ff NEO-107: Reconcile plan and module docs for event persistence.
Mark E5M3-09 acceptance criteria complete and cross-link E7.M2 consumer
hook anchor across backlog, alignment register, and module snapshots.
2026-05-31 18:26:13 -04:00
VinPropane 986cf55e73 NEO-107: Add kickoff implementation plan for EncounterCompleteEvent persistence. 2026-05-31 18:22:57 -04:00
VinPropane 9c74933e6e NEO-106: Address code review findings for combat encounter wiring. 2026-05-31 18:10:41 -04:00
VinPropane a7b835290c NEO-106: Add code review for combat encounter wiring. 2026-05-31 18:09:20 -04:00
VinPropane 8306f92554 NEO-106: Document combat encounter wiring and update E5.M3 docs. 2026-05-31 18:08:29 -04:00
VinPropane fc09808482 NEO-106: Add kickoff implementation plan for combat encounter wiring. 2026-05-31 18:05:42 -04:00
VinPropane cbb6f137fd NEO-105: Address code review findings for encounter completion.
Add apply-phase rollback test, E9.M1 deny hook comment, inventory
reason passthrough, and tighten idempotent replay assertions.
2026-05-31 17:02:32 -04:00
VinPropane 1a74fbda54 NEO-105: Add code review for encounter completion grants. 2026-05-31 16:59:46 -04:00
VinPropane 009fedf65e NEO-105: Document encounter completion grants and update E5.M3 docs. 2026-05-31 16:57:54 -04:00
VinPropane b5306aa933 NEO-105: Add kickoff implementation plan for encounter completion grants. 2026-05-31 16:55:22 -04:00
VinPropane 91f74b7d6e NEO-104: Address code review findings for encounter stores.
Normalize encounter ids in IsAllRequiredTargetsDefeated, document TryActivate
completion gating, lock IsCompleted reads, add operations tests, and update
plan and review doc.
2026-05-31 16:37:22 -04:00
VinPropane 87dff6e3f4 NEO-104: Add code review for encounter progress stores. 2026-05-31 16:36:42 -04:00
VinPropane aaccbbbcaf NEO-104: Add encounter progress and completion stores.
In-memory IEncounterProgressStore and IEncounterCompletionStore with
EncounterProgressOperations for activation, defeat tracking, and
all-targets-defeated checks; unit tests and docs.
2026-05-31 16:18:56 -04:00
VinPropane 727ce4774a NEO-104: Add kickoff implementation plan for encounter stores. 2026-05-31 16:16:03 -04:00
VinPropane e4e75f5dc7 NEO-103: Address code review follow-ups.
Mark E5M3-04 landed in module Summary, assert fixedGrants order in
C# test, add Bruno ordinal comment, strike through review items.
2026-05-31 15:43:37 -04:00
VinPropane 573c42add7 NEO-103: Add code review for encounter-definitions GET. 2026-05-31 15:41:49 -04:00
VinPropane 935e8d5f16 NEO-103: Document encounter-definitions route and mark E5M3-04 landed.
Update server README, module snapshot, alignment register, backlog,
and implementation plan reconciliation.
2026-05-31 15:40:12 -04:00
VinPropane 62e6bfdf0a NEO-103: Add implementation plan for encounter-definitions GET.
Kickoff clarifications adopt nested rewardTable summary, nested
completionCriteria shape, and skip manual QA (server-only).
2026-05-31 15:38:53 -04:00
VinPropane ca0b1f8e30 NEO-102: tidy review doc documentation-checked row after follow-up 2026-05-31 00:40:39 -04:00
VinPropane 5229c17598 NEO-102: address code review — sync module register + README id lookup note 2026-05-31 00:40:37 -04:00
VinPropane fa31154d4c NEO-102: Add code review for encounter/reward registries + DI. 2026-05-31 00:39:18 -04:00
VinPropane 734876cde9 NEO-102: add encounter and reward-table definition registries + DI
Thin IEncounterDefinitionRegistry / IRewardTableDefinitionRegistry adapters
over NEO-101 catalogs with TryNormalizeKnown, DI registration, and 18 AAA tests.
2026-05-31 00:38:38 -04:00
VinPropane 93eca821d7 NEO-102: add implementation plan for encounter/reward registries + DI 2026-05-31 00:33:45 -04:00
VinPropane 21749e7977 NEO-101: Address code review — schema tests, module snapshot, host boot.
Adds row-level JsonSchema violation tests for both loaders, symmetric empty reward-tables host boot test, and E5.M3 implementation snapshot; review doc marked Done.
2026-05-31 00:08:41 -04:00
VinPropane 5e26143fbd NEO-101: Add code review for encounter/reward catalog load. 2026-05-31 00:08:01 -04:00
VinPropane f921095fb0 NEO-101: Fail-fast encounter and reward-table catalog load at startup.
Adds Game/Encounters loaders mirroring validate_content.py E5M3 gates, DI registration with reward-tables-before-encounters load order, 19 AAA tests, and server README catalog sections.
2026-05-31 00:05:57 -04:00
VinPropane 06c58998cc NEO-101: Add E5M3-02 encounter/reward catalog load kickoff plan.
Documents fail-fast server loader scope, CI-parity gates, and loader plus host boot test approach after kickoff clarifications.
2026-05-31 00:03:00 -04:00
VinPropane ebf385d658 NEO-100: Address code review — register sync and grant dedupe
Update E5.M3 dependency register note for landed catalog, reject duplicate
fixedGrants itemId in CI, add uniqueItems on requiredNpcInstanceIds, and
record review follow-ups as Done.
2026-05-30 19:38:33 -04:00
VinPropane 01b7e23c5e NEO-100: Add code review for encounter + reward catalog CI 2026-05-30 19:36:14 -04:00
VinPropane ee5e1a0caf NEO-100: Add encounter and reward-table catalogs with CI validation
Ship frozen prototype_combat_pocket spine (schemas, JSON catalogs, validate_content
gates) and update E5.M3, CT.M1, and alignment docs for E5M3-01 completion.
2026-05-30 19:35:02 -04:00
VinPropane 4f16c848db NEO-100: Kickoff plan for encounter + reward catalog schemas and CI
Document frozen prototype_combat_pocket spine, schema shapes, validate_content
gates, and file lists before E5M3-01 implementation.
2026-05-30 19:33:27 -04:00
VinPropane d7c3ede5a7 chore: Epic 5 stable slice anchors and doc cluster alignment
Add explicit HTML slice anchors to epic_05, restore deep links across E5
backlogs and plans, fix E5M2 NEO-98 resolve vocabulary and E5.M3 Linear row,
and record review follow-up as Done.
2026-05-30 19:25:56 -04:00
VinPropane db9ddb9fe0 chore: Decompose E5.M3 prototype backlog (NEO-100–NEO-111)
Epic 5 Slice 3 encounter + reward routing: backlog doc, module/epic/register
updates, and Linear issues for one combat-pocket clear with idempotent loot.
2026-05-30 18:38:18 -04:00
VinPropane b77b7f8fbb NEO-98: Address follow-up review doc findings.
Update E5.M2 module freeze, plan scope reconciliation, alignment
register, client README melee row, and strike-through follow-up review.
2026-05-30 18:02:55 -04:00
VinPropane bc1357cf94 NEO-98: add follow-up code review for capstone integration fixes 2026-05-30 18:01:52 -04:00