chore: baseline snapshot — prior-session work + ha-consistency-invariants spec family
Pre-existing uncommitted work: ha-repl-hardening payload data plane (7.x), heartbeat liveness fix (Req 1.3), connection-reuse ASAN fixes, doc cleanup. New: ha-consistency-invariants umbrella (requirements/design/research) and its four implementation sub-specs (specs generated via batch, cross-spec review applied), steering roadmap + product.md Raft+CP decision.
This commit is contained in:
parent
084244941b
commit
06135954ff
88 changed files with 25611 additions and 5285 deletions
|
|
@ -5363,7 +5363,7 @@
|
|||
"error_message": "UPDATE_RESVALS dequeue writes worker resval at index 0 unconditionally instead of resolving resource idx by name",
|
||||
"file": "src/scheduler/src/scheduler.c",
|
||||
"root_cause": "zarray_put(&w->resvals, 0, rv->val) hardcodes index 0; worker resvals are indexed by resource idx (see schedobj.c:291)",
|
||||
"fix": "NOT YET FIXED — found during scheduler-controller-msg-gap validation gap analysis (research.md G-1). Fix: key_find rv->name in sched->resmgr, put at r->idx",
|
||||
"fix": "FIXED 2026-06-10: UPDATE_RESVALS now resolves rv->name via key_find on sched->resmgr and writes to r->idx (matching UPDATE_RESVALS_FULL pattern) instead of hardcoding index 0.",
|
||||
"tags": [
|
||||
"scheduler",
|
||||
"resvals",
|
||||
|
|
@ -5373,7 +5373,7 @@
|
|||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-09T00:00:00Z"
|
||||
"last_seen": "2026-06-10T17:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-336",
|
||||
|
|
@ -5381,7 +5381,7 @@
|
|||
"error_message": "XCE_SCHED_OP_UPDATE_RESOURCES cannot update existing resources; makeResource returns NULL/EEXIST and return value is silently ignored",
|
||||
"file": "src/scheduler/src/scheduler.c",
|
||||
"root_cause": "makeResource_ in src/lib/resobj.c rejects duplicates with EEXIST; dequeue case ignores NULL return, so 'add or update' (EARS-UB-1.1) is only 'add'",
|
||||
"fix": "NOT YET FIXED — found during scheduler-controller-msg-gap validation gap analysis (research.md G-2). Fix: on EEXIST mutate existing resource fields and log failures",
|
||||
"fix": "FIXED 2026-06-10: UPDATE_RESOURCES now checks makeResource return; on NULL (EEXIST) looks up existing resource by name and updates valtype/ordtype/flags/interval fields in place (add-or-update semantics).",
|
||||
"tags": [
|
||||
"scheduler",
|
||||
"resources",
|
||||
|
|
@ -5392,7 +5392,7 @@
|
|||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-09T00:00:00Z"
|
||||
"last_seen": "2026-06-10T17:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-337",
|
||||
|
|
@ -5762,6 +5762,832 @@
|
|||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T03:55:44.698Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-359",
|
||||
"timestamp": "2026-06-10T04:16:25.052Z",
|
||||
"error_message": "Missing guard clause",
|
||||
"file": "src/scheduler/src/scheduler.c",
|
||||
"root_cause": "No early return/throw for edge case: r == NULL",
|
||||
"fix": "Added guard clause: if (r == NULL)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"guard-clause",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T04:16:28.320Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-360",
|
||||
"timestamp": "2026-06-10T04:17:09.223Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/scheduler/src/scheduler.c",
|
||||
"root_cause": "4 lines replaced/restructured",
|
||||
"fix": "Rewrote 4→6 lines (4 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T04:17:09.223Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-361",
|
||||
"timestamp": "2026-06-10T04:47:09.048Z",
|
||||
"error_message": "Wrong condition in logic",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "Condition was: if (opcode == OPCode_requestVote || opcode == OPCode_p)",
|
||||
"fix": "Changed to: if (opcode == OPCode_requestVote ||\n opcode)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"logic-fix",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T04:47:09.048Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-353",
|
||||
"timestamp": "2026-06-10T17:30:00Z",
|
||||
"error_message": "Config push silently rejected when standby is in CTRL_ELECTING: ha_dispatch_gate only allows requestVote/probeConfigTag, returning -E_XCE_ERR_NOT_READY for all other opcodes. If liveness poll fires during election window, any incoming config push is discarded.",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "CTRL_ELECTING gate in ha_dispatch_gate (ha.c:1464) allowed only vote/probe opcodes. Config push from primary arriving during the ELECTING window (after liveness-poll-triggered failover, before election result) was rejected with -E_XCE_ERR_NOT_READY (10013). Standby never saved config, leaving conf dir empty.",
|
||||
"fix": "FIXED 2026-06-10: Added OPCode_hello, OPCode_nop, OPCode_replConfigPush, OPCode_walCatchupEntry, OPCode_snapshotTransfer to CTRL_ELECTING allowlist. A campaigning node must accept replication from the current primary to stay current for both win and loss paths. Controller suite green.",
|
||||
"tags": [
|
||||
"ha",
|
||||
"dispatch-gate",
|
||||
"election",
|
||||
"config-replication",
|
||||
"silent-failure"
|
||||
],
|
||||
"related_bugs": [
|
||||
"bug-335",
|
||||
"bug-336"
|
||||
],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T17:30:00Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-363",
|
||||
"timestamp": "2026-06-10T04:58:30.903Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "4 lines replaced/restructured",
|
||||
"fix": "Rewrote 9→15 lines (4 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T04:58:30.903Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-364",
|
||||
"timestamp": "2026-06-10T06:26:24.340Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": "src/controller/CLAUDE.md",
|
||||
"root_cause": "Had `CTRL_ELECTING`",
|
||||
"fix": "Changed to `CTRL_INIT`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T06:26:24.340Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-365",
|
||||
"timestamp": "2026-06-10T06:32:15.362Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/cluster.c",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 8→13 lines (3 removed) | Also: /* Req 4.1: ctrlhello counts as primary activity —; if ((ctrl_role_t)atomic_load_explicit(&c->ha.role,",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T06:35:56.354Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-366",
|
||||
"timestamp": "2026-06-10T06:32:18.661Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/config_repl.c",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 6→12 lines (3 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T06:32:18.661Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-367",
|
||||
"timestamp": "2026-06-10T07:56:21.347Z",
|
||||
"error_message": "Missing error handling in XCE_TESTING",
|
||||
"file": "src/controller/testsuite/test_repl_unit.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block | Also: /* =========================================================; * Task 1.1: repl_broadcast send path tests",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T07:57:02.036Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-368",
|
||||
"timestamp": "2026-06-10T07:57:40.792Z",
|
||||
"error_message": "Wrong reference: WAL_JOB should be WAL_JOB_SUBMIT",
|
||||
"file": "src/controller/testsuite/test_repl_unit.c",
|
||||
"root_cause": "Used \"WAL_JOB\" instead of \"WAL_JOB_SUBMIT\"",
|
||||
"fix": "Changed WAL_JOB → WAL_JOB_SUBMIT",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-reference",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T07:57:40.792Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-369",
|
||||
"timestamp": "2026-06-10T07:58:15.167Z",
|
||||
"error_message": "Missing error handling in XCE_TESTING",
|
||||
"file": "src/controller/repl.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T07:58:15.167Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-370",
|
||||
"timestamp": "2026-06-10T07:58:38.900Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/repl.c",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 42→65 lines (3 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T07:58:38.900Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-371",
|
||||
"timestamp": "2026-06-10T07:59:24.268Z",
|
||||
"error_message": "Wrong reference: DEBUG3 should be TRACE",
|
||||
"file": "src/controller/repl.c",
|
||||
"root_cause": "Used \"DEBUG3\" instead of \"TRACE\"",
|
||||
"fix": "Changed DEBUG3 → TRACE",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-reference",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T07:59:24.268Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-372",
|
||||
"timestamp": "2026-06-10T08:42:26.121Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/ha.h",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 12→16 lines (3 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"h"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T08:42:26.121Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-373",
|
||||
"timestamp": "2026-06-10T08:45:30.400Z",
|
||||
"error_message": "Wrong reference: request should be ep",
|
||||
"file": "src/controller/cluster.c",
|
||||
"root_cause": "Used \"request\" instead of \"ep\"",
|
||||
"fix": "Changed request → ep",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-reference",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T08:45:30.400Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-374",
|
||||
"timestamp": "2026-06-10T08:47:48.296Z",
|
||||
"error_message": "Missing error handling in unknown",
|
||||
"file": "src/controller/testsuite/test_ha_role.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block | Also: /* Task 3.3 (ha-wal-replication): dispatch gate standby-role; RUN_TEST(test_dispatch_gate_allows_wal_catchup_in_standby_ro",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T08:48:00.267Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-375",
|
||||
"timestamp": "2026-06-10T08:50:27.397Z",
|
||||
"error_message": "Missing error handling in struct",
|
||||
"file": "src/include/typemap.h",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"h"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T08:50:27.397Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-376",
|
||||
"timestamp": "2026-06-10T09:17:35.218Z",
|
||||
"error_message": "Wrong condition in logic",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "Condition was: if (opcode == OPCode_nop)",
|
||||
"fix": "Changed to: if (rep_s.data_which == RequestReply_data_walackreplym)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"logic-fix",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T09:17:35.218Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-377",
|
||||
"timestamp": "2026-06-10T09:59:08.979Z",
|
||||
"error_message": "Missing error handling in XCE_TESTING",
|
||||
"file": "src/controller/testsuite/test_p2_integration.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T09:59:08.979Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-378",
|
||||
"timestamp": "2026-06-10T10:02:00.000Z",
|
||||
"error_message": "AddressSanitizer: global-buffer-overflow in dataq_enq via xce_wal_batch_req_raw <- repl_broadcast <- persist_wal_async",
|
||||
"file": "src/controller/testsuite/test_p2_integration.c",
|
||||
"root_cause": "Tests 8 and 9 declared ep_a/ep_b/g_ep9_a/g_ep9_b as 'static int' (4 bytes) and passed them to repl_add_standby without (void*) cast. repl_broadcast then called xce_wal_batch_req_raw(s->ep, ...) using the stored int* as a real network endpoint, causing an 8-byte read past the 4-byte int. Neither test installed repl_broadcast_send_hook to intercept the call.",
|
||||
"fix": "Added #include typemap.h; added extern repl_broadcast_send_hook declaration guarded by XCE_TESTING; added p2_drop_send_hook no-op; installed hook around persist_wal_sync_append in tests 8 and 9; fixed missing (void*) casts on all four ep variables",
|
||||
"tags": [
|
||||
"asan",
|
||||
"global-buffer-overflow",
|
||||
"repl_broadcast",
|
||||
"unit-test",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T10:02:00.000Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-379",
|
||||
"timestamp": "2026-06-10T10:36:53.011Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/testsuite/test_p2_integration.c",
|
||||
"root_cause": "4 lines replaced/restructured",
|
||||
"fix": "Rewrote 50→72 lines (4 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T10:36:53.011Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-380",
|
||||
"timestamp": "2026-06-10T10:37:21.924Z",
|
||||
"error_message": "Wrong reference: test_catchup_full_lifecycle_integration should be test_single_node_committed_lsn_unchanged",
|
||||
"file": "src/controller/testsuite/test_p2_integration.c",
|
||||
"root_cause": "Used \"test_catchup_full_lifecycle_integration\" instead of \"test_single_node_committed_lsn_unchanged\"",
|
||||
"fix": "Changed test_catchup_full_lifecycle_integration → test_single_node_committed_lsn_unchanged",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-reference",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T10:37:21.924Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-381",
|
||||
"timestamp": "2026-06-10T10:37:49.028Z",
|
||||
"error_message": "Missing error handling in unknown",
|
||||
"file": "src/controller/testsuite/test_repl_unit.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T10:37:49.028Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-382",
|
||||
"timestamp": "2026-06-10T11:54:19.749Z",
|
||||
"error_message": "Function not marked async",
|
||||
"file": ".kiro/specs/ha-wal-replication/tasks.md",
|
||||
"root_cause": "Function uses await but wasn't declared async",
|
||||
"fix": "Added async modifier",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"async-fix",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T11:54:19.749Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-383",
|
||||
"timestamp": "2026-06-10T14:12:27.285Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": ".kiro/steering/product.md",
|
||||
"root_cause": "5 lines replaced/restructured",
|
||||
"fix": "Rewrote 13→22 lines (5 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T14:12:27.286Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-384",
|
||||
"timestamp": "2026-06-10T14:13:01.581Z",
|
||||
"error_message": "Function not marked async",
|
||||
"file": ".kiro/steering/tech.md",
|
||||
"root_cause": "Function uses await but wasn't declared async",
|
||||
"fix": "Added async modifier",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"async-fix",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T14:13:01.581Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-385",
|
||||
"timestamp": "2026-06-10T14:38:11.810Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "CLAUDE.md",
|
||||
"root_cause": "4 lines replaced/restructured",
|
||||
"fix": "Rewrote 5→5 lines (4 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T14:38:11.810Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-386",
|
||||
"timestamp": "2026-06-10T14:43:53.161Z",
|
||||
"error_message": "Function not marked async",
|
||||
"file": "CLAUDE.md",
|
||||
"root_cause": "Function uses await but wasn't declared async",
|
||||
"fix": "Added async modifier",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"async-fix",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T14:43:53.161Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-387",
|
||||
"timestamp": "2026-06-10T14:53:19.493Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/CLAUDE.md",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 6→5 lines (3 removed) | Also: ### Controllers; - Struct: `type {Resource}Controller struct{}`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T14:55:18.463Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-388",
|
||||
"timestamp": "2026-06-10T14:54:18.503Z",
|
||||
"error_message": "Function not marked async",
|
||||
"file": "src/controller/CLAUDE.md",
|
||||
"root_cause": "Function uses await but wasn't declared async",
|
||||
"fix": "Added async modifier",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"async-fix",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-10T14:54:53.661Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-389",
|
||||
"timestamp": "2026-06-11T02:46:08.749Z",
|
||||
"error_message": "Wrong reference: signal should be stdio",
|
||||
"file": "src/lib/delay.c",
|
||||
"root_cause": "Used \"signal\" instead of \"stdio\"",
|
||||
"fix": "Changed signal → stdio",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-reference",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T02:46:08.749Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-390",
|
||||
"timestamp": "2026-06-11T03:30:54.341Z",
|
||||
"error_message": "Missing error handling in XCE_TESTING",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T03:30:54.341Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-391",
|
||||
"timestamp": "2026-06-11T03:41:14.912Z",
|
||||
"error_message": "Missing guard clause",
|
||||
"file": "src/controller/ha.c",
|
||||
"root_cause": "No early return/throw for edge case: !ha",
|
||||
"fix": "Added guard clause: if (!ha)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"guard-clause",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T03:41:14.912Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-392",
|
||||
"timestamp": "2026-06-11T03:46:02.642Z",
|
||||
"error_message": "Missing guard clause",
|
||||
"file": "src/controller/persist.c",
|
||||
"root_cause": "No early return/throw for edge case: sync_rc_out",
|
||||
"fix": "Added guard clause: if (sync_rc_out)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"guard-clause",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T03:46:02.642Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-393",
|
||||
"timestamp": "2026-06-11T03:47:03.826Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": "src/controller/job.c",
|
||||
"root_cause": "2 lines replaced/restructured",
|
||||
"fix": "Rewrote 15→28 lines (2 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"c"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T03:47:03.826Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-394",
|
||||
"timestamp": "2026-06-11T05:09:37.037Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Had `persist_truncate_wal_above`",
|
||||
"fix": "Changed to `restore_job`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T05:09:37.037Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-395",
|
||||
"timestamp": "2026-06-11T05:10:14.835Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "3 lines replaced/restructured",
|
||||
"fix": "Rewrote 7→7 lines (3 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T05:10:14.835Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-396",
|
||||
"timestamp": "2026-06-10T22:45:00-07:00",
|
||||
"error_message": "Worker job state notifications (OPCode_notify) are permanently lost when the controller dispatch gate rejects them (quorum loss / COMMITTING window): worker never reads replies, never retries, no rejoin resync",
|
||||
"file": "src/worker/src/controller_connector.c, src/lib/xceapi.c, src/controller/cluster.c",
|
||||
"root_cause": "xce_notify is enqueue-and-forget (no cbuf_get); error replies dropped via cbuf_tryput -EAGAIN (xcectx.c:304); xcecd_job_finished return ignored (FIXME at xcecd_worker_utils.c:298); xce_join_req carries no running-job state so rejoin cannot resync",
|
||||
"fix": "NOT YET FIXED - discovered during ha-consistency-invariants gap research; design will add primary-side pending-facts queue (hold uncommitted facts until quorum) + idempotency guards in mark_job_*; see .kiro/specs/ha-consistency-invariants/research.md deep-dive section A",
|
||||
"tags": [
|
||||
"ha",
|
||||
"notify",
|
||||
"silent-data-loss",
|
||||
"worker",
|
||||
"quorum",
|
||||
"ha-consistency-invariants"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-10T22:45:00-07:00"
|
||||
},
|
||||
{
|
||||
"id": "bug-397",
|
||||
"timestamp": "2026-06-11T06:34:28.705Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/requirements.md",
|
||||
"root_cause": "2 lines replaced/restructured",
|
||||
"fix": "Rewrote 3→4 lines (2 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T06:34:28.705Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-398",
|
||||
"timestamp": "2026-06-11T06:35:26.288Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Had `restore_job`",
|
||||
"fix": "Changed to \"irrevocable\"",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T06:35:26.288Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-399",
|
||||
"timestamp": "2026-06-11T06:43:14.709Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Had 't span syscalls and degrade to serial mode), C ec",
|
||||
"fix": "Changed to 't span syscalls), C ecosystem dead (libitm unmain",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T06:43:14.709Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-400",
|
||||
"timestamp": "2026-06-11T07:23:53.901Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Had \"return quickly\"",
|
||||
"fix": "Changed to `--vcpus`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T07:23:53.901Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-401",
|
||||
"timestamp": "2026-06-11T07:47:34.756Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Had `mark_job_*`",
|
||||
"fix": "Changed to \"pending facts\"",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T07:47:34.756Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-402",
|
||||
"timestamp": "2026-06-11T07:53:43.868Z",
|
||||
"error_message": "Missing error handling in unknown",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/research.md",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T07:53:43.868Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-403",
|
||||
"timestamp": "2026-06-11T08:34:47.868Z",
|
||||
"error_message": "Function not marked async",
|
||||
"file": ".kiro/specs/ha-consistency-invariants/design.md",
|
||||
"root_cause": "Function uses await but wasn't declared async",
|
||||
"fix": "Added async modifier",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"async-fix",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T08:34:47.868Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-404",
|
||||
"timestamp": "2026-06-11T08:46:20.815Z",
|
||||
"error_message": "Missing error handling in unknown",
|
||||
"file": ".kiro/steering/roadmap.md",
|
||||
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
||||
"fix": "Added try/catch block",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"error-handling",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T08:46:20.815Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-405",
|
||||
"timestamp": "2026-06-11T09:47:16.750Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-single-leader-role/design.md",
|
||||
"root_cause": "Had `writable_lsn`",
|
||||
"fix": "Changed to 's \"",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T09:47:16.750Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-406",
|
||||
"timestamp": "2026-06-11T09:49:04.296Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-single-leader-role/tasks.md",
|
||||
"root_cause": "Had \" --exclude-dir=.git --exclude-dir=.kiro --exclude",
|
||||
"fix": "Changed to \" --exclude-dir=.git --exclude-dir=specs --exclude",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T09:49:04.296Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-407",
|
||||
"timestamp": "2026-06-11T10:01:15.181Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-commit-barrier-rollout/design.md",
|
||||
"root_cause": "Had `repl.h`",
|
||||
"fix": "Changed to `entry_lsn`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T10:01:15.181Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-408",
|
||||
"timestamp": "2026-06-11T10:01:39.424Z",
|
||||
"error_message": "Incorrect value in code",
|
||||
"file": ".kiro/specs/ha-convergence-recovery/tasks.md",
|
||||
"root_cause": "Had `-XCE_ERR_NOT_READY`",
|
||||
"fix": "Changed to `OPCode_notify`",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"wrong-value",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 2,
|
||||
"last_seen": "2026-06-11T10:02:02.349Z"
|
||||
},
|
||||
{
|
||||
"id": "bug-409",
|
||||
"timestamp": "2026-06-11T12:57:17.283Z",
|
||||
"error_message": "Significant refactor of ",
|
||||
"file": ".kiro/steering/roadmap.md",
|
||||
"root_cause": "4 lines replaced/restructured",
|
||||
"fix": "Rewrote 6→8 lines (4 removed)",
|
||||
"tags": [
|
||||
"auto-detected",
|
||||
"refactor",
|
||||
"md"
|
||||
],
|
||||
"related_bugs": [],
|
||||
"occurrences": 1,
|
||||
"last_seen": "2026-06-11T12:57:17.283Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue