Commit Graph
27 Commits
Author SHA1 Message Date
ImBenjiandClaude Opus 5 0a5b30ab63 feat: new ops console for the admin surface
The old admin was five separate html pages, so every navigation was a full
reload and the operational picture was scattered across all of them. Worth
saying: the api was never the problem, every endpoint answers in under 200ms.
It felt slow because of the architecture, not the backend.

This is a single page console. React and htm from a cdn, no bundler and no
babel-in-the-browser, because a runtime transpiler on every load is exactly the
slowness we are trying to get rid of. Hash routing, polling that keeps the last
good payload on screen instead of flashing a spinner, and stale responses are
dropped so a slow request cannot overwrite a newer one.

/admin/api/ops/overview answers the whole dashboard in one call rather than
making the browser fan out and stitch. It carries the things that actually
matter and were not visible anywhere before: when live evidence matures, why a
cohort does or does not clear the trade gate, which stage of the pipeline has
gone quiet, and what is sitting in dead letters.

Controls, all of which change production and all of which ask twice:
- requeue dead letters, which only ever moves dead_letter back to pending
- execution mode and a kill switch, now read from autonomy_settings on every
  poll instead of only from AUTONOMY_EXECUTION_MODE, so halting no longer needs
  a redeploy first
- run the reaction analysis and read its output

The d3 graph is framed rather than ported. It works, and rewriting it would risk
something valuable for nothing the operator can see.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WnNxwxfXSbeNtjvtz5gayb
2026-09-01 20:17:36 +01:00
ImBenjiandClaude Opus 5 6f1d1eee2d fix: restart the stalled autonomy pipeline and make calibration honest
Archive ingestion had been dead since 2026-08-02 because nothing in the
compose stack actually ran it. Everything downstream starved from there.

- add ingest + enrichment services. server.js only starts the scheduler when
  DURIIN_RUN_SCHEDULER is not "false", and workers/index.js was not running at
  all, so articles never got event_id/content/has_embedding and the coordinator
  had nothing to lease.
- pass an explicit origin from coordinatorWorker. it was never passed, so
  acceptProposal defaulted to 'live' and 464 historical backfill predictions
  were recorded as live. that also meant verifyEvidence got a null cutoff and
  skipped its date check entirely.
- coarsen cohortKey to event families + horizon buckets. 201 free text event
  types produced 221 cohorts averaging 2.76 samples, so the n>=30 gate could
  never be reached and everything abstained for the wrong reason.
- gate on cohort diversity, not just sample count. one ticker was roughly half
  of all resolved outcomes, so a pure count gate was measuring one company.
  unknown diversity abstains rather than passing.
- resolve the admin archive db explicitly and probe it. it relied on a
  Dockerfile symlink, and without it better-sqlite3 quietly creates an empty
  file and serves a phantom archive.
- clamp implausible future publication dates at ingest.
- pin the db backend to sqlite by default. compose hardcoded postgres "true",
  which would have overridden the operator's own .env on the next redeploy and
  pointed everything at a stale snapshot.

scripts/repair-autonomy-labels.js relabels the affected rows. it is dry run by
default and has not been applied.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WnNxwxfXSbeNtjvtz5gayb
2026-08-29 21:43:24 +01:00
ImBenji 8288bbc028 fix: stop eager admin page prefetch 2026-08-19 08:38:12 +01:00
ImBenji 0344d5ca97 Revert "style: reduce modal title scale"
This reverts commit 2d5c0280de.
2026-08-04 22:39:50 +01:00
ImBenji 2d5c0280de style: reduce modal title scale 2026-08-04 22:38:37 +01:00
ImBenji 5877783862 feat: add isolated historical replay calibration 2026-08-04 22:00:11 +01:00
ImBenji 6e666838ba perf: keep source aggregation off interactive requests 2026-08-04 21:48:44 +01:00
ImBenji d020fa3811 perf: avoid full archive scans in statistics 2026-08-04 21:46:56 +01:00
ImBenji 002b7b320c perf: remove blocking archive counts from navigation 2026-08-04 21:42:23 +01:00
ImBenji 2020a0fde2 fix: keep archive indexing off API startup 2026-08-04 21:39:20 +01:00
ImBenji bd162606b6 perf: make admin navigation responsive 2026-08-04 21:36:39 +01:00
ImBenji 5680ee8a44 fix: prevent stale admin UI assets 2026-08-04 21:31:55 +01:00
ImBenji 5037e1e192 feat: overhaul Duriin autonomy console 2026-08-04 21:05:47 +01:00
ImBenji b4df02da0d migrate database from SQLite to PostgreSQL; add PostgreSQL adapter and migration script 2026-04-27 14:33:46 +01:00
ImBenji 653a58b3d8 refactor admin data queries; consolidate multiple count queries and optimize article fetching 2026-04-24 01:20:08 +01:00
ImBenji 0c852da511 add timestamp to signal cards; enhance display with generated-at information 2026-04-24 01:09:18 +01:00
ImBenji e9c084b8d3 add timestamp to signal cards; enhance display with generated-at information 2026-04-24 01:04:31 +01:00
ImBenji 3c57896aa0 refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:48:49 +01:00
ImBenji 1119ba015e refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:41:19 +01:00
ImBenji 50851320e3 refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:32:53 +01:00
ImBenji 69206260d3 refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:21:52 +01:00
ImBenji fc7ea464b3 refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:08:52 +01:00
ImBenji 16cd61fdf5 refactor button elements; change button types for search and filter actions in admin pages 2026-04-23 23:40:44 +01:00
ImBenji eedd499262 refactor button elements; change button types for search and filter actions in admin pages 2026-04-23 23:33:00 +01:00
ImBenji 0dd258bd1d refactor button elements; change button types for search and filter actions in admin pages 2026-04-23 23:24:36 +01:00
ImBenji 194442ec4c add filtering and sorting features; enhance events and articles pages with URL state persistence 2026-04-23 23:03:11 +01:00
ImBenji bec6763191 add intelligence features; implement signals and predictions pages in admin panel 2026-04-23 22:58:19 +01:00