Audit log
Substrate-level change journal. Every verb-driven insert / update / delete writes here with the originating agent, the verb that caused it, the changed field set, and the model that ran the action. The source of truth for "what happened and who did it."
insert knowledge_gaps gap-07b4696b7c57 4/29/2026, 10:44:38 AM before / after
{ "title": "lb-min-n-g2", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:059868c55c7f17cb4f881f76f4df9ddba9a9e2cd86996793fde24e4d052f9bfb" }insert knowledge_gaps gap-93da67ee64ab 4/29/2026, 10:44:38 AM before / after
{ "title": "lb-min-n-g1", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:dd5a4bd6f2789c3890482ad8739f95054fd553083235142ae89c906fb2010cbc" }insert knowledge_gaps gap-795815ca4f81 4/29/2026, 10:44:38 AM before / after
{ "title": "lb-rank-gap-2", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:ea8ab1113dc22091510a3ba2bbbcb12e4fae8aab1959cebed7b3deeb634932af" }insert knowledge_gaps gap-136b73494017 4/29/2026, 10:44:38 AM before / after
{ "title": "lb-rank-gap-1", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:be333bc373a930f078971412bf55be29da3c1382b4e6ab4642fc1a9c8311a188" }insert knowledge_gaps gap-bc2196e5a181 4/29/2026, 10:44:38 AM before / after
{ "title": "lb-rank-gap-0", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:16891d4bfd4139ecd83699663e49146df7956b200162a79e58c1dd622e61c230" }insert hypotheses h-fd80a916d886 4/29/2026, 10:44:38 AM before / after
{ "title": "The answer", "content": {}, "content_hash": "sha256:8cf1e1954d51992aae2b3000751a7f2fafd941c896f339a6809c282ae87a4df1" }insert market_proposals prop-3cfdcc6d040a 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: calibrate-multifund", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: calibrate-multifund\nDescription: x\n\nTriggered at funded_total=65.00 (threshold 50.00, 3 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "persona-funder", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:156f25ee4397438d25c356a08a6ba7e9c9143013f088d7d0c6c8254295aa3828" }insert knowledge_gaps gap-112741221fa4 4/29/2026, 10:44:38 AM before / after
{ "title": "calibrate-multifund", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:b7611e63e86aa357b025bb95d90b6a5ba7a3a6b6d6a32c9c8d45a1d451103244" }insert hypotheses h-a35693cba977 4/29/2026, 10:44:38 AM before / after
{ "title": "The answer", "content": {}, "content_hash": "sha256:8cf1e1954d51992aae2b3000751a7f2fafd941c896f339a6809c282ae87a4df1" }insert market_proposals prop-4dc00a2fe6ae 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: calibrate-flag-off", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: calibrate-flag-off\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "persona-funder", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:519c341f1da568870489595e6bc6c8bdffb6dd020bae5f983b30bae96fc594a8" }insert knowledge_gaps gap-93a78afc8273 4/29/2026, 10:44:38 AM before / after
{ "title": "calibrate-flag-off", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:ddd2113f61e18d75188e7ab2ea4c8a00e40b361c8fc46ff56bf0a5f725546ec4" }insert hypotheses h-aebd8cfc415f 4/29/2026, 10:44:38 AM before / after
{ "title": "The answer", "content": {}, "content_hash": "sha256:8cf1e1954d51992aae2b3000751a7f2fafd941c896f339a6809c282ae87a4df1" }insert market_proposals prop-5fd1b9954d49 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: no-winner-calibrate", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: no-winner-calibrate\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "persona-funder", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:b73157c4a3a1bfb1469c290bd238427711fca1d0dae0fe2a039b4b03986bb2c8" }insert knowledge_gaps gap-eaa3b9a9047e 4/29/2026, 10:44:38 AM before / after
{ "title": "no-winner-calibrate", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:49d05d6a6ae076906c264b7eac89d4556c0d1a7e75aff33a5875c62700554c65" }insert hypotheses h-869775853bcd 4/29/2026, 10:44:38 AM before / after
{ "title": "The answer", "content": {}, "content_hash": "sha256:8cf1e1954d51992aae2b3000751a7f2fafd941c896f339a6809c282ae87a4df1" }insert market_proposals prop-a162516f7479 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: calibrate-idem", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: calibrate-idem\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "persona-funder", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:d2e814c66ed540123481f4960c1547cbfdcbd4b13ae1e1481f32954549d2eba0" }insert knowledge_gaps gap-7c736a5ce14e 4/29/2026, 10:44:38 AM before / after
{ "title": "calibrate-idem", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:9cf400c37744b7a32c59e68f8be6da4dcf2427c8a4ab4d3adcd6165e527fc41c" }insert hypotheses h-ef345a310d07 4/29/2026, 10:44:38 AM before / after
{ "title": "The answer", "content": {}, "content_hash": "sha256:8cf1e1954d51992aae2b3000751a7f2fafd941c896f339a6809c282ae87a4df1" }insert market_proposals prop-6bc0f273def7 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: calibrate-multi-funder", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: calibrate-multi-funder\nDescription: x\n\nTriggered at funded_total=70.00 (threshold 50.00, 3 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "persona-funder", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:4813cde9c8e770745d8c30b13a90e683d6313b8641d5e5f11b67b921219b60a4" }insert knowledge_gaps gap-b62566421c56 4/29/2026, 10:44:38 AM before / after
{ "title": "calibrate-multi-funder", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:4ccc7bf224777505ca5f4a23708bf841296c9001c682c94d5101fd3739b5ddc5" }insert hypotheses h-89a6ac168e4e 4/29/2026, 10:44:38 AM before / after
{ "title": "Smoke answer: TREM2 regulates microglial activation via DAP12", "content": { "target_gene": "TREM2" }, "content_hash": "sha256:69baedbc44cc358c1bc47075923e2bf2052ae154dd6b06a078668d6d9e5fa791" }insert market_proposals prop-f38e52fbe9d4 4/29/2026, 10:44:38 AM before / after
{ "title": "Market: Smoke: how does TREM2 modulate microglial response?", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: Smoke: how does TREM2 modulate microglial response?\nDescription: smoke test gap\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "substrate", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:7dc78d4d3c65257cd64a4db3be3409659b31b1f9297501534df72d438eac134f" }insert knowledge_gaps gap-5105839927df 4/29/2026, 10:44:38 AM before / after
{ "title": "Smoke: how does TREM2 modulate microglial response?", "content": { "domain": "neurodegeneration", "description": "smoke test gap" }, "content_hash": "sha256:b625d148c8d593bc3fd0e70f49be2f09fc310683ef1f4b69942b382dfaa738ae" }insert knowledge_gaps gap-5ab2a830e60d 4/29/2026, 10:44:37 AM before / after
{ "title": "cal-gap-2", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:fc32f60bb50a0e65813f30eb6a1fcf219ed42710e2008cb1229a88cb36c94453" }insert knowledge_gaps gap-0d4292fc5075 4/29/2026, 10:44:37 AM before / after
{ "title": "cal-gap-1", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:6f9009aa90efced65315f619bee6c350765a72bd3ae0f99891c7bd3f5e892530" }insert market_proposals prop-9c75cc5eef21 4/29/2026, 10:42:03 AM before / after
{ "title": "Market: dispatch-integration", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: dispatch-integration\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "substrate", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:3c13e6bd2c61ac90063ed04d6ead8c6c6a686a0c6a1d1ca621b3ef4a86060210" }insert knowledge_gaps gap-a3458f9507b9 4/29/2026, 10:42:03 AM before / after
{ "title": "dispatch-integration", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:3ff87c60a33d35828cb317ba081ca05e18dfe57c50a69652faa85f9e4533ce9c" }insert knowledge_gaps gap-db5bed8014f6 4/29/2026, 10:42:03 AM before / after
{ "title": "flag-disabled", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:c1b06af4fcd315147ed4106e5c45806bb39cf9442a2dca9f3732fd2b80346935" }insert market_proposals prop-1706c7022183 4/29/2026, 10:42:03 AM before / after
{ "title": "Market: already-promoted", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: already-promoted\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "substrate", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:64964cd1b8b4f55be88da3664974aadad7be109ce0c094b3b5e411423f785d48" }insert knowledge_gaps gap-7808b77b4730 4/29/2026, 10:42:03 AM before / after
{ "title": "already-promoted", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:8a798139ea8931f1623684cb419fbed368efcbfb3525ed664e7a504419c921b2" }insert market_proposals prop-03383ed20839 4/29/2026, 10:42:03 AM before / after
{ "title": "Market: promote-eligible", "content": { "status": "proposed", "rationale": "Funded knowledge gap auto-promoted to market.", "description": "Auto-promoted from funded knowledge_gap.\n\nOriginal gap: promote-eligible\nDescription: x\n\nTriggered at funded_total=60.00 (threshold 50.00, 1 fund signals).", "entity_type": "knowledge_gap", "market_type": "gap_resolution", "proposer_id": "substrate", "proposer_type": "agent", "quorum_required": 3 }, "content_hash": "sha256:5088575beae4facf1184b0a5f6d455042ae865dbbc426147a04105cb7ba534d1" }insert knowledge_gaps gap-a7a83ff94212 4/29/2026, 10:42:03 AM before / after
{ "title": "promote-eligible", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:33f287ac5df2b0061f9159e560005b5adbbd300c0ff1e10213986711d406fdf5" }insert knowledge_gaps gap-ac3b5815cde2 4/29/2026, 10:42:03 AM before / after
{ "title": "below-threshold-gap", "content": { "domain": "test", "description": "x" }, "content_hash": "sha256:cb060b358ff21fcc9f941c42fd9024f6ef1f3d412846ade73988c912f967bed8" }insert hypotheses h-881e06561678 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-tf-1", "content": {}, "content_hash": "sha256:d240c9fd99155981580d66c57235897cae850194fe3ac26b5a37fcf04a8d92df" }insert hypotheses h-7066c8417002 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-tf-0", "content": {}, "content_hash": "sha256:a2766f41a27aa5d04217d4babd83e990c5326914473317906dd1d47c41d85b28" }insert hypotheses h-c6db6c5f6c9a 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-named-1", "content": {}, "content_hash": "sha256:8a6ecb2199eb597ca92115c7aed441753c62320620ce9d94bace2f453f720b47" }insert hypotheses h-6614cd41d158 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-named-0", "content": {}, "content_hash": "sha256:cb0963e24d00ea5be477ce6c70f93116642edefa7d5a35befc5c96e4d599a424" }insert hypotheses h-d8d6ca25e47a 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-busy-1", "content": {}, "content_hash": "sha256:326ea4ef82dfc08a97aa2fc20bd82686c67252cd757ce8db307e5294584e77fb" }insert hypotheses h-71ba3c667fdc 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-busy-0", "content": {}, "content_hash": "sha256:71df9723173ce5755306c3405ba019c4d89dc0e4d902a36a160b1a4f6728d993" }insert hypotheses h-fd5ae1cbd63f 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-one1", "content": {}, "content_hash": "sha256:80ba7f8b8fd405931e155868dd64a45aa82f027c3fe8d22f01850afc67041d7f" }insert hypotheses h-9ad16dbc9b0e 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-low-2", "content": {}, "content_hash": "sha256:9a3be67212218ec29ad701b47bbdaac87d4651a9f61228d5e0127c15385b3f69" }insert hypotheses h-60b3a385a07c 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-low-1", "content": {}, "content_hash": "sha256:4bc44e08416e56237b19e3801009d0e6769a75b85178d33280fd655bad74f9df" }insert hypotheses h-036e70ac5a9b 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-low-0", "content": {}, "content_hash": "sha256:99446f4aa3ff4a0581a9d90065d22e0eaeb9f6a8f212858fcfd58886ccdb222d" }insert hypotheses h-bccef9d272fa 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-high-2", "content": {}, "content_hash": "sha256:c50bc3dd9cd6f1eb07ebd25f09f8dbacb46097d40fe1bfcb9fe1b26a50fb40f7" }insert hypotheses h-7a50e32da70e 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-high-1", "content": {}, "content_hash": "sha256:df356ec7aa1b936eac4b65ad5225b418c113106af9e6649aa1c3832263bb4a42" }insert hypotheses h-3c646af34001 4/29/2026, 10:42:03 AM before / after
{ "title": "skill-prod-high-0", "content": {}, "content_hash": "sha256:a8559e2863e7c52aed6fee35bec384b95cf8ea683f17ff1a329054a7d9ee2aec" }insert senate_proposals senate-e2a0d81ea8c1 4/29/2026, 10:42:02 AM before / after
{ "title": "no-deadline", "content": { "status": "proposed", "description": "no deadline", "proposer_id": "alice", "proposal_type": "config_change", "proposer_type": "human", "quorum_required": 1 }, "content_hash": "sha256:778644f13f779b2bb92633260ea464b40de91b9a9f5cf55ea01168b02720e104" }insert senate_proposals senate-3334ababa853 4/29/2026, 10:42:02 AM before / after
{ "title": "overdue-stale", "content": { "status": "proposed", "description": "sweep test", "proposer_id": "alice", "proposal_type": "config_change", "proposer_type": "human", "quorum_required": 99 }, "content_hash": "sha256:1d0ea22c363b183f22c5c486c924fdfc9664c8ddc9212b078c8d61f297f3b2a8" }insert senate_proposals senate-be74c22acc8d 4/29/2026, 10:42:02 AM before / after
{ "title": "overdue-passable", "content": { "status": "proposed", "description": "sweep test", "proposer_id": "alice", "proposal_type": "config_change", "proposer_type": "human", "quorum_required": 2 }, "content_hash": "sha256:0f24539df7e65bbf9ce64d666d9d76334c058787cf669528efbe6d99f1690f09" }insert senate_proposals senate-2b52d936d3e1 4/29/2026, 10:42:02 AM before / after
{ "title": "future-deadline", "content": { "status": "proposed", "description": "sweep test", "proposer_id": "alice", "proposal_type": "config_change", "proposer_type": "human", "quorum_required": 3 }, "content_hash": "sha256:10ca5be7f25179808c2655b66d314cbe13774fbf50fd72014520b9656e931052" }