Pulsar recovery: 8 September 2026
Public sign-in and data access are restored on Igris. Coolify runs the repaired source from commit eda0fc1bb72fb27af6f99f58d7087951c32f4bd0. Elliptic task: TD-95 in Personal / Todo.
Cause and data
The API DNS record pointed to an old server at 45.87.120.147. The Igris audit found no Pulsar app, database, volume, or backup to restore. The development MongoDB contained system databases only. The owner approved a fresh database. Accounts and portfolios from the old host were not recovered; users must register again.
The fresh build then failed. FastAPI 0.141.1 changed its nested routers, while fastapi-limiter 0.2.0 expects each route to have a path field. Requests failed with HTTP 500. FastAPI is now capped below 0.137, and the dependency lockfile is included in the repair source. The current Alpaca key rejects SIP, so production uses IEX.
Repairs
The API now uses the existing Cloudflare tunnel. Coolify holds MongoDB, Redis, and the backend application. A read-only GitHub deploy key and signed push webhook connect the repository to Coolify.
The repair also restores bank icons, replaces the retired Binance MATIC pair with POL, serves crypto chart bars through Binance, fixes crypto detail links, and replaces sample stock news and statistics with provider data.
Live checks
Registration, login, profile updates, and wrong-password rejection passed. Portfolio transactions, watchlists, custom heatmaps, and terminal layouts saved and loaded through the public API. A terminal chart created in the browser also persisted. Stock and crypto charts render on the public site. Browser registration and sign-out passed. All 38 bank icons returned HTTP 200. Cross-account portfolio access was rejected. Both test accounts and their data were removed after the checks.
The final frontend deployment is dpl_5ZE1Y3U8LQA6woX4AE8UqgiPPhQb on Vercel. The public domain serves the corrected news, metrics, links, and crypto price precision.
The API returned 89 stock quotes, 15 crypto quotes, 189 currency entries, 11 market sectors, and company financial data. A 20-second public WebSocket check received 60 crypto messages and 14 currency messages, including changed prices. The stock socket connected. Live stock ticks remain unverified while the US market is closed.
Three backend regression tests and a fresh Docker build passed. Frontend type checks and the production build passed. The full frontend lint check reported 18 existing errors; it is not clean.
Release result
GitHub shows the repair commit with a valid signature for ege@chele.bi. Push webhook delivery 3841481636535337000 returned HTTP 200. GitHub Actions run 34175243634 passed its backend and frontend jobs.
Coolify deployment gbi5vayla81dmywsrbczhcgy built the same commit and finished at 2026-09-08T01:04:14Z. The application container is healthy. Caddy now sends the public API to coolify-proxy:80. Public API, sign-in, saved data, charts, and WebSockets passed after this route change.
The recovery container and all test accounts were removed. MongoDB and Redis remain healthy in Coolify. Watch paths are empty, so every push to main calls the signed GitHub webhook and starts a Coolify deployment.
