Skip to content

feat: recover attribution from AI checkpoints - #1970

Open
svarlamov wants to merge 1 commit into
feat/ai-recovery-ckptsfrom
feat/ai-recovery-ckpts-solver
Open

feat: recover attribution from AI checkpoints#1970
svarlamov wants to merge 1 commit into
feat/ai-recovery-ckptsfrom
feat/ai-recovery-ckpts-solver

Conversation

@svarlamov

Copy link
Copy Markdown
Member

Summary

  • run AI-checkpoint mtime/ctime recovery immediately after Bash recovery and before edge/session/commit fallbacks
  • query nearby candidates once for all unknown files, then rank exact-path matches before same-repository path mismatches (base commit or repo URL)
  • attribute only still-unknown lines, preserving Bash and known-human attribution
  • restore the original checkpoint session/tool/model metadata and emit a marked recovery metric that cannot feed back into recovery

Tests

  • TestRepo coverage for ai_agent, ai_tab, zero-addition candidates, preserved known-human lines, Bash precedence, and rename/path mismatch recovery
  • unit coverage for exact-path ranking and unrelated-repository rejection
  • full task test, task lint, and task fmt

Copy link
Copy Markdown
Member Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@svarlamov
svarlamov marked this pull request as ready for review July 23, 2026 15:48

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant