You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs-hygiene has no proactive, repo-wide scanner for three drift shapes
that the new /re-anchor:point-dont-copy corrector (#249) only catches
reactively, inside a live conversation. This issue proposes adding
detection for them — as new declutter noise shapes, a dedicated scan, or
a reviewer pass — so a repo can be swept for them without a human first
noticing the drift in-session.
The three detection gaps
External-copy blocks. Content copied or paraphrased from a source the
repo does not own — a doc site, a third-party playbook, a tool's own
documentation — that will drift from its upstream. Includes verbatim
quotes, detail paraphrase (drifts the same as verbatim), extracted value
tables, and copied config blocks. Distinct from extract-ssot, which
deduplicates repetition within the repo; this is about copies of an external owner's facts.
Capability enumerations. Closed lists of what something can do — a
hard-coded tool schema, a fixed "the N things this supports" list — in a
durable doc. These go stale the moment the surface evolves; the
discipline is to phrase duties open-ended and name current mechanisms only
as marked examples.
Internal-name coupling. A durable doc (or citation) that references an
internal script or file name where the public invocation contract
(/plugin:skill + args) would do. Internal names are rename blast radius;
the reference breaks silently on the next rename. Adjacent to rename-references (which sweeps after a rename) and audit-encapsulation
(which catches reaching into skill-private surfaces), but neither
proactively flags "this citation targets an internal name that should be
the public contract."
Why proactive detection
point-dont-copy is a reactive corrector: it re-anchors the discipline and
audits the work in flight when a human fires it. That covers a live session
but not a repo-wide sweep — nobody fires a corrector against 200 existing
docs. The docs-hygiene toolkit is where the proactive, classify-the-whole-tree
counterparts live (declutter already classifies five other markdown noise
shapes; extract-ssot scans for duplication). These three shapes have no
proactive home.
Design considerations (not prescriptive)
Boundary precision matters. Each shape has a legitimate look-alike the
detector must NOT flag: an adapted-for-this-repo config, a self-pinned
constraint the repo owns, a dated one-shot research deliverable, an
empirically observed error string (external-copy); a genuinely
fixed/closed set that is the contract (capability enumeration); a contract
identifier that must stay inline (internal-name). A high false-positive
rate makes the scan noise. point-dont-copy's OK/violation boundary table
(feat(re-anchor): add discipline-corrector plugin #249) is a starting rubric for the copy shape.
Placement. Could be new declutter shapes (it already classifies into
Tier 1/2/3), a dedicated scan action, or a read-only reviewer agent —
whichever fits the toolkit's structure best.
Read-only, tiered findings. Consistent with declutter's existing
contract: classify and surface, do not auto-edit.
Filed as part of the round-2 personal-skill graduation; point-dont-copy
(#249) is the reactive corrective, and this issue is the proactive-scan
counterpart it cannot cover.
Summary
docs-hygienehas no proactive, repo-wide scanner for three drift shapesthat the new
/re-anchor:point-dont-copycorrector (#249) only catchesreactively, inside a live conversation. This issue proposes adding
detection for them — as new
declutternoise shapes, a dedicated scan, ora reviewer pass — so a repo can be swept for them without a human first
noticing the drift in-session.
The three detection gaps
repo does not own — a doc site, a third-party playbook, a tool's own
documentation — that will drift from its upstream. Includes verbatim
quotes, detail paraphrase (drifts the same as verbatim), extracted value
tables, and copied config blocks. Distinct from
extract-ssot, whichdeduplicates repetition within the repo; this is about copies of an
external owner's facts.
hard-coded tool schema, a fixed "the N things this supports" list — in a
durable doc. These go stale the moment the surface evolves; the
discipline is to phrase duties open-ended and name current mechanisms only
as marked examples.
internal script or file name where the public invocation contract
(
/plugin:skill+ args) would do. Internal names are rename blast radius;the reference breaks silently on the next rename. Adjacent to
rename-references(which sweeps after a rename) andaudit-encapsulation(which catches reaching into skill-private surfaces), but neither
proactively flags "this citation targets an internal name that should be
the public contract."
Why proactive detection
point-dont-copyis a reactive corrector: it re-anchors the discipline andaudits the work in flight when a human fires it. That covers a live session
but not a repo-wide sweep — nobody fires a corrector against 200 existing
docs. The docs-hygiene toolkit is where the proactive, classify-the-whole-tree
counterparts live (
declutteralready classifies five other markdown noiseshapes;
extract-ssotscans for duplication). These three shapes have noproactive home.
Design considerations (not prescriptive)
detector must NOT flag: an adapted-for-this-repo config, a self-pinned
constraint the repo owns, a dated one-shot research deliverable, an
empirically observed error string (external-copy); a genuinely
fixed/closed set that is the contract (capability enumeration); a contract
identifier that must stay inline (internal-name). A high false-positive
rate makes the scan noise.
point-dont-copy's OK/violation boundary table(feat(re-anchor): add discipline-corrector plugin #249) is a starting rubric for the copy shape.
decluttershapes (it already classifies intoTier 1/2/3), a dedicated scan action, or a read-only reviewer agent —
whichever fits the toolkit's structure best.
declutter's existingcontract: classify and surface, do not auto-edit.
Filed as part of the round-2 personal-skill graduation;
point-dont-copy(#249) is the reactive corrective, and this issue is the proactive-scan
counterpart it cannot cover.