Commit Graph

861 Commits (44e0056b37f122d04a369364ea5d55fada3e5ff7)

Author SHA1 Message Date
VinPropane 44e0056b37 NEO-78: Add GET /game/world/ability-definitions HTTP projection.
Expose versioned read-only ability catalog via IAbilityDefinitionRegistry,
with integration tests, Bruno folder, and docs alignment.
2026-05-24 22:22:48 -04:00
VinPropane 374b4b5a53 NEO-78: Add kickoff implementation plan for ability-definitions GET. 2026-05-24 22:20:39 -04:00
VinPropane 83d1dde4ea
Merge pull request #112 from ViPro-Technologies/NEO-79-iabilitydefinitionregistry-di
NEO-79: IAbilityDefinitionRegistry + DI and hotbar/cast migration
2026-05-24 22:17:30 -04:00
VinPropane 603cc525ad NEO-79: Fix Bruno cast unknown-ability test setup.
Bind slot 0 in pre-request so the cast route reaches unknown_ability
instead of slot_unbound when run before other ability-cast requests.
2026-05-24 22:11:01 -04:00
VinPropane 0e5bbbff2e NEO-79: Address code review — docs alignment, null-safe TryNormalizeKnown.
Update E5.M1 module page, dependency register, and alignment table for
NEO-79 landed; reconcile plan Bruno note; strike through review findings.
2026-05-24 22:07:37 -04:00
VinPropane 73d7708c7c NEO-79: Add code review for ability registry DI story. 2026-05-24 22:06:26 -04:00
VinPropane b9644a0453 NEO-79: Reconcile plan and E5M1 backlog for ability registry DI. 2026-05-24 22:05:27 -04:00
VinPropane bd4912004a NEO-79: Add IAbilityDefinitionRegistry and migrate hotbar/cast validation.
Injectable registry backed by AbilityDefinitionCatalog; PrototypeAbilityRegistry
keeps id constants only. Bruno smoke for unknown_ability deny paths.
2026-05-24 22:05:27 -04:00
VinPropane 8bafec9d79 NEO-79: Add kickoff implementation plan for ability registry + DI. 2026-05-24 22:03:12 -04:00
VinPropane 91fab3e398
Merge pull request #111 from ViPro-Technologies/NEO-77-e5m1-server-ability-catalog-load
NEO-77: E5M1-02 server ability catalog load (fail-fast)
2026-05-24 21:58:16 -04:00
VinPropane fd2ffee089 NEO-77: Address code review — Bruno folder, E5M1 gate test, docs.
Add ability-catalog folder.bru, extra-id E5M1 gate AAA test, dependency
register NEO-77 note, and strike through resolved review suggestions.
2026-05-24 21:44:02 -04:00
VinPropane 42ea2598c3 NEO-77: Add code review for E5M1-02 server ability catalog load. 2026-05-24 21:42:44 -04:00
VinPropane 7c2697e4cc NEO-77: Reconcile plan and module docs for E5M1-02 server load. 2026-05-24 21:40:58 -04:00
VinPropane 619089ca40 NEO-77: Add fail-fast ability catalog load at server startup.
Load content/abilities/*_abilities.json with CI-parity validation, E5M1
four-id gate, DI registration, AAA loader/host tests, and Bruno health check.
2026-05-24 21:40:58 -04:00
VinPropane 07444e45ce NEO-77: Add E5M1-02 server ability catalog load kickoff plan. 2026-05-24 21:34:36 -04:00
VinPropane 37b14f9fe3
Merge pull request #110 from ViPro-Technologies/NEO-76-e5m1-prototype-backlog
NEO-76: E5M1-01 prototype AbilityDef catalog + schemas + CI
2026-05-24 21:31:13 -04:00
VinPropane 866f962583 NEO-76: Fix review findings — duplicate ability row and docs.
Remove stray prototype_pulse from catalog; restore Epic 5 table layout,
align E5.M1 In Progress status, and close out code review doc.
2026-05-24 21:17:07 -04:00
VinPropane 6a71e9b6aa NEO-76: add code review for ability catalog + CI branch. 2026-05-24 21:09:42 -04:00
VinPropane 9b11a521d8 NEO-76: Add prototype ability catalog, schema, and CI gates.
Freeze four AbilityDef rows in content with validate_content E5M1
allowlist; document freeze in E5.M1, content README, and CT.M1.
2026-05-24 21:08:16 -04:00
VinPropane bafaacb963 NEO-76: Add E5M1-01 implementation plan for ability catalog + CI.
Lock four frozen AbilityDef rows, schema shape, validate_content gates,
and adopted prototype stat freeze before NEO-77 server load.
2026-05-24 21:06:32 -04:00
VinPropane 510d71113b NEO-76: decompose E5.M1 prototype backlog (NEO-76–NEO-86, NEO-44).
Add full-stack Epic 5 Slice 1 story backlog with Linear issues, blockedBy
graph, and module/epic register cross-links.
2026-05-24 21:02:07 -04:00
VinPropane 7d8bbc722f
Merge pull request #109 from ViPro-Technologies/NEO-75-e3-playable-gather-refine-make-loop
NEO-75: Playable gather→refine→make loop in client (E3S5-04)
2026-05-24 20:52:37 -04:00
VinPropane a38ab660b4 NEO-75: fix gdlint/gdformat on economy HUD node paths
Resolve economy HUD @onready paths via EconomyHudSection.get_node
so gdlint max-line-length and gdformat both pass pre-push.
2026-05-24 20:41:01 -04:00
VinPropane 7695527a79 NEO-75: address code review doc consistency findings
Update E3.M1/M3 status rows, epic Slice 5 completion note, README HUD
paths, E3S5-04 collapse AC, and strike through resolved review items.
2026-05-24 20:35:32 -04:00
VinPropane cf0ef2d23e NEO-75: add code review for capstone integration branch 2026-05-24 20:34:36 -04:00
VinPropane 977bcc3b27 NEO-75: capstone manual QA, README loop docs, alignment
Add zero-Bruno gather→refine→make checklist, end-to-end README section,
and mark Epic 3 Slice 5 client capstone complete in module docs.
2026-05-24 20:33:51 -04:00
VinPropane 025d6e529d NEO-75: add collapsible economy HUD section
Reparent inventory, skills, and craft panel under EconomyHudSection
with an Economy HUD toggle; update main.gd node paths and GdUnit tests.
2026-05-24 20:33:48 -04:00
VinPropane fbae3148d2 NEO-75: add capstone implementation plan (kickoff)
Document gather→refine→make capstone scope, HUD collapse, manual QA
script, and module alignment per kickoff clarifications.
2026-05-24 20:32:18 -04:00
VinPropane 6867ab4e55
Merge pull request #108 from ViPro-Technologies/NEO-74-e3m2-client-craft-ui-recipe-list
NEO-74: Client craft UI + recipe list (E3S5-03)
2026-05-24 20:29:48 -04:00
VinPropane a8cedcbd64 NEO-74: Repopulate recipe panel when item defs load.
Run craft panel refresh before inventory-error guard in
_on_item_definitions_ready so display names resolve even when
inventory GET failed first.
2026-05-24 20:21:37 -04:00
VinPropane d6d95ec438 NEO-74: Fix craft busy flag ordering; drop unused recipe helpers.
Set _busy before HTTP request so sync mock completion cannot leave the
client stuck busy; remove uncalled recipes_snapshot/recipe_by_id; add
GdUnit guard for is_busy after sync response.
2026-05-24 20:14:05 -04:00
VinPropane f939132f38 NEO-74: Fix recipe client HTTP error test signal capture.
Use got-array lambda pattern; GDScript cannot assign outer locals from
signal callbacks, which left failed_reason empty in CI GdUnit runs.
2026-05-24 20:05:22 -04:00
VinPropane 501834279e NEO-74: Apply gdformat to main and craft refresh test. 2026-05-24 20:02:47 -04:00
VinPropane 1533687aa8 NEO-74: Fix gdlint class-definitions-order in craft panel. 2026-05-24 20:02:26 -04:00
VinPropane 2fec42f8f6 NEO-74: Address code review — recipe sync HUD and test uids.
Wire recipes_sync_failed to CraftFeedbackLabel, remove unused _scroll
binding, add GdUnit .uid companions, extend recipe client HTTP error
test, strike through review items.
2026-05-24 19:59:00 -04:00
VinPropane 9b6abf093b NEO-74: add code review for client craft UI branch. 2026-05-24 19:57:28 -04:00
VinPropane c16b610468 NEO-74: Implement client craft UI, recipe list, and tests.
Add recipe-definitions and craft HTTP clients, scrollable recipe panel with
Craft buttons, CraftFeedbackLabel, refine skill HUD row, GdUnit coverage,
manual QA, and plan/module doc reconciliation.
2026-05-24 19:56:38 -04:00
VinPropane dff58adfe8 NEO-74: Add kickoff implementation plan for client craft UI.
Documents E3S5-03 scope, kickoff HUD decisions, and file/test targets
for recipe list, craft POST client, and refine XP visibility.
2026-05-24 19:54:10 -04:00
VinPropane 8e04cfc67b
Merge pull request #107 from ViPro-Technologies/NEO-73-e3m1-client-gather-feedback-on-interact
NEO-73: Client gather feedback on interact (E3S5-02)
2026-05-24 19:52:09 -04:00
VinPropane 07ca427f2f NEO-73: preserve gather finalize across coalesced terminal POST.
Use awaiting-inventory flag so R-then-E still paints GatherFeedbackLabel
after inventory sync; only clear session on true orphans (Bugbot #107).
2026-05-24 19:42:39 -04:00
VinPropane d0622701eb NEO-73: clear orphaned gather pending on coalesced interact.
Track pending gather interactable id; drop flag when a different
interact completes (Bugbot PR #107). Add GdUnit coalescing test.
2026-05-24 19:24:00 -04:00
VinPropane 8de08a67a8 NEO-73: fix gdlint max-line-length for pre-push hook. 2026-05-24 19:14:27 -04:00
VinPropane d6a80ed775 NEO-73: note review follow-up commit hash in review doc. 2026-05-24 19:09:38 -04:00
VinPropane 434226a069 NEO-73: address code review follow-ups.
Emit interaction_request_failed to clear stale gather pending flag;
add deny/HTTP failure tests; update alignment docs and review file.
2026-05-24 19:09:36 -04:00
VinPropane 6cd2c0cdda NEO-73: add code review for client gather feedback branch. 2026-05-24 19:08:26 -04:00
VinPropane b52428e898 NEO-73: track Godot uid companions for new GdUnit tests. 2026-05-24 19:07:26 -04:00
VinPropane adca7befe0 NEO-73: add manual QA and reconcile implementation plan.
Document gather HUD behavior in client README; mark E3S5-02 AC complete.
2026-05-24 19:07:22 -04:00
VinPropane aa013d4be7 NEO-73: wire client gather feedback on resource interact.
Add skill progression client, nearest-node R picker, interaction
result signal, GatherFeedbackLabel and SkillProgressionLabel HUD.
2026-05-24 19:07:19 -04:00
VinPropane 4682db48c4 NEO-73: add implementation plan for client gather feedback.
Kickoff clarifications: nearest in-range resource node on R, inventory
delta on GatherFeedbackLabel, SkillProgressionLabel for salvage XP.
2026-05-24 19:05:23 -04:00
VinPropane cdde994c7e
Merge pull request #106 from ViPro-Technologies/NEO-72-client-inventory-snapshot-hud
NEO-72: Client inventory snapshot HUD (E3S5-01)
2026-05-24 18:58:25 -04:00