Work Progress Intelligence Platform

Conversational AI standups that extract structured updates, two-way sync with the work-tracking system, and dashboards shaped to each role.

Sole architect and builder of an internal platform: conversational AI standups that extract structured updates, two-way sync with the work-tracking system, and dashboards shaped to each role. Raising its chat assistant's high-confidence answers from 81 to more than 90 out of 100 (the assistant's own confidence label) was not a data problem: the data was always there, and the failures were routing gaps and tool bugs.

Agentic systems · Tool routing · Conversational AI · Two-way sync

Next.js · TypeScript · FastAPI · PostgreSQL · Redis · Celery

Work Progress Intelligence Platform: components Conversational AI standups, two-way sync with the work-tracking system, and dashboards shaped to each role. Conversational AIstandup Web app · Next.js ·TypeScript API · FastAPI chat assistant: routes each question to a tool PostgreSQL Sync worker and scheduler · Celery · Redis Work- tracking system Dashboards shaped to each role extracts structuredupdates two-way sync Work Progress Intelligence Platform: components Conversational AI standups, two-way sync with the work-tracking system, and dashboards shaped to each role. Conversational AI standup extracts structuredupdates API · FastAPI chat assistant: routes each question to a tool PostgreSQL Sync worker and scheduler · Celery · Redis Work-tracking system two-way sync Web app · Next.js · TypeScript Dashboards shaped to each role
Conversational AI standups, two-way sync with the work-tracking system, and dashboards shaped to each role.
How the router picks a tool, and where it failed A question reaches a router that reads each tool's description, in catalogue order. When a description names what's asked, the specific tool returns the rows; when nothing names it — a routing gap — it falls through to a catch-all keyword search, listed last. The specific tool: tool bug, an argument read too narrowly. The tool's rows and the catch-all's report of the nothing it received both feed the compose step, which produces the answer. A gap that clusters by category is a missing tool, not a model problem. Tools listed after the catch-all are ones the router was already told it doesn't need. Question Router reads each tool'sdescription, in catalogue order a descriptionnames what'sasked nothingnames it ·routing gap Specific toolreturns the rows tool bug: an argumentread too narrowly Catch-allkeyword search,listed last reports the nothingit received Compose the answer from what came back Answer A gap that clusters by category is amissing tool, not a model problem. Tools listed after the catch-all are onesthe router was already told it doesn't need.
The chat assistant routes each question by reading tool descriptions. When no description named what was asked, it fell through to a catch-all keyword search and honestly reported the nothing it got back, even though the data was there. None of the failures was missing data; they were routing gaps and tool bugs.

What I build