Repository navigation
docs: #1103 round 9 -- finish the Protocol/ProtocolBase sweep, add const as a commit-type - #2431
Conversation
|
Review: NEEDS CHANGES at
Non-blocking: the PR body's Everything else verified independently: diff scoped to exactly the 4 claimed files ( |
|
Coverage: 94.44% (unit tier, Python 3.15,
Per-file detail: the |
…nst as a commit-type * pcapkit/protocols/protocol.py: flip the 11 remaining unqualified `ProtocolBase.<member>` cross-references to `Protocol.<member>`, display and target both, matching the mechanical flip #2420/#2422/#2428 already did for 37+ other sites. The `__init_subclass__` sites and `register`'s `Raises:` clause are untouched, per the existing #2316/#1016 carve-out. * pcapkit/protocols/transport/transport.py: same flip for the `ProtocolBase._lookup_registry` reference #2421 added after #2422's sweep had already run, so it was left behind. * CONTRIBUTING.md, .github/PULL_REQUEST_TEMPLATE.md: add `const` to the valid commit-type list and PR template checkbox. process.rst already documented `const` as a Type label; CONTRIBUTING.md and the template had not caught up. `tests/project/test_pr_template_commit_types_1102_unit.py` derives its expected set from CONTRIBUTING.md, so no test change was needed. * tests/project/test_conventions_doc_claims.py: drop the now-false "const has no tickbox" example from test_the_page_names_every_commit_type_the_template_ticks's docstring -- the template gained one above -- and restate why the check is one-way without relying on that example. * docs/source/conf.py's two "Sphinx 9.1" comments were re-verified against the pinned toolchain (Sphinx 9.2.0, per docs/requirements.txt) by instrumenting each code path directly: autodoc still hands `is_enum_member` the plain int for an enum member, and still prefers a pass-through `__new__` over `__init__` for a class signature. Both comments are accurate at 9.2.0 and left as is. Prose-only: an AST-structure diff (docstrings stripped) against origin/main is identical for both touched .py files. `make -C docs html` under the pinned toolchain is warning-for-warning identical to a main build (1 pre-existing, unrelated `TransType` ambiguity). `tests/project/` is failure-for-failure identical to main (234 failed/11 errors, all pre-existing and environmental, unrelated to this change; 2010 passed either way).
57349ef to
da480c4
Compare
|
Review: GOOD TO GO at Both non-blocking items left as-is — both were explicitly optional in the last round's verdict. |
|
Correction to my own GOOD TO GO comment: I said both non-blocking items were left as-is. That's wrong for one of them — the worker did soften the |
Summary
Round 9 of the whole-repo prose sweep (#1103) -- a scoped pass over exactly the 4 items left outstanding from round 8 (#2428), not a fresh whole-repo sweep.
pcapkit/protocols/protocol.py: flipped the 11 remaining unqualifiedProtocolBase.<member>cross-references toProtocol.<member>, display and target both -- the same mechanical flip docs: prefer Protocol over ProtocolBase in cross-references, per the owner's #1103 ruling #2420/docs: retarget Protocol/ProtocolBase cross-references to match the #1103 display rule #2422/docs: #1103 round 8 -- finish the Protocol/ProtocolBase cross-reference sweep, fix other prose drift #2428 already did for 37+ other sites. Re-verified the carve-out list against the current file: the 2__init_subclass__sites (Protocolgenuinely overrides it) andregister'sRaises:clause (named by docs(protocols): register's Raises name Protocol in some layers, ProtocolBase in others #2316/fix(foundation): registrar error messages and type hints name the public class, not the Base the guard checks #1016, test-locked bytests/protocols/test_register_class_guard_unit.py) are untouched.pcapkit/protocols/transport/transport.py: same flip for theProtocolBase._lookup_registryreference fix(reassembly): the deferred TCP analyser dispatches on AppType, not bare ports #2421 added after docs: retarget Protocol/ProtocolBase cross-references to match the #1103 display rule #2422's sweep had already run, so it was the one site left behind.CONTRIBUTING.md/.github/PULL_REQUEST_TEMPLATE.md: addedconstto the valid commit-type list and the PR template checkbox.docs/source/contributing/conventions/process.rstalready documentedconstas a Type label;CONTRIBUTING.mdand the template simply hadn't caught up.tests/project/test_pr_template_commit_types_1102_unit.pyderives its expected set dynamically fromCONTRIBUTING.md, so no test change was needed -- it goes green with these two edits alone. Also fixedtests/project/test_conventions_doc_claims.py's now-false "consthas no tickbox" docstring example, caught in review. (const:as a scope is in history via fix(const): accept RFC 2113's Router Alert 0 and IPX's own socket 0 #503/fix(const):; as a commit type prefix it has no precedent onmaintoday -- the owner's ruling to add it stands on its own, not on prior usage.)docs/source/conf.py's two "Sphinx 9.1" comments were re-verified against the pinned toolchain (Sphinx==9.2.0, perdocs/requirements.txt) rather than assumed stale: instrumented each code path directly (temporarily, not committed) and confirmed autodoc still handsis_enum_memberthe plainintfor an enum member, and still prefers a pass-through__new__over__init__for a class signature (FTPrenders(*args, **kwargs)with the workaround disabled). Both comments are accurate at 9.2.0 -- left unchanged.No executable code changed -- every
.pyedit is inside a docstring. Verified with an AST-structure diff (docstrings stripped) againstorigin/mainfor both touched files: identical.Test plan
make pylint/make mypy/make isort-- not run (prose-only change, no code touched)make testequivalent: rantests/project/in full on this branch and on a cleanmaincheckout under the same toolchain. Failure/error sets are byte-for-byte identical (234 failed/11 errors, all pre-existing and environmental -- subprocess tests that can't resolveutil/_actionsin this sandbox -- 2010 passed either way). Also built docs with the pinned toolchain (Sphinx==9.2.0) on this branch and onmain: both produce exactly the same 1 pre-existing, unrelated warning (TransTypecross-reference ambiguity).What is the purpose of your pull request?
docs-- documentation onlyRefs #1103.