Rebase upstream and restore Pathfinder signature safety - #2
Merged
Conversation
…nfigurable. - build(devcontainer): Install netcat-traditional package - feat(config): Make database hostname configurable via DB_HOST env var
…configuration to runtime configuration for the development and test environments. The compile-time `dev` and `test` configurations now default the database hostname to `localhost`. - fix(config): Set default database hostname to `localhost` in `dev.exs` and `test.exs` - fix(config): Add `DB_HOST` environment variable override for dev and test environments to `runtime.exs`
LiveView event handlers were trusting client-supplied record IDs without verifying they belong to the user's current map/user scope. A logged-in user could push another map's record UUID over the LV socket and act on it. Affected handlers: - cancel-subscription / edit-subscription / update_subscription (cancel or upgrade any map's paid subscription by ID) - characters_live.ex "delete" (soft-delete any user's character and null their user_id) - cancel_ping (cross-map rally-ping cancellation broadcast) - deleteSystemComment (cross-map comment deletion) - update_passage_mass (cross-map wormhole passage mass corruption) - updateCharacterTracking (untrack another user's character on a shared map) Also fixes a related numeric-trust bug in subscribe/update_subscription where `period`, `characters_limit`, and `hubs_limit` were parsed without bounds, allowing `period: "-1"` to produce a back-dated subscription with a negative price. Adds WandererAppWeb.HandlerAuth with focused helpers each handler now routes through, plus 26 regression tests covering both the IDOR auth checks and the bounded-int parsers.
…eat-colorblinded Added theme for colorblinded and large theme
fix: authorize client-supplied IDs in LiveView handlers (IDOR audit)
…iner Fix: Update containers to successfully run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
wanderer-industries/wanderer@b7ddbc48(v1.101.7 line)PATHFINDER_PARITY.mdHistory shape
The custom commits were replayed on upstream. A final content-neutral
oursmerge records the old forkmainas an ancestor so GitHub can compare and merge the PR cleanly without reintroducing the superseded pre-rebase versions. PR status is now mergeable/clean.Signature paste safety
Pathfinder checked the active signature table against the active character's current EVE location before writing. Wanderer previously applied valid pasted signatures immediately to the selected map system.
This PR now parses first, then warns before mutation when the selected system differs from the best available active-character location. It prefers the followed character, then the configured main character, then one unambiguous online owned character. The warning identifies both systems and offers:
It deliberately does not guess when ESI location is stale/unavailable or multiple owned online characters make the source ambiguous. A pending paste is also refused if selection changes before confirmation.
Conflict resolution
The rebase conflicted in three mapper SCSS files. Resolution kept upstream's newer accessibility/theme-variable architecture for map edges and nodes, while preserving the custom pilot-intel styles and restoring upstream's
SmallTextrule.Validation
npx tsc --noEmityarn test --runInBand: 4 suites, 22 tests passedyarn build: production Vite build passedmix compilewith Elixir 1.17 / OTP 26: passedmix compile --warnings-as-errors: blocked only by pre-existing upstream warnings, documented here rather than laundering them into fake cleanlinessb7ddbc48and old forkmain, plus all five rebased custom commits and this feature commitPathfinder parity findings
The full matrix is in
PATHFINDER_PARITY.md. Highest-value remaining gaps found:Lower-value visual archaeology such as grid magnetizing and bubbled endpoints should wait for actual operator demand.