VinPropane
90fcd1b717
NEON-15: dispose shared NpgsqlDataSource on host shutdown
2026-04-08 21:42:33 -04:00
VinPropane
abffd29299
NEON-15: add implementation plan for NpgsqlDataSource shutdown
2026-04-08 21:16:50 -04:00
VinPropane
d77462012c
Merge pull request #31 from ViPro-Technologies/NEON-25-isometric-follow-camera
...
Neon 25 isometric follow camera
2026-04-08 00:08:53 -04:00
VinPropane
9f6297c46d
NEON-25: gdformat isometric_follow_camera.gd
2026-04-08 00:08:00 -04:00
VinPropane
387b61b577
NEON-25: fix gdlint (line length, class-definitions-order)
2026-04-08 00:05:55 -04:00
VinPropane
0a86215bc0
NEON-25: sync project.godot (GdUnit inspector pref; editor section order)
2026-04-07 23:58:47 -04:00
VinPropane
e96f70d889
NEON-25: follow-up from code review (missing target warn, docs, E1.M2 status)
2026-04-07 23:54:27 -04:00
VinPropane
f4b34316a6
NEON-25: add code review for isometric follow camera
2026-04-07 23:51:46 -04:00
VinPropane
4930fd89a6
NEON-25: isometric follow camera, CameraState, tests, and docs
2026-04-07 23:46:04 -04:00
VinPropane
262abb5f2e
NEON-29: register prototype district story in E1.M2 backlog
2026-04-07 23:38:55 -04:00
VinPropane
644bfc8c3d
NEON-25: lock low-controversy camera defaults in implementation plan
2026-04-07 23:34:20 -04:00
VinPropane
00c2c4520e
NEON-25: add implementation plan for isometric follow camera
2026-04-07 23:27:44 -04:00
VinPropane
b07f6980c6
Merge pull request #30 from ViPro-Technologies/chore/e1-m2-neon25-jira-table
...
chore: align E1.M2 Jira table with NEON-25 summary
2026-04-07 23:25:14 -04:00
VinPropane
09257b4cc3
chore: align E1.M2 Jira table with NEON-25 summary
2026-04-07 23:21:45 -04:00
VinPropane
d06e34b452
Merge pull request #29 from ViPro-Technologies/docs/e1-m2-camera-module
...
chore: expand E1.M2 module doc (Jira backlog, rotation policy)
2026-04-07 23:13:21 -04:00
VinPropane
2b00de309b
chore: expand E1.M2 module doc (Jira backlog, rotation policy)
...
- Link NEON-10/NEON-25–28 under parent NEON-1 in Summary and Jira backlog table
- Document mid-project-only yaw orbit compromise; post-release camera model settled
- Extend CameraState contract and slice/risk notes accordingly
2026-04-07 23:12:48 -04:00
VinPropane
2a5d9fa900
Merge pull request #28 from ViPro-Technologies/chore/jira-reorganization
...
chore: document Jira epic→story + labels (no Feature issues)
2026-04-07 00:21:17 -04:00
VinPropane
99b1025c8b
Merge branch 'main' into chore/jira-reorganization
2026-04-07 00:20:54 -04:00
VinPropane
175c6e0500
chore: document Jira epic→story + labels (no Feature issues)
...
Module/slice grouping below epics is labels on stories only; Feature
work items are not used. Cross-link from jira-git-naming, story kickoff,
and documentation alignment table.
2026-04-07 00:20:01 -04:00
VinPropane
839b8a7c31
Merge pull request #27 from ViPro-Technologies/chore/jira-reorganization
...
chore: migrate Jira references from NS-* to NEON-* in docs and rules
2026-04-07 00:17:18 -04:00
VinPropane
fa19ab7337
chore: migrate Jira references from NS-* to NEON-* in docs and rules
...
Rename implementation plans and dated reviews to NEON issue numbers per
Atlassian project re-key. Update browse URLs, cross-links, module docs,
client/server READMEs, and Cursor rules (project key NEON).
2026-04-07 00:15:06 -04:00
VinPropane
f3b4eb1c2c
Merge pull request #26 from ViPro-Technologies/NS-21-gdscript-unit-testing
...
NS-21 gdscript unit testing
2026-04-06 22:47:49 -04:00
VinPropane
da72ea8264
NS-21: fail CI if Godot logs SCRIPT ERROR during GdUnit discovery
...
GdUnit exits 0 when broken suites are skipped; grep log for parse/load errors.
2026-04-06 22:34:43 -04:00
VinPropane
4f46fa580b
NS-21: fix ground_pick_test const — preload not load (Godot 4.6)
...
load() is not a constant expression; suite failed parse and was skipped in CI
while gdlint passed. Restores 11 tests across 3 suites.
2026-04-06 22:32:05 -04:00
VinPropane
1f70bfb80a
NS-21: track GdUnit4 bin/ scripts (unignore vs root bin/ rule)
...
Root .gitignore bin/ matched client/addons/gdUnit4/bin/, so CI never had
GdUnitCmdTool.gd. Negate that path; add the four bin files.
2026-04-06 22:29:08 -04:00
VinPropane
7b2c35f57c
NS-21: fix GdUnit CI path casing; preflight and README note
...
Linux res:// paths are case-sensitive; gdunit4 breaks, gdUnit4 is correct.
2026-04-06 22:27:36 -04:00
VinPropane
f09517af6a
NS-21: fix gdlint in test suites (load-once, line length, const name)
2026-04-06 22:25:23 -04:00
VinPropane
791c7dad1b
Merge branch 'main' into NS-21-gdscript-unit-testing
2026-04-06 22:22:16 -04:00
VinPropane
449b58b40a
NS-21: merge main into project.godot (Jolt physics, MSAA, GdUnit plugin)
2026-04-06 22:21:20 -04:00
VinPropane
7b7f37f92b
NS-21: sync project.godot order, C# api uid; ignore GdUnitRunner.cfg
2026-04-06 22:19:50 -04:00
VinPropane
055f299e5f
NS-21: import Godot project in CI before running GdUnit
2026-04-06 22:08:48 -04:00
VinPropane
8113e48cc8
NS-21: add GdUnit4, client tests, and CI headless run
...
- Vendor gdUnit4 v6.1.2 under client/addons; enable plugin in project.godot
- Tests: player.gd API, position authority HTTP flow (Node transport double),
ground_pick walkable ancestry; test double script for injection
- position_authority_client: _create_http_request factory, Node-typed _http,
emit move_rejected unknown for empty/missing reasonCode strings
- gdscript workflow: lint scripts+test, format check, cache Godot 4.6, GdUnit CLI
- README testing section; gitignore client/reports; testing-expectations Godot harness
2026-04-06 22:08:37 -04:00
VinPropane
2abde4c940
Merge pull request #25 from ViPro-Technologies/NS-24-idle-vibration-fix
...
NS-24: Eliminate idle jitter and movement QA bumps (Godot client)
2026-04-06 00:44:05 -04:00
VinPropane
72897a4924
NS-24: Fix GDScript lint (line length, gdlint, gdformat)
...
- Shorten file-header and doc comments to satisfy max-line-length.
- Rename bump collision preload const to BUMP_COLLISION_CONSTS_SCRIPT.
- Refactor idle floor-angle and walk-step logic for return/format rules.
2026-04-06 00:41:32 -04:00
VinPropane
7b11d4e238
NS-24: Eliminate idle jitter and movement QA bumps (Godot client)
...
Physics: Jolt 3D; physics_interpolation off; 120 TPS. CharacterBody3D idle
path uses dual floor_max_angle, rim/straddle and ridged-contact handling,
rim settle and random-floor-bump lip/wall escape, floor_block_on_wall,
NavigationAgent3D avoidance off, per-node interp off. No global_transform in
_process (avoid render/physics ghosting).
QA geometry: random_floor_bumps.gd (load from main.gd); each bump on its own
StaticBody3D under NavigationRegion3D; random_floor_bump_collision_constants.gd
for collider fudge and RANDOM_FLOOR_BUMP_MESH_GROUP.
Scene: player safe_margin and mesh Y lift; MoveRejectPedestal / MoveRejectFarPad
renamed from NS19*; Mat_player_capsule without polygon_offset (per follow-up).
Docs: NS-24 plan + resolution, client/README manual steps, code review
2026-04-05-NS-24.md; server/README bump height note. Code/scene identifiers
avoid ticket-based ns19_* naming.
2026-04-06 00:32:41 -04:00
VinPropane
a02e54da2d
NS-21: fold test CI into gdscript.yml; document test-with-scripts policy
2026-04-05 21:21:58 -04:00
VinPropane
6ff0c77da5
NS-21: add implementation plan for GDScript unit testing
2026-04-05 21:03:12 -04:00
VinPropane
3283f6d04c
Merge pull request #24 from ViPro-Technologies/chore/e1m1-ns10-docs-alignment
...
chore: align E1.M1 decomposition with NS-10 Done (Ready)
2026-04-05 15:17:15 -04:00
VinPropane
43b58a8bc7
chore: align E1.M1 decomposition with NS-10 Done (Ready)
2026-04-05 15:16:16 -04:00
VinPropane
a39f9ac4c9
Merge pull request #23 from ViPro-Technologies/NS-23-client-path-follow
...
NS-23 client path follow
2026-04-05 15:06:59 -04:00
VinPropane
f412da8f44
docs: Mark NS-23 code review blocking items and suggestions done
2026-04-05 15:04:39 -04:00
VinPropane
d22d252b59
docs: Link NS-24 for idle jitter (plan + client README)
2026-04-05 15:04:09 -04:00
VinPropane
8956545d3c
NS-23: Document idle skip vs is_on_floor / move_and_slide
2026-04-05 15:02:13 -04:00
VinPropane
8fe70a75de
NS-23: Comment DESCEND_GOAL_Y_MARGIN (surface Y vs mid-capsule)
2026-04-05 15:01:29 -04:00
VinPropane
14a6813985
NS-23: Document movement tradeoff — no required obstacle auto-nav
...
Align plan, client/server README, E1.M1 snapshot, and code review note with
the chosen design: descend bypass favors smooth stepped surfaces; multi-click
around obstacles is OK. NS-24 remains for idle jitter.
2026-04-05 14:56:52 -04:00
VinPropane
2891a4553a
docs: NS-23 branch code review (2026-04-05)
2026-04-05 14:52:08 -04:00
VinPropane
39b4760270
NS-23: Skip move_and_slide when idle on floor (stop rest jitter)
...
Zero-velocity move_and_slide each physics tick still reapplies floor snap and
collision, which often reads as vibration. If there is no walk goal (or we
just arrived), velocity is zero, and is_on_floor(), return early.
2026-04-05 02:06:06 -04:00
VinPropane
6c73557c3b
NS-23: Restore player.gd from e1beb82 (bumps ok, obstacle bee-line)
...
User-requested rollback to the pre-72eef09 behavior: skip nav waypoints when
auth goal.y is below body (floor pick vs mid-capsule), steering xz straight at
the goal — good for bump departure, bad for gray-box detours. Revert
floor_snap_length to 0.28 to match that snapshot.
2026-04-05 02:02:57 -04:00
VinPropane
ee6c4b2718
NS-23: Simplify path-follow — drop bump/step-down heuristics
...
Restore a straight Godot nav pattern: steer toward get_next_path_position until
finish or final approach, then toward goal; horizontal-only arrival by xz.
Removes footprint rays, bump-step group, and step-off vy layering that fought
the engine. Slightly raise Player floor_snap_length for small ledges.
2026-04-05 02:01:17 -04:00
VinPropane
25d21c0011
NS-23: Remove bump rim velocity unstick (fixes edge vibration)
...
Per-frame wall-normal + goal boosts fought a flipping wall normal and capped
re-vectoring, causing back-and-forth jitter. Drop _apply_bump_rim_wall_unstick
and related helpers/constants; keep direct step-down + footprint logic only.
STEP_OFF_DESCEND_SPEED 2.2 → 1.75.
2026-04-05 01:58:57 -04:00