DEMO ROSTER — filing status and question counts on this screen are invented.

No portal credentials · client attribution has a limit

We hold no GST portal credentials and never will, so this build cannot know what any client has actually filed. Statutory due dates are the exception: those come from the seeded database and carry citations.

Questions, wait times and write-back receipts are real database rows. Which client a question came from is stored on the escalation row itself, so it reads the same in every browser — except for rows created before that column existed, where only the browser that asked can still recover the name. Those are marked, and a name that is unknown is shown as “client not recorded”, never as “nothing asked”.

Sharma & Associates

Practice console · CA Sharma

Answers you write here are attributed to CA Sharma and become cited sources for the client who asked.

Escalation desk

Capacity

None measurable yet — each tile names the input it is missing.

Grounded rate

not measured
why it is blank

Populates as soon as one client question has been answered or handed over — GET /api/metrics counts assistant replies carrying a citation against those handed to a human. Blank also means the console is locked, or the route could not be read.

Time to human answer

not measured
why it is blank

Populates the first time a CA answers a waiting escalation: the queue then reports created→answered seconds for that row. A seed row committed in the same transaction that created it is not a human turnaround, and is excluded.

Reuse so far

not measured
why it is blank

Populates once a written-back human answer is retrieved by a later question — GET /api/metrics counts replies citing a human_verified source against the human answers in the knowledge base.

CA-minutes / 100 questions

not measured
why it is blank

Needs measured CA handling time: the composer-opened→committed clock is not instrumented anywhere in this build. Queue wait time is elapsed time, not CA effort, and substituting it would flatter this number.

Question queue · what still needs CA Sharma

Everything the assistant refused to guess at, in the order worth answering.

Real rows from GET /api/escalations · repeat counts are a floor, not an estimate · older rows show a browser-local client name

Questions, waits, retrieval scores, floors and statuses are real rows from GET /api/escalations. Nothing here is invented; two things are narrower than they look.

  • Repeats are counted by exact question text (lib/ca/queue.ts), not by meaning — so every reuse figure above is a floor on the real number, never an estimate of it.
  • Which client asked is now stored on the row itself (escalations.client_id), so it reads the same in every browser. Rows created before that column existed have none, and for those only the browser that asked can still recover the name (lib/ca/attribution.ts) — those are marked “this browser” on the row. Where neither has it, the row says “client not recorded” — the truth, not a missing name, and never a guessed one.

Deadline board · Sharma & Associates

What is due, for whom, next — across all 3 clients.

All 3 clients share the one statutory profile this build seeds (regular-monthly-under-5cr), so an obligation is one row with one citation rather than the same row per client. Real seeded dates, really cited — not yet a different rule set per client, which is a data-seeding job, not a UI one.

Client roster

3 clients

Practice record · 1 practising CA

Clients of Sharma & Associates. The questions-this-month column is invented demo data; every other column is the firm's own record. Each row ends with two links: Open, for the firm's view of that client, and Assistant, for the client's own cited chat. On narrower screens the owner, GSTIN, state and compliance-shape columns fold into the client cell rather than being dropped.
ClientOpen the client's file, or their assistant
Krishna TradersRamesh Krishna27•••••••••••3Z1MaharashtraRegular · up to ₹5 cr · 1 state · monthly14questions / mo (demo)OpenAssistant
Meena FabricsMeena Devi27•••••••••••8K2MaharashtraRegular · up to ₹5 cr · 1 state · QRMP9questions / mo (demo)OpenAssistant
Rao Auto PartsSudha Rao29•••••••••••5P7KarnatakaRegular · up to ₹5 cr · 1 state · monthly21questions / mo (demo)OpenAssistant
The questions / mo column is invented demo data · everything else is the firm's own record

Names, owners, masked GSTINs, states and compliance shapes are the firm's own record (lib/ca/roster.ts). The questions-per-month column is invented demo data. All three clients currently resolve to the one seeded statutory profile (regular-monthly-under-5cr), so their obligations and due dates are real and cited, but not yet a different rule set per client.

Why this list is the asset. Every client here shares one knowledge base. An answer CA Sharma writes once for any of them is stored as a human-verified source in their name and served, cited, to whoever asks it next — so the roster grows without the question volume growing with it. Open a client to see which of their questions have already become answers for the whole roster.