Jonathan Kirkwood 77eeb3bd7f Add adjudicated ROADMAP: 13 drop, 13 do, 4 escalate
Grounded survey of the tree (backend/frontend/deploy), then
adjudicated each P2/P3 item investigate -> debate -> judge.

Dropped as not-worth-it (removed): B2 rollup N+1 (fine at scale),
F1 money formatters (2 trivial lines), F3 SW cache (stale-shell
can't happen), D1 health check (no real race), D3 aarch64 (x86
internal tool), D4 pin SDK (lockfile already deterministic),
B5 string caps (SQLite ignores), B6 created_at (already present),
B8 VelvetSweatshop (harmless), B9 empty-strip (already handled),
F9 loading text / F10 spinner / F11 confirm() (cosmetic).

Kept as DO with plans: B3 tests, B4 upload cap, B7 audit type,
B10 FK indexes, B11 cli errors, F2 auth-vs-network, F4 import
confirm, F6 audit detail, F7 empty-state, F8 role helpers,
D2 commit version files, D5 type-check, D6 log-level env.

Escalated (your call): B1 pagination (epic, perm-filtered lists),
F5 valuation negatives (money write path), D7 default admin creds
(auth, onboarding externals), D8 uninstall wording (corrected
fact; ties to H1 backup question).
2026-07-01 09:21:59 -05:00
2026-06-07 19:23:26 +00:00
2026-06-07 19:23:26 +00:00

Ten31Portal

Internal system of record for Ten31 entities, holdings, positions, and quarterly valuation sign-off.

Prerequisites

  • Python 3.11+
  • Node.js 20+

Backend

cd backend
python -m venv .venv
source .venv/bin/activate
pip install -e .
uvicorn ten31portal.main:app --reload --port 8000

Health check: GET http://localhost:8000/api/health

Frontend

cd frontend
npm install
npm run dev

Opens at http://localhost:5173. Proxies /api to the backend on port 8000.

Project structure

ten31portal/
  backend/
    ten31portal/       # FastAPI application
      main.py          # App object and health endpoint
      config.py        # Env-based configuration
    pyproject.toml
  frontend/
    src/
      App.tsx          # Main component
      main.tsx         # Entry point
    vite.config.ts
  deploy/              # StartOS packaging (Issue 17)
  SPEC.md              # v1 issue specs
S
Description
mirror of gitea.ten31.ai Ten31AI/Ten31-Portal
Readme MIT
575 KiB
Languages
TypeScript 49.6%
Python 48.2%
Makefile 0.9%
Shell 0.4%
JavaScript 0.4%
Other 0.5%