Commit Graph
133 Commits
Author SHA1 Message Date
ImBenjiandClaude Opus 5 8f4d3b4ce9 fix: require live calibration to authorise a live order
Offline evidence can no longer authorise anything. createDecisions used to
prefer a live snapshot and fall back to the pooled historical one, so once the
live lane woke up a live prediction could have drawn a BUY off backfill data.
Backfill and replay are fine evidence that the pipeline works, they are not a
live track record.

No live snapshot now means ABSTAIN. The abstain says whether offline evidence
existed for that cohort, so "we have 60 offline samples but no live ones" stays
distinguishable from "we know nothing about this cohort".

Also split the health counter. It counted qualifying cohorts across every
source, which overstated how close we are to being able to trade now that only
live cohorts can authorise. It reports qualifying_live_cohorts and
qualifying_offline_cohorts separately, and applies the concentration cap it was
previously ignoring.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WnNxwxfXSbeNtjvtz5gayb
2026-08-29 22:22: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 d778a02bfb fix: make postgres the default runtime service 2026-08-19 09:12:44 +01:00
ImBenji 9eb59443bd fix: support postgres pragma table info 2026-08-19 08:42:58 +01:00
ImBenji 8288bbc028 fix: stop eager admin page prefetch 2026-08-19 08:38:12 +01:00
ImBenji 7ff69ad99d fix: use async postgres for autonomy http routes 2026-08-17 14:10:29 +01:00
ImBenji aea0ed437e fix: isolate autonomy postgres url 2026-08-17 14:05:31 +01:00
ImBenji 51649fbf5f fix: pin postgres transaction clients 2026-08-17 14:02:59 +01:00
ImBenji 4c24b37af9 fix: keep postgres archive time lookup indexed 2026-08-17 13:59:13 +01:00
ImBenji e239a5d41e fix: cast postgres archive timestamps 2026-08-17 13:56:13 +01:00
ImBenji f0b598a3b8 feat: support postgres autonomy runtime 2026-08-17 13:43:50 +01:00
ImBenji 4aa2367971 fix: calibrate from replay outcomes 2026-08-13 19:10:59 +01:00
ImBenji c9c2d0c8ef fix: recover transient coordinator dead letters 2026-08-13 19:02:41 +01:00
ImBenji 2c023c8962 fix: let replay recover from dead letter jobs 2026-08-08 23:32:41 +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 0047adcb6d fix: scrub invalid nul bytes during postgres migration 2026-08-04 22:35:50 +01:00
ImBenji ffc85719ff feat: add bounded postgres data migration stack 2026-08-04 22:09:23 +01:00
ImBenji 5877783862 feat: add isolated historical replay calibration 2026-08-04 22:00:11 +01:00
ImBenji be18eb77f0 fix: cache background statistics response 2026-08-04 21:51:18 +01:00
ImBenji b3a55fac08 perf: source statistics from the catalog 2026-08-04 21:50:02 +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 f5f092cfb0 perf: compute archive stats off the API thread 2026-08-04 21:45:17 +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 b9ee10a83a fix: serialize autonomy job leases 2026-08-04 21:07:42 +01:00
ImBenji 5037e1e192 feat: overhaul Duriin autonomy console 2026-08-04 21:05:47 +01:00
ImBenji 0724f5dc36 fix: run autonomy workers by default 2026-08-03 14:43:30 +01:00
ImBenji c4028cc394 feat: add autonomous paper-trading and calibration pipeline 2026-08-03 14:03:27 +01:00
ImBenji 5a9a2e4c6d refactor: load environment variables from .env file and update openRouter configuration 2026-04-27 19:08:54 +01:00
ImBenji 80d545fa6a refactor: load environment variables from .env file and update openRouter configuration 2026-04-27 19:00:32 +01:00
ImBenji 1ec273a72b refactor: load environment variables from .env file and update openRouter configuration 2026-04-27 18:39:35 +01:00
ImBenji 82abe0bcb3 refactor: load environment variables from .env file and update openRouter configuration 2026-04-27 18:02:20 +01:00
ImBenji 7ceaaf2401 refactor: load environment variables from .env file and update openRouter configuration 2026-04-27 17:43:48 +01:00
ImBenji 80236b9396 refactor: add env_file configuration to docker-compose.yml for environment variable management 2026-04-27 17:40:15 +01:00
ImBenji 1d77266cb2 refactor: enhance database URL handling in config.js for improved PostgreSQL connection setup 2026-04-27 17:38:41 +01:00
ImBenji 82df9da814 refactor: adjust directory navigation in rebuild-api.sh for improved script execution 2026-04-27 17:34:18 +01:00
ImBenji 94281b81e2 refactor: update worker commands and add new scripts for API rebuilding and queue feeding 2026-04-27 17:31:45 +01:00
ImBenji f00b1a9640 refactor: update worker commands and add new scripts for API rebuilding and queue feeding 2026-04-27 17:30:52 +01:00
ImBenji 04966fac55 refactor: update worker commands and add new scripts for API rebuilding and queue feeding 2026-04-27 15:03:15 +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 a48b1eef67 refactor admin data queries; consolidate multiple count queries and optimize article fetching 2026-04-24 01:14:36 +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 8e654ff467 refactor admin navigation; update links to ingest pages and improve loading of data in parallel 2026-04-24 00:57:32 +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