Copilot is the workspace for the Finance Ops console. Deprecated code is archived in old_code/.
- FX rates are managed in
app/src/store/fxStore.tsand recalculate RUB values in analytics, KPIs, and plan-fact tables. - The Employees directory supports a chat-driven form fill that prompts for missing fields.
- Plan-fact months can be pinned (up to 3), and the totals row stays visible under pinned months.
- The Expenses tab combines payroll and other costs, with category-level operations and sticky totals.
- Expense attachments are uploaded via
/api/uploads/expense-attachmentsand served from/uploads/expenses. - Guide directories fall back to mock data when the automation API is unavailable, and the Guide header includes a global Log sidebar.
app/React + Vite frontend for Finance Ops.backend/Node/Express API for Finance Ops.docs/,specs/,projects/for product documentation and specs.deploy/Host-level Nginx config and notes.
For shared dev on p2, serve a static build to avoid Vite port conflicts.
cd backend && npm install && npm run dev
cd app && npm install && npm run build-dev- Dev URL: https://copilot-dev.stratospace.fun
- Backend health: http://127.0.0.1:3002/api/health
- Backend proxies Voicebot auth via
/api/try_loginand/api/auth/me; setVOICEBOT_API_URLin the backend environment. - Frontend auth checks call
https://voice.stratospace.fun/auth/meby default; override withVITE_VOICEBOT_BASE_URLif needed. - Login relies on the shared
auth_tokenhttp-only cookie for.stratospace.fun.
The Finance Ops SPA is served by Nginx, and /api is proxied to the backend. For the public domain, see deploy/nginx-host.conf and deploy/README.md.