Track failed sync hydration attempts#90
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 17, 2026, 12:48 AM ET / 04:48 UTC. Summary Reproducibility: not applicable. as a bug reproduction: this PR adds a new durable tracking capability. Its terminal proof does provide a high-confidence exercise of the intended failure, query, retry, and resolution workflow. Review metrics: 3 noteworthy metrics.
Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Maintainer decision needed
Security Review detailsBest possible solution: Adopt the ledger as one coherent operational contract only after maintainer sign-off, retaining local full-detail diagnostics, default exclusion from portable stores, redacted opt-in export, and compatibility coverage for older databases. Do we have a high-confidence way to reproduce the issue? Not applicable as a bug reproduction: this PR adds a new durable tracking capability. Its terminal proof does provide a high-confidence exercise of the intended failure, query, retry, and resolution workflow. Is this the best way to solve the issue? Yes technically: the ledger directly addresses the linked issue and now handles coverage and portable-data privacy coherently. Final acceptance remains a product decision because the implementation creates permanent schema and public-interface commitments. AGENTS.md: unclear because the file could not be read completely. Codex review notes: model internal, reasoning high; reviewed against ffae350a35b5. Label changesLabel justifications:
Evidence reviewedAcceptance criteria:
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
Review history (8 earlier review cycles)
|
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. |
# Conflicts: # internal/cli/app.go
|
@clawsweeper re-review Merged main to clear the conflict and wired the new failure ledger into |
|
🦞🧹 I asked ClawSweeper to review this item again. |
# Conflicts: # internal/cli/app_test.go # internal/cli/archive_coverage_test.go # internal/store/archive_coverage.go # internal/store/archive_coverage_test.go # internal/store/store.go # internal/store/store_test.go # internal/syncer/syncer.go
|
@clawsweeper re-review Merged main again to clear the conflict. Focused store, CLI, and syncer tests pass locally. |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com>
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com>
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com>
|
Maintainer repair proof for exact head 3768ea9:
Hosted exact-head checks are green. Contributor credit remains with @TurboTheTurtle in commit trailers and the changelog. |
Closes #84.
Adds a sync-attempt failure ledger for PR hydration errors, exposes it through a read-only CLI command, marks failures resolved after a later successful hydration, and treats pre-ledger read-only databases as an empty ledger instead of failing on a missing table.
Behavior proof:
{"failures":[{"number":90,"operation":"pull_review_threads","error_class":"error","retry_count":0}],"include_resolved":false,"repository":"openclaw/gitcrawl"} {"repository":"openclaw/gitcrawl","pull_requests_synced":1,"pr_details_synced":1,"pr_files_synced":1,"pr_commits_synced":1} {"failures":[{"number":90,"operation":"pull_review_threads","resolved_at":"2026-07-01T19:41:33.14832Z"}],"include_resolved":true,"repository":"openclaw/gitcrawl"}The proof run used the actual CLI against a throwaway local archive and a local GitHub-compatible endpoint that forced one review-thread hydration failure, then allowed the retry to succeed.