ci+ops: unified automation rollout#43
Merged
Merged
Conversation
Land the automation plan from /root/.claude/plans/review-this-repo-and-proud-rossum.md as a single commit so each surface stays coherent with its siblings. Local ops - Start-Watcher.ps1: resolve KB_Shared via config.json output_dir first, then OneDriveCommercial / OneDrive / OneDriveConsumer. Task Scheduler no longer silently fails when $env:OneDriveCommercial is unset. - Stop-Watcher.ps1: release the Global\KB_Chunker_Watcher mutex and clean up stale watcher_pid.txt so a crashed run does not block restart. - New Run-WeeklyDedupe.ps1 + Register-DeduperTask.ps1. KB_Weekly_Dedupe.xml rewritten to call the driver script (no more nested powershell -Command double-spawn) and templatized with __REPO_ROOT__ in place of the hardcoded C:\_chunker working directory. CI - Split into test-fast (single 3.12 runner on push/PR) and test-full (3.11/3.12/3.13 matrix on schedule + workflow_dispatch). Cuts Windows runner minutes ~3x on PR feedback while keeping nightly compat coverage. - Add ruff lint step (continue-on-error for now). - Add explicit `pytest -m smoke` gate so a broken smoke test fails CI even when the main run collects no tests. Smoke test - tests/test_smoke.py replaces `assert True` with an end-to-end pipeline test: chunk_and_tag.process_file + ChunkerDatabase.log_processing against a temp directory. Stdlib-only, runs on Linux in <50ms. - New tests/fixtures/smoke_sample.md fixture. - pytest.ini registers the `smoke` marker. Dependabot + PR review - Group pip and github-actions patch/minor bumps into one PR per week. - New dependabot-automerge.yml auto-merges patch/minor Dependabot PRs once CI is green; majors still need human review. - CODEOWNERS: default to single reviewer; keep both-maintainer rule on config.json, chroma_db/, 03_archive/, 04_output/, requirements.txt, and .github/ to protect the guardrails. npm - Add `test`, `test:smoke`, `kb:register:watcher`, `kb:register:dedupe`.
racmac57
pushed a commit
that referenced
this pull request
Apr 22, 2026
The previous two commits on this branch shipped files with cascading indent corruption. yaml.safe_load rejects ci.yml outright, so GitHub silently skipped this workflow — that's why only the `automerge` job appeared on PR #50 and `test-fast` never ran. Merging as-is would have overwritten the working ci.yml on main and disabled CI repo-wide. - .github/workflows/ci.yml: rewritten from the post-#43 main baseline, with `continue-on-error: true` removed from the Lint (ruff) step (the one intended change of this PR). - ruff.toml: rewritten with clean indentation and an ignore list that actually covers every rule currently tripped by the repo (E402/E501/E722/E741/F401/F541/F811/F821/F841/W292). `ruff check .` now reports "All checks passed!" on HEAD. F821 stays ignored deliberately — it flags 4 pre-existing latent bugs (missing imports of TaskCoordinator / process_file_task in enhanced_watchdog.py and an undefined module-level `config` in langchain_rag_handler.py). Those want their own PR; removing F821 from the ignore list without fixing them would break this step immediately. Follow-up (separate PRs): * fix the 4 F821 sites * shrink the ignore list (118 of 210 findings auto-fix with `ruff check --fix`)
racmac57
added a commit
that referenced
this pull request
Apr 22, 2026
* ci: add ruff.toml config and promote lint to blocking Added linter configuration for chunker_Web with specific rules and exclusions. * ci: remove continue-on-error from ruff lint step (make blocking) * docs: add Windows shakedown runbook (4 tests, preconditions, result table) This document outlines the manual verification process for Windows-side CI rows, including preconditions, tests, expected outputs, and result recording. * fix(ci): repair corrupted ci.yml + widen ruff ignore baseline The previous two commits on this branch shipped files with cascading indent corruption. yaml.safe_load rejects ci.yml outright, so GitHub silently skipped this workflow — that's why only the `automerge` job appeared on PR #50 and `test-fast` never ran. Merging as-is would have overwritten the working ci.yml on main and disabled CI repo-wide. - .github/workflows/ci.yml: rewritten from the post-#43 main baseline, with `continue-on-error: true` removed from the Lint (ruff) step (the one intended change of this PR). - ruff.toml: rewritten with clean indentation and an ignore list that actually covers every rule currently tripped by the repo (E402/E501/E722/E741/F401/F541/F811/F821/F841/W292). `ruff check .` now reports "All checks passed!" on HEAD. F821 stays ignored deliberately — it flags 4 pre-existing latent bugs (missing imports of TaskCoordinator / process_file_task in enhanced_watchdog.py and an undefined module-level `config` in langchain_rag_handler.py). Those want their own PR; removing F821 from the ignore list without fixing them would break this step immediately. Follow-up (separate PRs): * fix the 4 F821 sites * shrink the ignore list (118 of 210 findings auto-fix with `ruff check --fix`) --------- Co-authored-by: Claude <noreply@anthropic.com>
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Land the automation plan from /root/.claude/plans/review-this-repo-and-proud-rossum.md
as a single commit so each surface stays coherent with its siblings.
Local ops
then OneDriveCommercial / OneDrive / OneDriveConsumer. Task Scheduler
no longer silently fails when $env:OneDriveCommercial is unset.
clean up stale watcher_pid.txt so a crashed run does not block restart.
rewritten to call the driver script (no more nested powershell -Command
double-spawn) and templatized with REPO_ROOT in place of the
hardcoded C:_chunker working directory.
CI
(3.11/3.12/3.13 matrix on schedule + workflow_dispatch). Cuts Windows
runner minutes ~3x on PR feedback while keeping nightly compat coverage.
pytest -m smokegate so a broken smoke test fails CIeven when the main run collects no tests.
Smoke test
assert Truewith an end-to-end pipelinetest: chunk_and_tag.process_file + ChunkerDatabase.log_processing
against a temp directory. Stdlib-only, runs on Linux in <50ms.
smokemarker.Dependabot + PR review
once CI is green; majors still need human review.
config.json, chroma_db/, 03_archive/, 04_output/, requirements.txt,
and .github/ to protect the guardrails.
npm
test,test:smoke,kb:register:watcher,kb:register:dedupe.