Skip to content

perf: skip rewriting files untouched by in-place anonymization#22

Merged
armand0e merged 1 commit into
TeichAI:mainfrom
CompactAIOfficial:perf/anonymize-skip-unchanged
Jul 10, 2026
Merged

perf: skip rewriting files untouched by in-place anonymization#22
armand0e merged 1 commit into
TeichAI:mainfrom
CompactAIOfficial:perf/anonymize-skip-unchanged

Conversation

@CompactAIOfficial

Copy link
Copy Markdown
Contributor

In-place anonymization (teich extract's default post-pass, teich anonymize --in-place) always replaced the destination with the freshly written temp file, even when zero lines changed — every clean trace got rewritten and its mtime churned on every run.

This tracks whether any line was actually modified while streaming; when an in-place run leaves the content identical, the temp file is discarded instead of replacing the destination. Whole-text (non-jsonl) files get the same check. Copy-to-other-destination behavior is unchanged.

Testing

  • pytest tests/test_extract_anonymize_cli.py — 32 passed
  • manual check: clean file's mtime untouched after in-place run, secret-bearing sibling still anonymized

🤖 Generated with Claude Code

In-place anonymization always replaced the destination with the temp
file even when no line changed, rewriting every clean trace and
churning mtimes. Track whether any line was actually modified and drop
the temp file when an in-place run left the content identical; apply
the same check to whole-text (non-jsonl) files.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@armand0e armand0e self-assigned this Jul 10, 2026
@armand0e
armand0e merged commit d062933 into TeichAI:main Jul 10, 2026
3 checks passed
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.

2 participants