Eugene Sukhodolin
493b7008a2
fix(sync): Update jsonl_file_hash in finalizeExport to prevent spurious warnings ( #1113 )
...
The JSONL file hash mismatch warning was appearing consistently after
git commit operations, even when no actual data inconsistency existed.
Root Cause:
Two code paths export to JSONL but only one updated jsonl_file_hash:
- flushToJSONLWithState() (used by bd update/create): Updated both
jsonl_content_hash AND jsonl_file_hash
- finalizeExport() (used by bd sync --flush-only): Updated only
jsonl_content_hash, NOT jsonl_file_hash
Since validateJSONLIntegrity() checks jsonl_file_hash, any bd command
after a git commit would see a mismatch and trigger the warning.
Steps to Reproduce (before fix):
1. cd /path/to/beads-project
2. bd update -p 3 some-issue-id # Works fine, stores hash H1
3. git add .beads/issues.jsonl && git commit --amend --no-edit
# Pre-commit hook runs bd sync --flush-only
# This updates jsonl_content_hash to H2 but leaves jsonl_file_hash as H1
4. bd update -p 3 some-issue-id # WARNING appears!
# validateJSONLIntegrity() compares file (H2) with jsonl_file_hash (H1)
5. Repeat steps 3-4 indefinitely - warning always appears
The fix adds SetJSONLFileHash() call to finalizeExport(), ensuring both
export paths update the same metadata consistently.
2026-01-15 19:23:09 -08:00
..
2026-01-15 19:23:04 -08:00
2026-01-13 08:41:25 -06:00
2026-01-14 21:57:28 -08:00
2026-01-01 10:51:51 -08:00
2026-01-10 12:43:46 -08:00
2026-01-06 22:18:37 -08:00
2026-01-03 13:25:15 -08:00
2026-01-06 22:18:37 -08:00
2026-01-13 20:58:07 -08:00
2026-01-06 19:05:34 -08:00
2026-01-12 16:39:06 -08:00
2026-01-15 07:55:08 -08:00
2026-01-06 12:52:19 -08:00
2026-01-15 19:23:07 -08:00
2026-01-13 13:22:19 +00:00
2026-01-09 22:57:07 -08:00
2026-01-13 13:28:30 +00:00
2026-01-15 19:22:55 -08:00
2026-01-06 19:37:20 -08:00
2026-01-02 00:02:20 -08:00
2026-01-01 10:46:56 -08:00
2026-01-01 10:46:56 -08:00
2026-01-14 20:50:56 -08:00
2026-01-02 14:01:56 -08:00
2026-01-02 16:00:54 -08:00
2026-01-01 10:53:59 -08:00
2026-01-01 20:06:13 -08:00
2026-01-15 12:44:12 -08:00
2025-12-31 13:14:15 -08:00
2026-01-01 10:48:14 -08:00
2026-01-12 16:38:13 -08:00
2026-01-14 21:47:15 -08:00
2026-01-12 23:51:56 -08:00
2026-01-10 22:50:16 -08:00
2026-01-04 10:53:31 -08:00
2026-01-10 22:50:16 -08:00
2026-01-10 16:28:52 -08:00
2026-01-10 16:31:16 -08:00
2026-01-07 21:27:20 -08:00
2025-12-30 16:49:50 -08:00
2026-01-04 16:16:53 -08:00
2026-01-04 11:14:36 -08:00
2026-01-14 21:42:31 -08:00
2026-01-03 13:22:52 -08:00
2026-01-06 18:59:25 -08:00
2026-01-10 12:43:46 -08:00
2026-01-08 14:32:12 -08:00
2026-01-10 12:08:48 -08:00
2026-01-09 12:02:02 +01:00
2026-01-12 19:42:51 -08:00
2026-01-06 23:31:09 -08:00
2026-01-14 20:36:30 -08:00
2026-01-06 12:52:19 -08:00
2026-01-06 19:05:34 -08:00
2026-01-12 00:45:25 -08:00
2026-01-12 00:45:25 -08:00
2026-01-09 22:53:53 -08:00
2025-12-31 13:14:15 -08:00
2025-12-31 13:14:15 -08:00
2025-12-31 11:39:17 -08:00
2026-01-06 22:18:37 -08:00
2026-01-01 18:17:12 -08:00
2026-01-01 10:53:59 -08:00
2026-01-01 10:51:22 -08:00
2026-01-01 11:05:05 -08:00
2026-01-15 07:55:08 -08:00
2026-01-06 23:40:37 -08:00
2026-01-13 00:46:50 -08:00
2025-12-31 13:14:15 -08:00
2026-01-08 20:50:56 -08:00
2026-01-01 19:46:34 -08:00
2026-01-15 07:55:08 -08:00
2026-01-03 13:27:36 -08:00
2026-01-15 19:23:07 -08:00
2026-01-14 21:57:28 -08:00
2026-01-14 20:50:56 -08:00
2026-01-15 07:55:08 -08:00
2026-01-12 17:29:57 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 11:37:57 -08:00
2026-01-15 11:37:57 -08:00
2026-01-15 19:23:02 -08:00
2026-01-01 10:51:51 -08:00
2026-01-06 19:05:34 -08:00
2025-12-30 16:58:10 -08:00
2025-12-30 16:58:10 -08:00
2026-01-07 20:45:00 -08:00
2026-01-01 14:18:49 -08:00
2026-01-08 20:50:56 -08:00
2026-01-01 20:06:13 -08:00
2026-01-12 02:05:13 -08:00
2026-01-10 12:43:46 -08:00
2026-01-01 23:55:40 -08:00
2026-01-15 19:22:55 -08:00
2026-01-06 22:18:37 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 07:55:08 -08:00
2026-01-10 23:42:49 -08:00
2025-12-31 00:33:11 -08:00
2026-01-10 11:55:33 -08:00
2025-12-31 13:08:41 -08:00
2025-12-31 13:04:19 -08:00
2026-01-08 21:22:17 -08:00
2026-01-08 21:22:17 -08:00
2026-01-02 14:08:22 -08:00
2026-01-02 16:00:54 -08:00
2026-01-02 01:31:19 -08:00
2026-01-06 19:05:34 -08:00
2026-01-04 16:24:18 -08:00
2026-01-04 16:24:18 -08:00
2025-12-31 00:33:11 -08:00
2025-12-31 00:05:53 -08:00
2026-01-01 10:51:51 -08:00
2026-01-07 20:45:40 -08:00
2026-01-15 07:55:08 -08:00
2026-01-07 20:44:16 -08:00
2026-01-01 20:06:13 -08:00
2026-01-08 21:22:17 -08:00
2026-01-06 19:05:34 -08:00
2026-01-15 19:23:07 -08:00
2026-01-06 19:05:34 -08:00
2026-01-04 10:53:31 -08:00
2026-01-04 10:53:31 -08:00
2026-01-06 19:32:20 -08:00
2025-12-31 13:14:15 -08:00
2026-01-06 18:59:25 -08:00
2026-01-07 21:41:29 -08:00
2026-01-08 20:21:02 -08:00
2025-12-31 13:14:15 -08:00
2026-01-13 08:41:25 -06:00
2026-01-08 20:50:56 -08:00
2026-01-13 11:42:30 -08:00
2026-01-04 15:21:36 -08:00
2026-01-03 13:27:36 -08:00
2026-01-09 13:40:52 -08:00
2026-01-09 13:40:52 -08:00
2026-01-15 19:23:07 -08:00
2025-12-30 18:04:26 -08:00
2026-01-15 19:23:07 -08:00
2026-01-15 19:23:07 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 19:23:09 -08:00
2026-01-07 21:27:20 -08:00
2026-01-15 19:22:52 -08:00
2026-01-15 19:22:52 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 19:23:07 -08:00
2026-01-06 12:52:19 -08:00
2026-01-07 21:27:20 -08:00
2026-01-07 21:27:20 -08:00
2026-01-15 08:02:20 -08:00
2026-01-07 21:27:20 -08:00
2026-01-02 00:05:12 -08:00
2026-01-15 07:55:08 -08:00
2026-01-03 12:44:16 -08:00
2026-01-14 20:43:07 -08:00
2026-01-15 07:55:08 -08:00
2026-01-06 18:59:25 -08:00
2026-01-06 18:59:25 -08:00
2025-12-30 17:14:55 -08:00
2026-01-02 01:07:34 -08:00
2026-01-15 07:55:08 -08:00
2026-01-10 13:34:53 -08:00
2026-01-12 01:35:22 -08:00
2026-01-15 07:55:08 -08:00
2026-01-15 07:55:08 -08:00
2026-01-10 22:38:04 -08:00
2026-01-15 07:55:08 -08:00