Submatter/apps/web/server/root.ts
Randall Stillwell e3af2c33e6 feat(polish): cost caps + DAG + tiers + preflight + checks panel
- Cost caps: budget_caps table, MTD spend ledger, tRPC budgets router, orchestrator pause on cap
- DAG viz: convoy-dag.tsx SVG for brief dependencies in Mission Control
- Automation tiers: manual|assist|auto per convoy, orchestrator respects manual
- Preflight: connected-repos preflight endpoint
- Checks panel: forge checks stub in detail panel
- Budget caps schema + tRPC router + Settings UI stub

Convoy: .convoys/polish-dag-tiers-cost

Co-authored-by: orchestrator
2026-08-25 20:33:10 -05:00

51 lines
2 KiB
TypeScript

import { router, createCallerFactory } from "@/server/trpc";
import { healthRouter } from "@/server/routers/health";
import { objectsRouter } from "@/server/routers/objects";
import { propertiesRouter } from "@/server/routers/properties";
import { relationsRouter } from "@/server/routers/relations";
import { aiRouter } from "@/server/routers/ai";
import { templatesRouter } from "@/server/routers/templates";
import { searchRouter } from "@/server/routers/search";
import { workspacesRouter } from "@/server/routers/workspaces";
import { typesRouter } from "@/server/routers/types";
import { formsRouter } from "@/server/routers/forms";
import { favoritesRouter } from "@/server/routers/favorites";
import { identityRouter } from "@/server/routers/identity";
import { invitesRouter } from "@/server/routers/invites";
import { auditRouter } from "@/server/routers/audit";
import { runsRouter } from "@/server/routers/runs";
import { backlogRouter } from "@/server/routers/backlog";
import { connectedReposRouter } from "@/server/routers/connected-repos";
import { convoysRouter } from "@/server/routers/convoys";
import { copilotRouter, opsCopilotRouter } from "@/server/routers/copilot";
import { harnessesRouter } from "@/server/routers/harnesses";
import { budgetsRouter } from "@/server/routers/budgets";
export const appRouter = router({
health: healthRouter,
workspaces: workspacesRouter,
types: typesRouter,
objects: objectsRouter,
properties: propertiesRouter,
relations: relationsRouter,
ai: aiRouter,
templates: templatesRouter,
search: searchRouter,
forms: formsRouter,
favorites: favoritesRouter,
identity: identityRouter,
invites: invitesRouter,
audit: auditRouter,
runs: runsRouter,
backlog: backlogRouter,
connectedRepos: connectedReposRouter,
convoys: convoysRouter,
harnesses: harnessesRouter,
copilot: copilotRouter,
opsCopilot: opsCopilotRouter,
budgets: budgetsRouter,
});
export type AppRouter = typeof appRouter;
export const createCaller = createCallerFactory(appRouter);