Skip to content

chore: fix doc paths and drift, drop unused mypy overrides, ignore tool caches - #40

Merged
dsmcewan merged 2 commits into
mainfrom
claude/review-cleanup-nuhys7
Sep 24, 2026
Merged

dsmcewan merged 2 commits into
mainfrom
claude/review-cleanup-nuhys7

Conversation

@dsmcewan

@dsmcewan dsmcewan commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

What changed

  • FRAGMENTS.md: six references to layers/<module>.py now read convergence/layers/<module>.py. The bare paths do not exist from the repo root; README received the same fix in a1719e6.
  • pyproject.toml: removed pexpect.* and wexpect.* from the mypy ignore_missing_imports override list. Nothing imports either module, and mypy itself reported the entries as unused.
  • .gitignore: added .mypy_cache/ and .ruff_cache/, both created by the CI-mandated tools.
  • README.md: "Fourteen data files" now says fourteen corpus files and mentions the adversarial, holdout and regression sets the tests use (34 tracked JSON files in total); the layout block lists them. The Run section gains the --db-table, --db-limit, --summary, --sender and --seq flags from demo.py (each example was run).
  • .env.example: added CONVERGENCE_MAX_BODY_BYTES and CONVERGENCE_LLM_TIMEOUT_S, both read by web/server.py, with their defaults.
  • ENGINEERING.md: "the SDK is touched in exactly one file (adapters/)" now says vendor SDKs are imported only inside convergence/adapters/, one module per backend (verified by grep).

Verification

Same commands as .github/workflows/ci.yml, run on the final head:

ruff check .                                   All checks passed
mypy convergence web                           Success: no issues (unused-section note gone)
pytest -q                                      272 passed
pytest --cov=convergence --cov=web --cov-fail-under=80   84.92%, gate met
python -m web.build && git diff --exit-code web/site/data/   no drift

The claude-review check fails for a reason outside this diff; see the PR comment (repository OAuth token).

Left for a maintainer

  • web/VERIFICATION.md test counts are stale versus the current suite (it cites 173 deterministic tests; there are 272). It reads as a point-in-time evidence record, so it was not rewritten.
  • The llm extra in pyproject lists anthropic and openai only; requirements.txt also lists google-generativeai and pywinpty. Whether the extra should match is a packaging decision.
  • docs/plans/* and docs/specs/* are not linked from anywhere outside docs/.

🤖 Generated with Claude Code

https://claude.ai/code/session_01U142aAXSzf4pUt89HSvXTH

…re tool caches

- FRAGMENTS.md pointed at layers/<x>.py, which does not exist from the
  repo root; the modules live under convergence/layers/. README got the
  same fix earlier.
- mypy reported the pexpect.*/wexpect.* override entries as unused
  (nothing imports either); remove them so the note goes away.
- Ignore .mypy_cache/ and .ruff_cache/, both created by the CI checks.

Verified: ruff check ., mypy convergence web, pytest (272 passed,
84.92% coverage), and the web/site data drift check all pass.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U142aAXSzf4pUt89HSvXTH

Copy link
Copy Markdown
Owner Author

CI status on 586b8c3: the test (3.10/3.11/3.12) matrix is green. The only red check is claude-review (Claude Code Review workflow).

That failure is not this PR's. The job reaches the Claude Code SDK and gets back is_error: true after one turn in about two seconds, with total_cost_usd: 0 and an empty modelUsage, so no model call was ever made. That is the signature of the CLAUDE_CODE_OAUTH_TOKEN repository secret being expired or unset, and the same workflow failed the same way on both runs of PR #39 on 2026-08-25 (runs 8 and 9), before this branch existed. The last successful run was on 2026-08-13.

Nothing in this diff (FRAGMENTS.md, pyproject.toml, .gitignore) can affect it, and no fix exists in-repo since the token is a repository secret. Re-minting it with claude setup-token and updating the secret should restore the check. I do not have permission to re-run the job from this session.


Generated by Claude Code

- README counted "fourteen data files"; data/ also carries the
  adversarial, holdout, and regression sets the tests use. Say so in
  the intro and the layout block.
- Add the --db-table, --db-limit, --summary, --sender, and --seq flags
  from demo.py to the Run examples (each example was run to confirm).
- .env.example: add CONVERGENCE_MAX_BODY_BYTES and
  CONVERGENCE_LLM_TIMEOUT_S, both read by web/server.py, with their
  defaults.
- ENGINEERING.md said the SDK is touched "in exactly one file
  (adapters/)"; adapters/ is a directory with one module per backend.

ruff, mypy, pytest (272 passed), and the web data drift check pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U142aAXSzf4pUt89HSvXTH
@dsmcewan dsmcewan changed the title chore: fix FRAGMENTS.md layer paths, drop unused mypy overrides, ignore tool caches chore: fix doc paths and drift, drop unused mypy overrides, ignore tool caches Sep 24, 2026
@dsmcewan
dsmcewan marked this pull request as ready for review September 24, 2026 15:42
@dsmcewan
dsmcewan merged commit c4720df into main Sep 24, 2026
7 of 15 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