Repository navigation
WQ-0383: /next becomes the default dashboard; classic moves to /legacy; v2 Stocks tab - #29
Merged
Merged
Conversation
added 2 commits
October 21, 2026 06:52
The classic frontend fetches ${API_BASE}/stocks with API_BASE='' -- the same
no-prefix path shape as the tokens tab -- but the direct-API whitelist regex
in both nginx configs lacked 'stocks', so GET /stocks from a browser fell
through to the static SPA and returned index.html instead of JSON (verified
against the deployed container at 12aed7b: /custom-tokens proxies, /stocks
does not; the FastAPI routes themselves are live in openapi.json).
Adds 'stocks' to the whitelist in nginx.conf + nginx-ssl.conf and pins it
with tests/unit/test_nginx_stocks_route.py (regex emulation: the real client
paths proxy, /stocks.html and /stockings still fall through to the SPA, no
pre-existing prefix lost, both configs identical).
…gacy User order 2026-10-21: deprecate the old standard dashboard, default everything to /next; the old dashboard stays reachable at /legacy. - backend: '/' 302s to /next/; /legacy/ serves the V1 index and /legacy/<page> resolves V1 pages (with or without .html). Every old V1 URL keeps working unchanged (bookmarks and deep links). - nginx (both configs): exact 'location = /' 302s to /next/ ahead of the SPA try_files fallback; '/legacy' proxies to FastAPI. - v2 Assets page gains the Stocks tab (WQ-0382 parity): tab button, panel, v2 modal for manual add with live ticker validation (/stocks/search), tracked-toggle and delete, lazy load on first visit, hash routing. New frontend/v2/js/v2-stocks.js. - cache-bust stamp bumped repo-wide. - tests: tests/unit/test_next_default_routing.py pins root redirect, legacy routes, nginx ordering, and the v2 stocks wiring.
Overview
Labels (5 changes)
org.opencontainers.image.authors=Chris Catalano
org.opencontainers.image.base.name=python:3.11-slim
-org.opencontainers.image.created=2026-10-21T04:02:27.450Z
-org.opencontainers.image.description=A Better Crypto Tracker
+org.opencontainers.image.description=Multi-chain cryptocurrency portfolio tracker supporting Cardano, Ethereum, Bitcoin, Solana, Polygon, and Base
org.opencontainers.image.documentation=https://github.com/Tarrant64/abct/blob/main/README.md
org.opencontainers.image.icon=https://raw.githubusercontent.com/Tarrant64/abct/main/frontend/static/apple-touch-icon.png
org.opencontainers.image.licenses=MIT
-org.opencontainers.image.revision=12aed7b446c2375e4edad20a92959022a51773f4
org.opencontainers.image.source=https://github.com/Tarrant64/abct
-org.opencontainers.image.title=abct
+org.opencontainers.image.title=ABCT - A Better Crypto Tracker
org.opencontainers.image.url=https://github.com/Tarrant64/abct
org.opencontainers.image.vendor=ABCT Project
-org.opencontainers.image.version=latest
+org.opencontainers.image.version=1.12.3Packages and Vulnerabilities (5 package changes and 1 vulnerability changes)
Changes for packages of type
|
| Package | Versiontarrant64/abct:latest |
Versiontarrant64/abct:pr-29 |
|
|---|---|---|---|
| ♾️ | ca-certificates | 20250419 |
20250419+deb13u1 |
| ♾️ | liblzma5 | 5.8.1-1+deb13u1 |
5.8.1-1+deb13u2 |
| ♾️ | xz-utils | 5.8.1-1+deb13u1 |
5.8.1-1+deb13u2 |
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.
WQ-0383: /next is the default dashboard; classic UI moves to /legacy
Per user order 2026-10-21 ("deprecate the old standard dashboard, and default
everything to the new /next. The old dashboard can be viewed by going to
/legacy going forward, and /next becomes the new default").
Routing
GET /now 302s to/next/(was: served the V1 index)./legacy/serves the classic index;/legacy/<page>resolves any V1 page(
/legacy/assets.html,/legacy/assetsboth work)./assets.html,/data.html,/login.html, ...)keeps serving exactly as before — bookmarks and deep links don't break.
location = /302 (nginx would otherwise servethe V1 index straight off disk and FastAPI would never see
/), and a/legacyproxy location placed before the SPAtry_filesfallback.Stocks tab parity on /next (found by user testing)
now has it: tab button, table (symbol/name/qty/price/day/value + tracked
toggle + delete), add-stock v2 modal with debounced live ticker validation
against /stocks/search (POST requires a feed-validated ticker), lazy load on
first visit,
#stockshash routing. Newfrontend/v2/js/v2-stocks.js.Values already flow to the /next hero via the backend
/portfolio/instantmanual_stock bucket (no v2 math change needed).
Tests
tests/unit/test_next_default_routing.pypins: root() performs theredirect; legacy routes exist and all old V1 routes remain; both nginx configs
have the root 302 ordered before try_files and /legacy proxying to FastAPI;
v2 assets wiring + endpoint contract. Full offline suite: exit 0 (verdict
WQ-0383-D1 at head c1f75fa).
Depends on PR #28 (nginx
/stockswhitelist) for the tab to actually getJSON; merging #28 first or both together is fine — this branch sits on top of
the #28 commit.
Opened by
hub-prfor the Hermes leadagenton hub01 (branchhermes/WQ-0383-clean, head72b665ee178a, 2 commit(s) onmain). Not reviewed by a person; merging is the owner's decision.