{"quest":{"id":"q-content-quality","name":"Content Quality Sweep","description":"HIGHEST PRIORITY: Systematic review of all top-level pages and content for quality issues. The system has accumulated junk: 7,824 broken figure artifacts, duplicate test hypotheses, placeholder notebooks, and low-quality auto-generated content. Quality gates are post-hoc only. This quest gates ALL future content generation behind quality verification.","layer":"Senate","priority":62,"status":"active","created_at":"2026-04-06T14:11:50.565579+00:00","updated_at":"2026-04-10T14:44:10.355870+00:00"},"tasks":[{"id":"4594b494-0bb1-478a-9bfd-6f98aae07d3d","title":"[Quality] Regenerate all 67 stub notebooks linked from showcase/walkthrough analyses","description":"Find notebooks linked from WALKTHROUGH_IDS analyses that are stubs (<10KB). For each: regenerate using the forge/seaad_analysis.py pattern — pull analysis hypotheses, call Forge tools (PubMed, STRING, Reactome), build ipynb, execute, render HTML. Priority: notebooks reachable from /showcase navigation.","status":"open","priority":82,"frequency":"daily","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T07:13:05.533644+00:00","updated_at":"2026-04-28T06:31:30.465325+00:00","summary":"","completion_summary":"[Atlas] Regenerate 9 WALKTHROUGH stub notebooks with real Forge tool outputs","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/showcase_notebook_rebuild_spec.md","provider":"any","payload_json":"{\"requirements\": {\"analysis\": 6, \"reasoning\": 6, \"safety\": 9}, \"completion_shas\": [\"6095f6ee18f62960c28347f38743ac09e40a6b3f\"], \"completion_shas_checked_at\": \"2026-04-12T17:38:17.492156+00:00\", \"completion_shas_missing\": [\"6d41401ff66a6dbee8a3ccc4981c2ebcd33c6fc2\", \"fccee9aead44199e4606b4c2fa448920c15fd828\", \"7a0f85eecdfa2143efb2bc6fd5f80441df2c5f9a\", \"8e9f818137f905ea4615f779ded1eef5aadeb4e0\", \"7318642be0314e3143d2a3be03044d9959a299db\", \"92ca8db4bb39d0f5df28b82db226f985964372a4\", \"9b487bfe89995816ed6917f1d3f003b6c41ebec6\", \"8db6ea6a9d30689de3465ca6681f131c71129647\", \"5c0dcf9a53bca1675369596f1a8f94b230f9df67\", \"991846dfe527603af9c1813ef486114ba952edc3\"]}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"recurring","pr_links":[],"commit_links":[]},{"id":"9b4b1e14-513e-475e-8962-3412f332696b","title":"[Quality] Review top 10 hypothesis pages for demo quality","description":"Visit the 10 highest-scored hypotheses. Check: title quality, description completeness, evidence tables populated, radar chart rendering, related hypotheses linked, challenge connection. Fix any issues found.","status":"open","priority":74,"frequency":"every-24h","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T11:20:14.298345+00:00","updated_at":"2026-04-27T11:20:14.298345+00:00","summary":"","completion_summary":"[Atlas] Quality audit: backfill 3 NULL scores for h-var-e2b5a7e7db [task:9b4b1e14-513e-475e-8962-3412f332696b]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/9b4b1e14_quality_top_hypothesis_pages_spec.md","provider":"any","payload_json":"{\"requirements\": {\"analysis\": 6, \"reasoning\": 6, \"safety\": 6}, \"_stall_skip_providers\": [\"glm\"]}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"recurring","pr_links":[],"commit_links":[]},{"id":"4257183e-aeab-4e34-a4f9-f7640cc966a1","title":"[Quality] Walk the site: review every major page for UX issues, broken links, ugly rendering","description":"Visit /, /exchange, /analyses/, /forge, /wiki, /senate, /showcase, /benchmarks, /challenges, /arenas, /notebooks, /forge/playground, /forge/idea-collider. For each: check layout, broken elements, missing data, confusing text. File issues as commits.","status":"open","priority":64,"frequency":"every-12h","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T12:33:18.037306+00:00","updated_at":"2026-04-27T12:33:18.037306+00:00","summary":"","completion_summary":"Merged task branch into main","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/4257183e_site_walk_ux_spec.md","provider":"any","payload_json":"{\"requirements\": {\"analysis\": 6, \"reasoning\": 6, \"safety\": 6}, \"_stall_skip_providers\": [], \"_stall_requeued_by\": \"any\", \"_stall_requeued_at\": \"2026-04-11 02:27:40\", \"completion_shas\": [\"ce96070a060b3a98db36bdbc8bcab7f60cc33516\", \"818bf7b023ecc28ac732230e988c879dd67d383b\", \"5bd80d5b47ac4207fc3c451fba0f8ba8c96f6dcb\", \"af57af4cb088d40c7810d0444938c7ec76c824ca\", \"d40c633563ae2c96bcd156af1b20f1db1e21d21b\", \"5ef6e9f4a9261819812cad10cfdeb106ee88ed75\", \"d61e3ba8114a245b9807f07c46c1ded654d7eb34\", \"296c02538732de238eb14f10ef55099570fbb124\", \"ce23e1091ffcecb4f3a22cf151b91f842e3a493b\", \"0ab4c0296cf1757d1a0db4f65218924216ecf717\", \"432d1ea0409ac0cc7736054b49e13d426d9d3d1d\", \"d9986a98dfbcd663f32c88fc42bc73b0c4afff83\", \"2bbde4187e24cde3d656d83985a914181296cd78\", \"4976ac61fdd2060ae0e470ff9fa20ab05a4afaa5\", \"d439e4b072815c6f8f8506254068e3a4e1c4886c\", \"f121cf540b409546a5fcb782454ca946bd54e9ae\", \"a943c0585f4ea2db606bdbd0a490605b3f5f3135\", \"b214fad96b871588e7d55cd47b725802a677ddff\", \"a40e3ce8c3298de08ea4dae256283dfec19ec4cf\", \"7876b2aed5e6d0b01ad507c3119dccba07d4b212\", \"ed954dfa64ae6addd337b8ed64f27b699cff622b\", \"b0312917e92092951ff185a494a11d7205f68d69\", \"4c6d3cd7a1a431a4db9b483967daf76f244e79d4\", \"a59ff27f313e5a30dc5f72430c5a914ded3d53b9\", \"527c781e85c06345345312acc8fdb1adda0016f3\", \"5064af68f4be322ca16e1be82f0f1a9b899feeeb\", \"eee7dba56f5a0e5ca5bd21ec7be7a465f313a609\", \"c3aba2360c06553a080d935bb0dbdf9c74aefd73\", \"b2f2ad10b3a45b3e8eac35c371d9b60622a2cb6b\", \"525ac96b95925c51c0695ddf1ba7354b6d68683e\", \"50e3045a19258cbd977f6509481332409cbf31f6\", \"590d0515af96d96c862e7a1c9af194f44b5701db\", \"944d5022ab353a1c527f91f9dbd0a559a700d395\", \"57aec45e750309499ce816fc342453131a44afb6\", \"e18f791bb98ad26a5150c318f32c23fec2baf3c0\", \"94a78abb51195af457f1b2218b4e88539deb2eb6\", \"c7d080ccd7418dae29768b226d098f4d91b12d90\"], \"completion_shas_checked_at\": \"2026-04-13T05:43:40.689187+00:00\", \"completion_shas_missing\": [\"99a249c7c09b86cb0c923c6ea75f5c855ee17daf\", \"aaef809f3c301a3e2f1369d0ad41f59f3333e66e\", \"03a5742b875755a13994cb2b9096914a6d04fe77\", \"0d7468b367a3070a947108c93d8227fb9c347af9\", \"eda7d8dabe10bab33bbc4e16abf9abbf2f50c5c3\", \"a0d56a8713ea07650dbf97d8b769e1c1f6f3aa0c\", \"01aaf6ad3d310d76746105eb3a07a5293e7c4086\", \"bb5240b5b5db642adaa0c0f49365f8a6c691201c\", \"b65bb335d91ba9eddbaf08cf9c5588357a7ec25e\", \"264c86cfd449a6dc4f8288685893a79c4aa7824e\", \"9e222ffb688a28f60c03d96508352b97afdc47fa\", \"931ea65cf93aafa4293f4fb9d841e3145c2d0a15\", \"30aba79ea97247c2ff3458c84713af1e300daa01\", \"b28132a8550b7947dc1e8ce60e2b49391c2a9035\", \"eeb83b8d16dab36d3a306f3ccf01fa4f2c6359be\", \"4567841d3a9bc6e8c830899cad3a73e80a106e37\", \"071a675cdf31c7643e2558d8be24c4b54e154353\", \"53631c06adaf39e61e1bb181d23e17d3c000c0e3\", \"671f6a04e396e3e9dca2585aee70b05f933627ef\", \"434e6572e72d483d3922ea94f0d4afab0fb4fae8\", \"990ddaffcb0eeb11bd513644eae60bb898158d0a\", \"2799d9e11b4b54f49316b9a2f4703381242bb6fa\", \"a697be5f153a06479e12360c086a421bbbf26915\", \"b89ce146473e1624ec92b373cebb0ff0a72e74d3\", \"4daa3e284e02f942bfd79ce48ce83730fe831304\", \"c243fa5cad80640ea53fcfb356f11f936c5dfc99\", \"82587c4c79eeef3ad365218288753bc7820214c2\", \"bf8d7b5198323b51a4535685d6ee8cc45b5cd091\", \"370ec2ac643acdc5139e2ece9dfd1dab1591a52f\", \"7b4f3d93113293a33f549c64085198fa90bc000a\", \"77b37c26ae93629013f1a1c0b13c4a6ccef8a928\", \"87881ed769174909fa0ce5caf81f8ffac3b12f51\", \"46185e8954c23832b0bcf92a266d0586338f9c23\", \"49d2e5d4f47ee886fcda765902fb5c74e3a74878\", \"24c13295485aaeda3d62cdee86ec7f801c7c1200\", \"a5c5016facbc4d5346ad1f8d15cea9be95a71246\", \"a487366b7ffdc393dad7651d5a119f166877b3b0\", \"7a73c6b41b941aa2d40afcfdad465d6172c614d6\", \"a28762ee815308fed14c3e4632b5f50f93d87866\", \"7204268165cf057109ed318784f3cce2bdbff6e5\", \"6bbfb05218d540ded6a2330bcd760dcc8d3fa67a\", \"66e19454028e4c6712ccda1e819efc69f6c8f470\", \"d9fa50304c38b611b70b8cac2b8ff2c1cd86cb97\", \"a1e5ed47acf80706d733c264db58587feae3efa8\", \"749f629e1e34f0efe10b08d9e2e281ce27a83e6d\", \"6d11f8f0ad8a39ebdc5db68e8bdce91e7ee1f8ac\", \"a663e2d2f9730286d40266e2fd21ae8fba694b12\", \"608ad37df3a982cad130561a7c3ae1a5ecad90aa\", \"7c68f053a14fe801f5eb39d2fafe33144ead62d0\", \"27fa6eeaa1c5b46884ab3dd595f161a5e9590c11\", \"c03d0fb7a191e8cd19486b21fda57bae0dd7cb98\", \"43b1e1a3a9b76ed66658bcf6545e4ed57a84d23b\", \"a65aa386c039d7312e80904a60ad93e32f84ca83\", \"c3e1cfd744e7fd6f30ceed59a38638c502650dbc\", \"73e51f6818df34bf742bdeb06281a1b4b8e2cde6\", \"31f73506c2a4239a32dd0f87a389cfb4385d2f23\", \"929f67d21af52c3ad402be3a07c95594c6385ca0\", \"00bb340761d24b2f56292b8fb89157ec0fbf63bb\", \"f8447bed3d25edf4f10a2aa28d4beb79b8dce96e\", \"17369515e7cd3b7f3af283091b8e941cf8acaae0\", \"3fa9ffa83a3a44127d021c8f4f61b53ed4e875aa\"]}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"recurring","pr_links":[],"commit_links":[]},{"id":"5faca020-48e8-45e6-aec0-5c54cda327a0","title":"[Quality] Review wiki entity pages for completeness and formatting","description":"Sample 10 wiki pages from /wiki. Check: content quality, mermaid diagrams rendering, cross-links to analyses/hypotheses, infobox data present. Fix formatting issues.","status":"open","priority":60,"frequency":"daily","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T12:14:41.341260+00:00","updated_at":"2026-04-27T12:14:41.341260+00:00","summary":"","completion_summary":"[Atlas] Wiki quality review: fix 5 pages (broken mermaids, citation leaks, boilerplate) [task:5faca020-48e8-45e6-aec0-5c54cda327a0]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/5faca020_wiki_quality_review_spec.md","provider":"any","payload_json":"{\"requirements\": {\"analysis\": 6, \"reasoning\": 6, \"safety\": 9}, \"completion_shas\": [\"6f71b1ea26612dee439a47b8214c9801ee0ac3e5\", \"27a8518f848fb030bb7bb4d1bb305effa0274157\"], \"completion_shas_checked_at\": \"2026-04-12T18:10:28.083646+00:00\", \"completion_shas_missing\": [\"c8f8e0d69f5425f216c9f2ea1f6e1398965393a9\", \"7341d13c4a2186662531537ddec0dc41207b98ae\", \"2259b123c3d7fc1ffce4e7e5bede75087c258aad\", \"e51596ca0d02c7244d20af69a8cfe9972ff78278\", \"309667156ce072bfa6ea114714bc568cd3b9299b\", \"d9d389bade4b623203448206b67f81f272cafc78\", \"fe4109ecc5c8638860f85978ba05edfd8efa4e12\"]}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"recurring","pr_links":[],"commit_links":[]},{"id":"4a7e7a20-9864-4aa8-9a4d-baee88668e8d","title":"[Quality] Fix hypothesis description truncation on analysis pages","description":"In api.py analysis_detail, hypothesis descriptions are truncated to 200 chars with \"...\". This cuts off important scientific content. Fix: either show full description with expand/collapse, or increase to 500+ chars. The line is approximately: desc = h.get(\"description\", \"\")[:200]. Also check showcase/walkthrough pages for the same truncation pattern.","status":"done","priority":97,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-24T13:42:52.591428+00:00","updated_at":"2026-04-24T13:42:52.591428+00:00","summary":"","completion_summary":"Task closed as pass. The fix was already on main — hypothesis descriptions on all three surfaces (`/analyses/{id}`, `/walkthrough/{id}`, `/showcase`) use 500-char previews with expand/collapse rather than the original 200-char hard truncation. No code changes were needed; the substantive fix landed in a prior squash merge (`3fe211b58`).","completion_notes":"Auto-release: work already on origin/main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"requirements\": {\"coding\": 7}}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":"pass","verification_notes":"Task closed as pass. The fix was already on main — hypothesis descriptions on all three surfaces (`/analyses/{id}`, `/walkthrough/{id}`, `/showcase`) use 500-char previews with expand/collapse rather than the original 200-char hard truncation. No code changes were needed; the substantive fix landed in a prior squash merge (`3fe211b58`).","task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"f4f66e36-c04a-4517-a9f3-74c36a230ddb","title":"[Quality] Agent walkthrough: audit every top-level page for content quality","description":"Walk through every major page (dashboard, exchange, analyses, hypotheses, debates, wiki, forge, atlas, gaps, notebooks, senate) as a critical visitor. For each: is the content real and useful? Are there broken links? Placeholder text? Misleading stats? Low-quality entries? Produce a page-by-page quality report with specific issues and fix recommendations.\n\n\n## REOPENED TASK — CRITICAL CONTEXT\n\nThis task was previously marked 'done' but the audit could not verify\nthe work actually landed on main. The original work may have been:\n- Lost to an orphan branch / failed push\n- Only a spec-file edit (no code changes)\n- Already addressed by other agents in the meantime\n- Made obsolete by subsequent work\n\n**Before doing anything else:**\n\n1. **Re-evaluate the task in light of CURRENT main state.** Read the\n   spec and the relevant files on origin/main NOW. The original task\n   may have been written against a state of the code that no longer\n   exists.\n\n2. **Verify the task still advances SciDEX's aims.** If the system\n   has evolved past the need for this work (different architecture,\n   different priorities), close the task with reason \"obsolete: <why>\"\n   instead of doing it.\n\n3. **Check if it's already done.** Run `git log --grep='<task-id>'`\n   and read the related commits. If real work landed, complete the\n   task with `--no-sha-check --summary 'Already done in <commit>'`.\n\n4. **Make sure your changes don't regress recent functionality.** Many\n   agents have been working on this codebase. Before committing, run\n   `git log --since='24 hours ago' -- <files-you-touch>` to see what\n   changed in your area, and verify you don't undo any of it.\n\n5. **Stay scoped.** Only do what this specific task asks for. Do not\n   refactor, do not \"fix\" unrelated issues, do not add features that\n   weren't requested. Scope creep at this point is regression risk.\n\nIf you cannot do this task safely (because it would regress, conflict\nwith current direction, or the requirements no longer apply), escalate\nvia `orchestra escalate` with a clear explanation instead of committing.\n","status":"done","priority":95,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-14T01:23:56.540213+00:00","updated_at":"2026-04-14T01:23:56.540213+00:00","summary":"","completion_summary":"[Docs] Update 6bb6ec05 spec work log: verification confirmed on main [task:6bb6ec05-3376-4c7e-9594-73c7326b16b0]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"completion_shas\": [\"5b67040367dce04447a6dd5cd2b6be498d0ae29c\"], \"completion_shas_checked_at\": \"2026-04-14T01:23:56.520709+00:00\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"57872c4e-1d85-4efc-8073-4c7a5ec586a5","title":"[Quality] Clean up broken/junk figure artifacts","description":"7,824 figure artifacts have quality_status='missing_file'. Options: (a) delete artifacts without backing files, (b) regenerate figures where the source data exists, (c) keep only figures that are actually useful. Start by understanding which figures have real value. Also clean up any test/placeholder artifacts (title='Test:*').\n\n\n## REOPENED TASK — CRITICAL CONTEXT\n\nThis task was previously marked 'done' but the audit could not verify\nthe work actually landed on main. The original work may have been:\n- Lost to an orphan branch / failed push\n- Only a spec-file edit (no code changes)\n- Already addressed by other agents in the meantime\n- Made obsolete by subsequent work\n\n**Before doing anything else:**\n\n1. **Re-evaluate the task in light of CURRENT main state.** Read the\n   spec and the relevant files on origin/main NOW. The original task\n   may have been written against a state of the code that no longer\n   exists.\n\n2. **Verify the task still advances SciDEX's aims.** If the system\n   has evolved past the need for this work (different architecture,\n   different priorities), close the task with reason \"obsolete: <why>\"\n   instead of doing it.\n\n3. **Check if it's already done.** Run `git log --grep='<task-id>'`\n   and read the related commits. If real work landed, complete the\n   task with `--no-sha-check --summary 'Already done in <commit>'`.\n\n4. **Make sure your changes don't regress recent functionality.** Many\n   agents have been working on this codebase. Before committing, run\n   `git log --since='24 hours ago' -- <files-you-touch>` to see what\n   changed in your area, and verify you don't undo any of it.\n\n5. **Stay scoped.** Only do what this specific task asks for. Do not\n   refactor, do not \"fix\" unrelated issues, do not add features that\n   weren't requested. Scope creep at this point is regression risk.\n\nIf you cannot do this task safely (because it would regress, conflict\nwith current direction, or the requirements no longer apply), escalate\nvia `orchestra escalate` with a clear explanation instead of committing.\n","status":"done","priority":92,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-16T10:08:51.658292+00:00","updated_at":"2026-04-16T10:08:51.658292+00:00","summary":"","completion_summary":"[Atlas] Update spec with cleanup script work log [task:57872c4e-1d85-4efc-8073-4c7a5ec586a5]; [Atlas] Add cleanup_figure_artifacts.py script for missing file detection [task:57872c4e-1d85-4efc-8073-4c7a5ec586a5]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"completion_shas\": [\"faa3b8a140ffc108bb6b51518dcb39d42c50a474\", \"5702b926052c84a1186576b5d78537db62af4d2b\", \"9efd5b48cace46d7506ce8efafbe424519bbc551\"], \"completion_shas_checked_at\": \"2026-04-16T10:08:51.636424+00:00\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"9e7f0b0d-f065-474c-9b72-01ca10cf5a10","title":"[Senate] Auto fact-check pipeline - cross-verify every claim across 3 sources","description":"Triangulated claim verification: fan out every atomic claim to PubMed+S2+OpenAlex, LLM judge per source, mode-vote verdict + confidence.","status":"done","priority":91,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T15:35:12.054043+00:00","updated_at":"2026-04-27T15:35:11.974524+00:00","summary":"","completion_summary":"Completed","completion_notes":"Auto fact-check pipeline complete. Fans out claims to PubMed/Semantic Scholar/OpenAlex, LLM judges each source, triangulates via mode vote. API routes added (`GET /api/senate/fact_check/{claim_id}`, `POST /api/senate/fact_check/run`). HTML badge on hypothesis pages. 15 tests passing. SQL migration applied.","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/q-qual-auto-fact-check-pipeline_spec.md","provider":"any","payload_json":"{\"completion_shas\": [\"74668743c\"], \"completion_shas_checked_at\": \"2026-04-27T15:35:07.336831+00:00\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":"pass","verification_notes":"Completed","task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"58055617-625a-4ebc-b560-52d434b5c3d7","title":"[Senate] Hallucination detector - compare LLM claims to retrieval-grounded baseline","description":"Detect LLM-invented claims by extracting sub-claims and checking each against retrieval baseline; score, flag, dock composite, fire Senate alert.","status":"done","priority":90,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T15:36:37.980635+00:00","updated_at":"2026-04-27T15:36:37.980635+00:00","summary":"","completion_summary":"**Verdict: already resolved.** The hallucination detector implementation shipped on main in commits `ee8de5729` (squash merge) and `7eab2d32d` (three commits). A prior Verify commit (`984cea621`) confirmed all acceptance criteria are met:","completion_notes":"Auto-release: work already on origin/main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/q-qual-hallucination-detector_spec.md","provider":"any","payload_json":"{\"completion_shas\": [\"ee8de5729\"], \"completion_shas_checked_at\": \"\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":"ee8de5729","merge_verified_at":"2026-04-27T15:26:00.103921+00:00","verification_result":"pass","verification_notes":"**Verdict: already resolved.** The hallucination detector implementation shipped on main in commits `ee8de5729` (squash merge) and `7eab2d32d` (three commits). A prior Verify commit (`984cea621`) confirmed all acceptance criteria are met:","task_type":"one_shot","pr_links":[],"commit_links":[{"sha":"ee8de5729","role":"merge_commit"}]},{"id":"71b3d647-7fcd-4198-b30c-8205eee56b81","title":"[Quality] Pre-publication artifact validation gate","description":"Implement a blocking quality check in artifact_registry.py that validates: (a) figure artifacts have an existing file on disk, (b) notebook artifacts have HTML + ipynb, (c) hypothesis artifacts have non-empty description > 50 chars, (d) no exact-title duplicates. Reject registration if checks fail.\n\n\n## REOPENED TASK — CRITICAL CONTEXT\n\nThis task was previously marked 'done' but the audit could not verify\nthe work actually landed on main. The original work may have been:\n- Lost to an orphan branch / failed push\n- Only a spec-file edit (no code changes)\n- Already addressed by other agents in the meantime\n- Made obsolete by subsequent work\n\n**Before doing anything else:**\n\n1. **Re-evaluate the task in light of CURRENT main state.** Read the\n   spec and the relevant files on origin/main NOW. The original task\n   may have been written against a state of the code that no longer\n   exists.\n\n2. **Verify the task still advances SciDEX's aims.** If the system\n   has evolved past the need for this work (different architecture,\n   different priorities), close the task with reason \"obsolete: <why>\"\n   instead of doing it.\n\n3. **Check if it's already done.** Run `git log --grep='<task-id>'`\n   and read the related commits. If real work landed, complete the\n   task with `--no-sha-check --summary 'Already done in <commit>'`.\n\n4. **Make sure your changes don't regress recent functionality.** Many\n   agents have been working on this codebase. Before committing, run\n   `git log --since='24 hours ago' -- <files-you-touch>` to see what\n   changed in your area, and verify you don't undo any of it.\n\n5. **Stay scoped.** Only do what this specific task asks for. Do not\n   refactor, do not \"fix\" unrelated issues, do not add features that\n   weren't requested. Scope creep at this point is regression risk.\n\nIf you cannot do this task safely (because it would regress, conflict\nwith current direction, or the requirements no longer apply), escalate\nvia `orchestra escalate` with a clear explanation instead of committing.\n","status":"done","priority":90,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-18T16:30:44.588233+00:00","updated_at":"2026-04-18T16:30:44.588233+00:00","summary":"","completion_summary":"[Verify] Pre-publication artifact validation gate — PASS [task:71b3d647-7fcd-4198-b30c-8205eee56b81]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"_reset_note\": \"This task was reset after a database incident on 2026-04-17.\\n\\n**Context:** SciDEX migrated from SQLite to PostgreSQL after recurring DB\\ncorruption. Some work done during Apr 16-17 may have been lost.\\n\\n**Before starting work:**\\n1. Check if the task's goal is ALREADY satisfied (run the relevant checks)\\n2. Check `git log --all --grep=task:YOUR_TASK_ID` for prior commits\\n3. If complete, verify and mark done. If partial, continue. If not done, proceed.\\n\\n**DB change:** SciDEX now uses PostgreSQL. `get_db()` auto-detects via\\nSCIDEX_DB_BACKEND=postgres env var.\", \"_reset_at\": \"2026-04-18T06:29:22.046013+00:00\", \"_reset_from_status\": \"done\", \"completion_shas\": [\"e59d1a03f\", \"648510963\"], \"completion_shas_checked_at\": \"2026-04-18T16:30:23.752850+00:00\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":"pass","verification_notes":"[Verify] Pre-publication artifact validation gate — PASS [task:71b3d647-7fcd-4198-b30c-8205eee56b81]","task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"88952f44-693d-4ec2-95f2-289c6712b2c4","title":"[Senate] Cross-claim consistency engine - flag contradictory hypotheses","description":"Embedding shortlist + LLM contradiction judge for every pair of atomic claims; auto-spawn debate to adjudicate when confidence>=0.8.","status":"done","priority":89,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T15:35:13.251711+00:00","updated_at":"2026-04-27T15:35:13.251711+00:00","summary":"","completion_summary":"[Senate] Cross-claim consistency engine — flag contradictory hypotheses [task:88952f44-693d-4ec2-95f2-289c6712b2c4]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/q-qual-cross-claim-consistency_spec.md","provider":"any","payload_json":"{}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"205d0755-7eb3-44b3-9c70-41e0040dfc00","title":"[Senate] Claim-strength normalizer - force loose claims into structured form","description":"Normalize free-text claims into (subject, predicate, object, strength, scope); strength label modulates evidence_strength_score.","status":"done","priority":88,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T16:16:56.651095+00:00","updated_at":"2026-04-27T16:16:56.651095+00:00","summary":"","completion_summary":"[Senate] Mark acceptance criteria complete in spec [task:205d0755-7eb3-44b3-9c70-41e0040dfc00]; [Senate] Add claim normalize API endpoint and strength badges to rebased api.py [task:205d0755-7eb3-44b3-9c70-41e0040dfc00]; [Senate] Claim-strength normalizer — force loose claims into structured form [task:205d0755-7eb3-44b3-9c70-41e0040dfc00]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/q-qual-claim-strength-normalizer_spec.md","provider":"any","payload_json":"{}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"dcc3bb02-e4da-4b45-9b04-007183603edc","title":"[Quality] De-duplicate hypotheses and analyses","description":"Find and merge duplicate hypotheses (same title, similar description). Keep the highest-scored version. Update references. Also check analyses for duplicates. 7 'Test: TREM2' entries already cleaned; run comprehensive duplicate scan.\n\n\n## REOPENED TASK — CRITICAL CONTEXT\n\nThis task was previously marked 'done' but the audit could not verify\nthe work actually landed on main. The original work may have been:\n- Lost to an orphan branch / failed push\n- Only a spec-file edit (no code changes)\n- Already addressed by other agents in the meantime\n- Made obsolete by subsequent work\n\n**Before doing anything else:**\n\n1. **Re-evaluate the task in light of CURRENT main state.** Read the\n   spec and the relevant files on origin/main NOW. The original task\n   may have been written against a state of the code that no longer\n   exists.\n\n2. **Verify the task still advances SciDEX's aims.** If the system\n   has evolved past the need for this work (different architecture,\n   different priorities), close the task with reason \"obsolete: <why>\"\n   instead of doing it.\n\n3. **Check if it's already done.** Run `git log --grep='<task-id>'`\n   and read the related commits. If real work landed, complete the\n   task with `--no-sha-check --summary 'Already done in <commit>'`.\n\n4. **Make sure your changes don't regress recent functionality.** Many\n   agents have been working on this codebase. Before committing, run\n   `git log --since='24 hours ago' -- <files-you-touch>` to see what\n   changed in your area, and verify you don't undo any of it.\n\n5. **Stay scoped.** Only do what this specific task asks for. Do not\n   refactor, do not \"fix\" unrelated issues, do not add features that\n   weren't requested. Scope creep at this point is regression risk.\n\nIf you cannot do this task safely (because it would regress, conflict\nwith current direction, or the requirements no longer apply), escalate\nvia `orchestra escalate` with a clear explanation instead of committing.\n","status":"done","priority":88,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-19T01:48:14.408778+00:00","updated_at":"2026-04-19T01:48:14.408778+00:00","summary":"","completion_summary":"[Quality] Add hypotheses dedup scripts (CLI-based, index-corruption-safe) [task:dcc3bb02-e4da-4b45-9b04-007183603edc]","completion_notes":"Auto-completed by supervisor after successful deploy to main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"_reset_note\": \"This task was reset after a database incident on 2026-04-17.\\n\\n**Context:** SciDEX migrated from SQLite to PostgreSQL after recurring DB\\ncorruption. Some work done during Apr 16-17 may have been lost.\\n\\n**Before starting work:**\\n1. Check if the task's goal is ALREADY satisfied (run the relevant checks)\\n2. Check `git log --all --grep=task:YOUR_TASK_ID` for prior commits\\n3. If complete, verify and mark done. If partial, continue. If not done, proceed.\\n\\n**DB change:** SciDEX now uses PostgreSQL. `get_db()` auto-detects via\\nSCIDEX_DB_BACKEND=postgres env var.\", \"_reset_at\": \"2026-04-18T06:29:22.046013+00:00\", \"_reset_from_status\": \"done\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":null,"verification_notes":null,"task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"28b75b73-c14d-46a5-91fc-4298acc8f81a","title":"[Quality] Review and improve Exchange/hypothesis page quality","description":"The Exchange page is a key entry point. Audit: Are hypothesis titles meaningful? Are scores calibrated? Do the top-10 hypotheses have real evidence? Are there junk/test entries polluting the rankings? Flag issues, fix what we can.\n\n\n## REOPENED TASK — CRITICAL CONTEXT\n\nThis task was previously marked 'done' but the audit could not verify\nthe work actually landed on main. The original work may have been:\n- Lost to an orphan branch / failed push\n- Only a spec-file edit (no code changes)\n- Already addressed by other agents in the meantime\n- Made obsolete by subsequent work\n\n**Before doing anything else:**\n\n1. **Re-evaluate the task in light of CURRENT main state.** Read the\n   spec and the relevant files on origin/main NOW. The original task\n   may have been written against a state of the code that no longer\n   exists.\n\n2. **Verify the task still advances SciDEX's aims.** If the system\n   has evolved past the need for this work (different architecture,\n   different priorities), close the task with reason \"obsolete: <why>\"\n   instead of doing it.\n\n3. **Check if it's already done.** Run `git log --grep='<task-id>'`\n   and read the related commits. If real work landed, complete the\n   task with `--no-sha-check --summary 'Already done in <commit>'`.\n\n4. **Make sure your changes don't regress recent functionality.** Many\n   agents have been working on this codebase. Before committing, run\n   `git log --since='24 hours ago' -- <files-you-touch>` to see what\n   changed in your area, and verify you don't undo any of it.\n\n5. **Stay scoped.** Only do what this specific task asks for. Do not\n   refactor, do not \"fix\" unrelated issues, do not add features that\n   weren't requested. Scope creep at this point is regression risk.\n\nIf you cannot do this task safely (because it would regress, conflict\nwith current direction, or the requirements no longer apply), escalate\nvia `orchestra escalate` with a clear explanation instead of committing.\n","status":"done","priority":87,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-19T02:27:07.746831+00:00","updated_at":"2026-04-19T02:27:07.746831+00:00","summary":"","completion_summary":"Already resolved: f2afa830c on main (69a6249c2). Verified archived filtering in /api/hypotheses (line 6126), archived filtering in exchange() (line 26901), and Variant badge for h-var-* entries (line 27738). Orphaned branch fixed, spec updated with verification evidence.","completion_notes":"","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"","provider":"claude","payload_json":"{\"_reset_note\": \"This task was reset after a database incident on 2026-04-17.\\n\\n**Context:** SciDEX migrated from SQLite to PostgreSQL after recurring DB\\ncorruption. Some work done during Apr 16-17 may have been lost.\\n\\n**Before starting work:**\\n1. Check if the task's goal is ALREADY satisfied (run the relevant checks)\\n2. Check `git log --all --grep=task:YOUR_TASK_ID` for prior commits\\n3. If complete, verify and mark done. If partial, continue. If not done, proceed.\\n\\n**DB change:** SciDEX now uses PostgreSQL. `get_db()` auto-detects via\\nSCIDEX_DB_BACKEND=postgres env var.\", \"_reset_at\": \"2026-04-18T06:29:22.046013+00:00\", \"_reset_from_status\": \"done\"}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":"pass","verification_notes":"Already resolved: f2afa830c on main (69a6249c2). Verified archived filtering in /api/hypotheses (line 6126), archived filtering in exchange() (line 26901), and Variant badge for h-var-* entries (line 27738). Orphaned branch fixed, spec updated with verification evidence.","task_type":"one_shot","pr_links":[],"commit_links":[]},{"id":"e98f5d97-9571-43ec-928c-425270079951","title":"[Senate] Review 50 artifacts with empty quality_status for lifecycle readiness","description":"14027 artifacts have no quality_status. Senate lifecycle decisions need an explicit review state, not just raw quality_score.\n\n## Acceptance criteria\n\n- 50 artifacts receive quality_status or documented insufficient-data rationale\n- Statuses are consistent with quality_score, lifecycle_state, provenance, and usage signals\n- Systemic status gaps are documented as follow-up tasks if found\n\n## Approach\n\n1. Select artifacts with high usage/citation and empty quality_status.\n2. Inspect provenance, dependencies, lifecycle state, and quality score.\n3. Persist status updates through standard DB write paths and verify counts.\n\nGenerated by the quest-engine low-queue cycle after live DB gap verification. Re-check for duplicate recent work before editing, and document any stronger framing you find.\n","status":"done","priority":82,"frequency":"","max_iterations":null,"assigned_slot":"","started_at":null,"completed_at":"2026-04-27T06:37:01.019638+00:00","updated_at":"2026-04-27T06:37:01.019638+00:00","summary":"","completion_summary":"Already resolved on main: a4fd4a64, 69269dfe, 184a932c","completion_notes":"Auto-release: work already on origin/main","last_error":"","time_estimate_hours":0.0,"completion_count":0,"spec_path":"docs/planning/specs/quest_engine_artifact_quality_scoring_spec.md","provider":"any","payload_json":"{\"requirements\": {\"analysis\": 6, \"reasoning\": 6}}","pr_links_json":"[]","commit_links_json":"[]","merge_commit_sha":null,"merge_verified_at":null,"verification_result":"pass","verification_notes":"Already resolved on main: a4fd4a64, 69269dfe, 184a932c","task_type":"one_shot","pr_links":[],"commit_links":[]}],"reviews":[],"effectiveness":{},"related_quests":[{"name":"Artifact Governance & Lifecycle Management","layer":"Senate","priority":93,"status":"active","description":"Establish a unified artifact governance system across SciDEX. Every first-class entity (gap, hypothesis, analysis, paper, dataset, wiki page, debate, squad finding) gets a universal artifact identity, full history tracking, merge/split/archive operations with decision audit trails, and content ownership by agents or squads.\n\nEXISTING INFRASTRUCTURE (to build on, not replace):\n- dedup_recommendations table: 297 pending merge candidates, zero executed\n- artifact_transforms table: 15 records tracking versions/lifecycle/deprecation\n- API endpoints: /api/dedup/{recommendations,approve,reject,scan}, /api/artifact-transforms\n- Lifecycle states: hypotheses (7 states), gaps (6 states), datasets (versioned via git)\n- governance_config table: 3 entries (ALLOCATION_THRESHOLD, REQUIRED_SIGNATURES, AUTHORIZED_SIGNERS)\n- edit_history table: schema exists, zero rows (never wired up)\n- quality_gate_results table: schema exists, zero rows\n\nGAP ANALYSIS (what's missing):\n1. No universal artifact registry — each type has its own ID scheme\n2. edit_history never wired up — no who-changed-what audit trail\n3. 297 dedup recommendations pending forever — no execution pipeline\n4. Lifecycle enforcement is manual/absent — only 1 of 337 hypotheses archived\n5. No content ownership model — artifacts are unowned\n6. No governance decision tracking — decisions happen but aren't recorded\n7. No automated garden maintenance — stale gaps, redundant hypotheses accumulate\n\nDESIGN PRINCIPLES:\n- Clean system APIs: every operation available via /api/ endpoints\n- Documented governance processes adopted by ALL subsystems\n- Agent-compatible: agents and squads can propose, vote, and execute decisions\n- Incremental: builds on existing tables, doesn't require big-bang migration\n- Auditable: every state change has a who/when/why trail","task_count":28,"done_count":28},{"name":"Percolation Engine","layer":"Senate","priority":93,"status":"active","description":"Closes the loop: discussion comments and proposals percolate into concrete actions, edits, cross-links, and new artifacts — everything tracked end-to-end. Components: (1) comment classifier (LLM tags posts as proposal/action/evidence/dispute/question/ack); (2) action emitter — when N agents reach consensus on action-tagged thread, spawn Orchestra task with comment_id provenance; (3) edit emitter — when consensus on edit-proposal, bump artifact version applying the diff and credit contributors; (4) cross-link emitter — when comments link ≥3 artifacts, propose typed artifact_link; (5) proposal emitter — when discussion converges on a proposal shape, spawn the right artifact (analysis_proposal etc.); (6) percolation dashboard — daily flow rates of post→task→artifact-version. Audit + provenance preserved: every action references the originating comment_id and contributors, restoring full reproducibility from the discussion all the way to the merged change.","task_count":18,"done_count":18},{"name":"Autonomous Engines","layer":"Senate","priority":93,"status":"active","description":"Orchestra-managed recurring scripts: debate engine, link checker, orphan checker, convergence monitor, visual regression, pubmed pipeline, metrics, health checks","task_count":18,"done_count":14},{"name":"Resource Intelligence","layer":"Senate","priority":92,"status":"active","description":"Value-based resource allocation — continually evaluate the relative value of quests, tasks, \nhypotheses, gaps, and artifacts, then allocate LLM tokens, CPU, and disk proportionally.\n\nThis quest is the DECISION layer between:\n  - Economics (pricing signals, token economy) → tells us what things are WORTH\n  - Resource Governance (caps, quotas, enforcement) → tells us what we CAN spend\n  - Resource Intelligence (THIS) → decides what we SHOULD spend on\n\nCore loop:\n  1. Score every open task/quest by expected-value-per-token:\n     EV = (importance × tractability × downstream_impact) / estimated_cost\n  2. Rank by EV descending → priority queue\n  3. Allocate budget: top-k items get resources proportional to EV rank\n  4. After completion, measure actual impact → update EV model (feedback loop)\n\nSignals feeding the scorer:\n  - Elo tournament ratings (hypothesis quality signal)\n  - LMSR market prices (belief-weighted value)\n  - Gap value_if_resolved scores\n  - Quest priority × task count\n  - Historical cost-per-completion from resource_usage + cost_ledger\n  - Freshness: penalize stale items, boost newly-identified opportunities\n\nResources tracked:\n  - LLM tokens (by provider: max, codex, bedrock)\n  - CPU seconds (cgroup tracking via cgroup_isolation.py)\n  - Disk (artifact storage)\n  - Agent slots (concurrent execution capacity)\n\nConnects to:\n  - resource_allocations table (currently empty → needs populating)\n  - quest_resource_analyzer.py (correlates completion with consumption)\n  - monthly_resource_adjustment.py (periodic rebalancing)\n  - token_ledger.py (virtual economy)\n  - cost_ledger in orchestra.db (real spend)\n\nSpec: docs/planning/specs/q-resource-intelligence_spec.md","task_count":9,"done_count":8},{"name":"Work Governance","layer":"Senate","priority":90,"status":"active","description":"Comprehensive governance framework for tracking all work added to SciDEX — who did what, when, why, and at what cost. Includes commit-level provenance, agent accountability scores, automated quality checks, approval workflows, contradiction detection before KG modifications, rollback capability via kg_modifications log, artifact transform audit trail (merge/split/deprecate/supersede operations), supersession tracking, and dashboards showing contribution patterns.","task_count":9,"done_count":6},{"name":"Senate","layer":"Senate","priority":88,"status":"active","description":"Governance & quality gates — agent performance tracking, work audit trails, convergence monitoring, quality control. Includes epistemic tier enforcement (T0-T5), adversarial falsification via red-team Falsifier persona, proof-gated KG updates with contradiction checking, and epistemic health dashboards. Implements the Epistemic Ratchet: adding knowledge is easy, degrading established knowledge is hard.","task_count":810,"done_count":412}],"prs":[],"commits":[{"hash":"ee8de5729","message":"**Verdict: already resolved.** The hallucination detector implementation shipped on main in commits `ee8de5729` (squash merge) and `7eab2d32d` (three commits). A prior Verify commit (`984cea621`) confirmed all acceptance criteria are met:","date":"2026-04-27","role":"merge_commit","url":"https://github.com/SciDEX-AI/SciDEX/commit/ee8de5729","task_id":"58055617-625a-4ebc-b560-52d434b5c3d7","task_title":"[Senate] Hallucination detector - compare LLM claims to retrieval-grounded baseline"}]}