Topolo Forecast
Cash-flow and P&L forecasting product.
Documentation Map
What It Is
Cash-flow and P&L forecasting product.
Canonical documentation for Topolo Forecast lives in `PlatformApplications/TopoloDocs`.
Use this repository for implementation only. Local product and operational docs have been retired in favor of the docs application.
Architecture
Owners: finance-platform
Source repos: PlatformApplications/TopoloForecast
Dependencies: topolo-auth, topolo-one, applications-packages
Repo shape
- PlatformApplications/TopoloForecast/README.md
- PlatformApplications/TopoloForecast/apps/
- PlatformApplications/TopoloForecast/commitlint.config.js
- PlatformApplications/TopoloForecast/eslint.config.js
- PlatformApplications/TopoloForecast/migration.config.ts
- PlatformApplications/TopoloForecast/package.json
- PlatformApplications/TopoloForecast/packages/
- PlatformApplications/TopoloForecast/pnpm-lock.yaml
- PlatformApplications/TopoloForecast/pnpm-workspace.yaml
- PlatformApplications/TopoloForecast/prettier.config.js
- PlatformApplications/TopoloForecast/topolo.cloudcontrol.json
Runtime Surfaces
Hosts:
https://forecast.topolo.app Config: PlatformApplications/TopoloForecast/apps/forecast-web/wrangler.toml
Main: not declared
Routes: workers.dev or asset-only surface
Config: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Main: src/index.ts
Routes: workers.dev or asset-only surface
API Reference
Coverage: curated
Source: PlatformApplications/TopoloDocs/src/content/public/applications/forecast.mdx
Source exists in repo: yes
Canonical Forecast coverage now lives in the docs application. The browser callback delegates Auth SSO one-time sso_code redemption to the shared Topolo auth client and does not support direct bearer-token callback URLs or /sso?token= bridge routes. Embedded first-party password-login success is completed by Forecast with in-app navigation after shared Auth token persistence so the first authenticated workspace refresh is not aborted by a hard redirect. Forecast keeps same-tab sessionStorage access-token restore enabled by default after login and refresh so normal browser reloads do not appear logged out before cookie refresh completes. The authenticated Forecast web workspace renders through the shared `TopoloAppShell` so account, launcher, command, theme, sidebar-collapse, and BugFix chrome stay package-owned while finance workspace switching remains in additive account-menu actions. Auth home-path redirects to /dashboard are routed to the current-year dashboard in the browser, and Forecast static headers must not preload wildcard asset paths. Worker bearer-token authentication now requires Topolo Auth /validate and does not accept an app-local JWT secret.
App API page: /reference/apps/topolo-forecast
This system currently relies on a curated or README-derived contract surface instead of a source-controlled OpenAPI spec.
Auth and Permissions
Depends on Topolo Auth: yes
Service IDs:
srv_T0sKE7LIelMU API key scopes
Manage Forecast machine credentials
Resource pattern: none
View financial dashboard
Resource pattern: none
View cashflow forecasts
Resource pattern: none
Create and edit forecasts
Resource pattern: none
View financial reports
Resource pattern: none
View account settings
Resource pattern: none
Manage account configuration
Resource pattern: none
View financial transactions
Resource pattern: none
Record financial transactions
Resource pattern: none
Service permissions
api_keys:write, dashboard:read, forecasts:read, forecasts:write, reports:read, settings:read, settings:write, transactions:read, transactions:write
Data Ownership
Binding: FS_DB
Target: 897ce6a0-e15e-444d-9498-26d989ff3a38
Environment: default
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_CACHE
Target: c39ef688a2fb474ba240c80f9452f0e3
Environment: default
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_DB
Target: local-db-id
Environment: development
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_CACHE
Target: local-kv-preview-id
Environment: development
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_DB
Target: 57bb4c3b-46f0-4cd8-82e8-d2c8d6f3a480
Environment: staging
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_CACHE
Target: bd5f86a046f34e418f283f7e744d27c0
Environment: staging
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_DB
Target: 897ce6a0-e15e-444d-9498-26d989ff3a38
Environment: production
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Binding: FS_CACHE
Target: c39ef688a2fb474ba240c80f9452f0e3
Environment: production
Source: PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
Queues / Cron / Workflows
Queue bindings:
No queue bindings were detected.
Cron triggers
No cron triggers were detected.
Workflow signals
No explicit queue/workflow script or cron signal was discovered.
Environment Variables and Bindings
Environment variables:
ENVIRONMENT SERVICE_ID SERVICE_NAME migrations_dir All wrangler bindings
-
FS_DB(d1) -> 897ce6a0-e15e-444d-9498-26d989ff3a38 -
FS_CACHE(kv) -> c39ef688a2fb474ba240c80f9452f0e3 -
FS_DB(d1) -> local-db-id [development] -
FS_CACHE(kv) -> local-kv-preview-id [development] -
FS_DB(d1) -> 57bb4c3b-46f0-4cd8-82e8-d2c8d6f3a480 [staging] -
FS_CACHE(kv) -> bd5f86a046f34e418f283f7e744d27c0 [staging] -
FS_DB(d1) -> 897ce6a0-e15e-444d-9498-26d989ff3a38 [production] -
FS_CACHE(kv) -> c39ef688a2fb474ba240c80f9452f0e3 [production]
Deployments
Deployment environments: development, staging, production
Routes: workers.dev or Pages-only delivery
Observability enabled: yes
Wrangler surfaces
- PlatformApplications/TopoloForecast/apps/forecast-web/wrangler.toml -> forecast
- PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml -> forecast-worker-production (build npm run build)
Build and deploy commands
-
prebuild— PlatformApplications/TopoloForecast/apps/forecast-web/package.json :: cd ../../packages/forecast-core && npm run build && cd ../ui-kit && npm run build -
build— PlatformApplications/TopoloForecast/apps/forecast-web/package.json :: pnpm -C ../../packages/forecast-core run build && pnpm -C ../../packages/ui-kit run build && vite build -
build:with-types— PlatformApplications/TopoloForecast/apps/forecast-web/package.json :: tsc -b && vite build -
preview— PlatformApplications/TopoloForecast/apps/forecast-web/package.json :: vite preview -
deploy— PlatformApplications/TopoloForecast/apps/forecast-worker/package.json :: wrangler deploy -
deploy:staging— PlatformApplications/TopoloForecast/apps/forecast-worker/package.json :: env -u CLOUDFLARE_API_TOKEN CLOUDFLARE_ACCOUNT_ID=4f4e1c69a3830946f9fea7b1eb7531ac wrangler deploy --env staging -
prebuild— PlatformApplications/TopoloForecast/apps/forecast-worker/package.json :: cd ../../packages/forecast-core && npm run build -
build— PlatformApplications/TopoloForecast/apps/forecast-worker/package.json :: tsc -
build— PlatformApplications/TopoloForecast/package.json :: pnpm run --recursive build -
build:packages— PlatformApplications/TopoloForecast/package.json :: pnpm run --filter './packages/*' build -
build-storybook— PlatformApplications/TopoloForecast/package.json :: pnpm run --filter @forecast/ui-kit build-storybook -
deploy— PlatformApplications/TopoloForecast/package.json :: pnpm --filter @forecast/worker run deploy -
build— PlatformApplications/TopoloForecast/packages/config/package.json :: tsc -
build— PlatformApplications/TopoloForecast/packages/forecast-core/package.json :: tsc
Failure Modes
No default failure-mode heuristics are currently flagged for this system.
Debugging Runbooks
Start with these entrypoints:
- PlatformApplications/TopoloForecast/apps/forecast-web/wrangler.toml
- PlatformApplications/TopoloForecast/apps/forecast-worker/wrangler.toml
- PlatformApplications/TopoloDocs/src/content/public/applications/forecast.mdx
- PlatformApplications/TopoloForecast/README.md
- PlatformApplications/TopoloForecast/apps/forecast-web/package.json
- PlatformApplications/TopoloForecast/apps/forecast-worker/package.json
- PlatformApplications/TopoloForecast/package.json
- PlatformApplications/TopoloForecast/packages/config/package.json
- PlatformApplications/TopoloForecast/packages/forecast-core/package.json
Change Log / Verification
Lifecycle: active
Last verified: 2026-04-25
Any code change to this system is expected to update the canonical docs in PlatformApplications/TopoloDocs and refresh the verification date.