Skip to content

[docs] - Align README with layout, install path, and CI test story - #36

Merged
cgfixit merged 2 commits into
mainfrom
cursor/docs-sync-layout-install-64b3
Sep 12, 2026
Merged

cgfixit merged 2 commits into
mainfrom
cursor/docs-sync-layout-install-64b3

Conversation

@cgfixit

@cgfixit cgfixit commented Sep 12, 2026 •

Copy link
Copy Markdown
Owner

Documentation-only sync. Aligns README and project docs with the live package, install contract, CLI, known accelerate/transformers issues, and the real unit-vs-integration CI story. No runtime or test-code changes (including the integration AutoTokenizer mock).

Why

User-facing docs still described a Windows/cmd.exe-only install, an incomplete test tree, Porter/lemmatization stemming, and pytest as if the integration suite were a working required gate. Source and CI say otherwise.

Changes

  • README install/run/dev — Linux/macOS/Windows first-class: python -m venv, python -m pip install -r requirements.txt -c constraints.txt, then python -m pip install -e .. Windows activate/run.bat kept as extras, not the only path.
  • CLI — Documents python -m insight_extractor [file.txt] and the insight-extract console script; outputs write to CWD.
  • Known issues — Same two accelerate errors; live pins already include accelerate>=1.3.0 / constraints.txt 1.14.0. Residual TorchTensorParallelPlugin errors come from a leftover older accelerate, not the current pin set.
  • Test story — Required CI is lint, mypy, pytest tests/unit/ on 3.12+3.13, and a fake-BERT CLI smoke job. Optional tests/integration/ runs only on workflow_dispatch or a push head-commit containing [run-integration]; a PR message alone does not enable it. Those files patch insight_extractor.tokenizer.AutoTokenizer (TYPE_CHECKING-only import) and are not expected to pass on main.
  • Layout / API copy — Unit tree now lists test_extractor.py and test_tokenizer.py; LICENSE present; STEM/FUZZY match stemmer.py; seed_keywords=[] example removed (empty list loads THREAD_SEEDS); MatchInfo.score example corrected to stemmed.
  • SPEC + SECURITY_AUDIT — Live install/CLI contract, current test tree, historical pyproject.toml sketch labeled as such; remediations use python -m pip.
  • constraints.txt comment only — Notes Linux CI + Windows; pins unchanged.
  • docs/CODEX_SETUP_REVIEW.md — Dated addendum so finding 4 is not read as current README state.

Evidence (verified against source, not the old README)

Claim Source
Python >=3.12; unit matrix 3.12 and 3.13 pyproject.toml requires-python; ci.yml python-version: ["3.12", "3.13"]
Install path requirements.txt + -c constraints.txt + pip install -e . requirements.txt, constraints.txt header, pyproject.toml
CLI python -m insight_extractor; script insight-extract __main__.py; [project.scripts]
THREAD_SEEDS = 363; REGEX_PATTERNS = 15 constants.py (counted)
STEM = suffix group at word boundary; FUZZY = \b\w*{kw}\w*\b stemmer.py generate_pattern
Empty/None seed_keywords loads THREAD_SEEDS extractor.py __init__
Required jobs: lint, mypy, unit-tests, smoke-test — not integration ci.yml ci-pass needs:
Integration if: is workflow_dispatch or push head_commit contains [run-integration] ci.yml lines 286–288
AutoTokenizer is TYPE_CHECKING at module scope; runtime import is inside the property tokenizer.py
Integration patches insight_extractor.tokenizer.AutoTokenizer.from_pretrained tests/integration/test_extractor.py, test_e2e.py
test_e2e still passes enable_dynamic / enable_semantic / enable_regex tests/integration/test_e2e.py (unsupported constructor flags)
Live pins accelerate==1.14.0, transformers==4.53.0 constraints.txt
LICENSE exists LICENSE (MIT)

Skipped

  • Unit/lint/mypy/smoke gates — docs-only; no Python runtime change.
  • Integration tests — not run; not repaired. Documented as optional and currently stale instead of changing test code.
  • CLAUDE.md / .codex/ / skill files — agent manuals, not user-facing project docs. .codex/AGENTS.md already states the live accelerate pin and stale integration mocks.
  • No merge.
Open in Web Open in Cursor 

cursoragent and others added 2 commits September 12, 2026 12:05
- Replace Windows-only install/dev blocks with cross-platform python -m pip
  because Linux/macOS and Ubuntu CI are first-class, not cmd.exe-only.
- Document required CI (lint, mypy, unit 3.12/3.13, fake-BERT smoke) vs
  optional integration gated on workflow_dispatch / push [run-integration];
  the suite patches TYPE_CHECKING-only AutoTokenizer and is not expected
  to pass on main.
- Correct stemmer copy (suffix-expansion STEM / substring FUZZY, not
  Porter/lemmatization) and drop seed_keywords=[] which loads THREAD_SEEDS.
- Sync SPEC tree and test story; make SECURITY_AUDIT remediations portable.

Co-authored-by: Chris Grady <cgfixit@users.noreply.github.com>
- Finding 4 still claimed Porter/lemmatization and a missing LICENSE after
  those README items were corrected; add a dated note so the review snapshot
  is not read as current user-facing copy.

Co-authored-by: Chris Grady <cgfixit@users.noreply.github.com>
@cgfixit
cgfixit marked this pull request as ready for review September 12, 2026 12:07
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-12T12:10:47.037373Z 78860f1 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@cgfixit
cgfixit merged commit e5df5ea into main Sep 12, 2026
9 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 78860f14b7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread constraints.txt
@@ -1,5 +1,5 @@
# Pinned versions — known-good, reproducible build
# Tested: Python 3.12 / Windows (R2D2sys) / CPU-only / June 2026
# Tested: Python 3.12+ / Linux CI + Windows / CPU-only

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Validate the pinned set before calling it CI-tested

The new header says this exact constraints set is tested by Linux CI on Python 3.12+, but the dependency-bearing jobs in .github/workflows/ci.yml install with pip install -e . or pip install -e ".[dev]" without -c constraints.txt; they therefore test resolver-selected versions, not these pins, and the matrix covers only 3.12 and 3.13 rather than all 3.12+ releases. Users choosing the recommended pinned installation may consequently rely on an untested combination. Either add a constraints-based CI job or narrow this claim to the environments where the pinned set was actually validated.

AGENTS.md reference: .codex/AGENTS.md:L32-L36

Useful? React with 👍 / 👎.

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