Commit Graph

125 Commits (4379e421063d15c559cedde1be98209d16e769f2)

Author SHA1 Message Date
VinPropane 4379e42106 NEO-110: fix gdlint line length and gdformat for CI. 2026-05-31 19:43:49 -04:00
VinPropane c8d475670c NEO-110: address review — loot label helper, defs re-paint, tests. 2026-05-31 19:38:07 -04:00
VinPropane d81d19b859 NEO-110: encounter progress client, HUD labels, and GdUnit tests. 2026-05-31 19:35:54 -04:00
VinPropane b4b7fddf3a NEO-97: refresh NPC HUD labels when combat poll stops
Re-render NpcStateLabel and TelegraphLabel when combat-active gate
turns off (e.g. Esc clear without aggro) so stale rows are cleared.
2026-05-29 22:10:42 -04:00
VinPropane bd1dd6b01f NEO-97: fix gdlint and gdformat CI failures
Wrap long lines, restore signal-before-const order in craft_recipe_panel,
and run gdformat on flagged HUD files.
2026-05-29 21:42:49 -04:00
VinPropane d86ff337bc NEO-97: add GdUnit test script uid companions 2026-05-29 21:09:28 -04:00
VinPropane 55bb8d987a NEO-97: fix duplicate npc_row parse error in runtime client
GDScript cannot define instance and static npc_row with the same name;
helpers and tests now call npc_row_in_snapshot for static lookup.
2026-05-29 21:09:25 -04:00
VinPropane fd0b6d3db8 NEO-97: address code review — helpers, tests, doc fixes
Extract npc_combat_hud_helpers.gd for shared HUD formatters; hide telegraph
at zero windup; surface runtime sync errors; npc_row last-snapshot fallback;
expand GdUnit coverage; align E5.M2 module docs and strike review findings.
2026-05-29 21:07:02 -04:00
VinPropane cfda0acd9a NEO-97: add Godot telegraph HUD and NPC runtime poll clients
Wire npc-runtime-snapshot and combat-health GET clients with combat-active
~1 Hz polling, interpolated telegraph countdown, and PlayerCombatHp/NpcState/
Telegraph HUD labels; includes GdUnit tests, manual QA, and doc updates.
2026-05-29 20:59:11 -04:00
VinPropane bbdebcd724 NEO-99: Fix Bugbot dead code and GdUnit CI failures
Remove unused ENVIRONMENT preload (environment loads via main.tscn). Update
combat_targets_client_test for three prototype_npc_* rows; auto_free GLB
instances in visual catalog tests to avoid orphan exit code 101.
2026-05-29 20:26:44 -04:00
VinPropane ab7033e85a NEO-99: update GdUnit tests for district visuals and prototype_npc_* targeting.
Add visual catalog transform tests and refresh target selection, marker,
and combat client suites for PrototypeNpcRegistry ids from NEO-91.
2026-05-29 20:03:47 -04:00
VinPropane 9fa0fbef4b chore: accumulate trackpad pan delta before camera zoom steps.
Mac trackpads emit many pan events per gesture; stepping one band per
event jumped across all zoom levels. Accumulate delta with a threshold,
cap one step per event, and add a 150 ms cooldown between trackpad steps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 23:24:30 -04:00
VinPropane 90e6cfea28 chore: add macOS trackpad scroll and pinch camera zoom.
Map InputEventPanGesture and InputEventMagnifyGesture to the existing
discrete zoom bands; document in client README. Unrelated to NEO-93.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 23:21:00 -04:00
VinPropane 75d11bd3cd
Merge branch 'main' into NEO-86-playable-combat-capstone 2026-05-25 14:05:42 -04:00
VinPropane 3af98fa208 NEO-86: Apply gdformat to gig feedback refresh test. 2026-05-25 14:04:49 -04:00
VinPropane 178097c603 NEO-86: Track GdUnit test script uid companions. 2026-05-25 14:04:31 -04:00
VinPropane 8d4c048bbe NEO-86: Address code review test gaps and doc alignment.
Promote E5.M1 to Ready in alignment register, fix NEO-85 README link,
add schema-mismatch and deny-path GdUnit cases; strike review suggestions.
2026-05-25 14:01:54 -04:00
VinPropane 01741fed07 NEO-86: Wire gig progression client and defeat HUD refresh.
Adds GigProgressionClient, GigXpLabel in economy HUD, and event-driven
GET refresh when cast accept carries targetDefeated; GdUnit coverage.
2026-05-25 13:59:29 -04:00
VinPropane 652a6459a8 NEO-85: gdformat prototype target markers test. 2026-05-25 13:43:07 -04:00
VinPropane f5ff0b8dc3 NEO-85: Drop dead emission props on unshaded dummy highlight.
Bugbot: emission_* on SHADING_MODE_UNSHADED materials has no visible effect
without glow; lock highlight is albedo-only. Add GdUnit coverage for albedo
brightening without emission.
2026-05-25 13:42:33 -04:00
VinPropane 2316303ad7 NEO-85: gdformat position authority client test signal asserts.
Pre-push gdformat --check failed on long await assert_signal lines.
2026-05-25 13:35:45 -04:00
VinPropane 9c8e8c2109 NEO-85: Wrap craft feedback signal assert for gdlint line length.
Pre-push gdlint rejects the long await assert_signal line added in the
GdUnit signal-assertion fix.
2026-05-25 13:34:19 -04:00
VinPropane b90fedf7a8 NEO-85: Fix flaky GdUnit signal assertions in full suite runs.
Await async assert_signal calls and match emitted payload args with any()
where tests only care that the signal fired, preventing orphaned 2s timeouts
that surfaced as false failures in later suites (e.g. hotbar_loadout_client_test).
2026-05-25 13:32:51 -04:00
VinPropane bf9fd84b1c NEO-85: Apply gdformat to client scripts and tests. 2026-05-25 13:26:22 -04:00
VinPropane 4d32d068dc NEO-85: Fix gdlint max line length in combat HP label render. 2026-05-25 13:26:09 -04:00
VinPropane 79b8a68364 NEO-85: Make combat dummies visible with labels and lock highlight.
Replace subtle mast markers with capsule bodies, Dummy α/β Label3D names,
and brighten the Tab-locked target; HUD hints point to orange/purple dummies.
2026-05-25 13:23:13 -04:00
VinPropane c8f6884ea0 NEO-85: Track GdUnit test script uid companions. 2026-05-25 13:22:17 -04:00
VinPropane 35ff76b532 NEO-85: Auto-bind pulse to slot 0 and show cast HUD errors.
Fresh hotbar starts empty so digit 1 was a silent no-op; bootstrap
prototype_pulse on first sync and surface empty-slot/send failures on CastFeedbackLabel.
2026-05-25 13:22:06 -04:00
VinPropane 504d3228dd NEO-85: Address code review doc sync and 404 test gap.
Update module dependency register and E5.M1 related-slices entry for
NEO-85 landed; add combat-targets HTTP 404 GdUnit case; strike review suggestions.
2026-05-25 13:17:47 -04:00
VinPropane 493e963a28 NEO-85: Wire client combat feedback and target HP HUD.
Parse combatResolution on cast accept, add combat-targets GET client,
CombatTargetHpLabel, and event-driven HP refresh on lock change and cast.
2026-05-25 13:15:59 -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 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 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 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 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 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 b52428e898 NEO-73: track Godot uid companions for new GdUnit tests. 2026-05-24 19:07:26 -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 68b9b9c8c8 NEO-72: satisfy gdlint/gdformat for pre-push hook.
Extract interact key routing helper to fix max-returns; wrap long lines and gdformat.
2026-05-24 18:50:10 -04:00
VinPropane c6af6f7c41 chore: track hotbar cast slot resolver Godot uid companions.
Companion files for scripts already on main from NEO-31; keeps uid:// refs stable.
2026-05-24 18:44:07 -04:00
VinPropane 5c9e1d3fc3 NEO-72: add GdUnit test script uid companions. 2026-05-24 18:43:52 -04:00
VinPropane e7a61a1b3f NEO-72: fix HTTP client header types and strengthen tests.
Use PackedStringArray for request_completed headers so handlers run;
assert inventory payload shape and display_name_for after sync per review.
2026-05-24 18:43:39 -04:00
VinPropane 751fea3db4 NEO-72: add client inventory snapshot HUD and HTTP clients.
Wire GET inventory + item-definitions into InventoryLabel with I-key refresh,
displayName labels, and GdUnit coverage for happy/error paths.
2026-05-24 18:41:24 -04:00