Repository navigation
Description
Refs: #7292
Outcome
28 passages in 14 files state a fact an external source owns. Rewrite each as a pointer to the live upstream section, or remove it, so the next upstream change cannot leave a stale copy here. Plugins: knowledge, context-guard, disk-hygiene, computer-use.
Done when
- Every row below is fixed: the restated value is deleted, the local decision stays in this repository's own words, and the pointer goes to the exact upstream section with an as-of date and a recheck trigger, per
.claude/rules/skill-bodies-state-current-rules.md. A record beside a restated value does not fix it. A row marked Remove has no local dependency on the fact. - The PR passes
check-stamps.sh --trigger-less(plugins/attribution/skills/audit/scripts/check-stamps.sh) on the files it touches. - Each touched plugin has a changelog fragment.
Rows
knowledge
docs/contracts/plugin-reconfiguration/README.md:116-118(r311). Pointer: https://code.claude.com/docs/en/plugins/manifest-reference#reference-a-saved-value Drop the description of when user_config and CLAUDE_PLUGIN_OPTION_* are injected; keep the rule that observation is next-session and a same-session check reports the old value, with a pointer.plugins/knowledge/README.md:82-84(r313). Pointer: https://code.claude.com/docs/en/tools-reference#read-tool-behavior Drop the claim that PDF works natively with Read; keep the requirement of a PDF or EPUB the user may read and the EPUB unzip note, and point at the Read tool section. Same text also at:plugins/knowledge/skills/distill/SKILL.md:42; a row of its own covers it only if listed.plugins/knowledge/README.md:121-122(r309). Pointer: https://code.claude.com/docs/en/plugins/manifest-reference#where-values-are-stored Drop the claim about how a sensitive option persists on Windows; keep the decision that course-platform credentials stay in shell env vars, not userConfig, with a pointer.plugins/knowledge/skills/distill/SKILL.md:188,254(r314). Pointer: https://code.claude.com/docs/en/tools-reference#write-tool-behavior Drop the claims that git mv invalidates or breaks Claude Code's read tracking; keep the instruction to Read the file at its new path before Edit/Write, and point at the Write tool section.plugins/knowledge/skills/docpage-digest/SKILL.md:48-51(r316). Pointer: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html#67-sha2-utilities-print-or-check-sha-2-digests Drop the claim about which platforms lack sha256sum; keep the hash8 slug rule and the sha256sum-or-shasum command, and point at the sha2 utilities section.plugins/knowledge/skills/docpage-digest/SKILL.md:48-51(r317). Pointer: https://www.gnu.org/software/coreutils/manual/html_node/sha2-utilities.html#67-sha2-utilities-print-or-check-sha-2-digests Drop the clause on stock macOS lacking sha256sum; keep step 3's hash8 rule, the command and truncating the prefix not the hash, with a pointer.plugins/knowledge/skills/docpage-digest/context/anthropic-docs-profile.md:38,40-41(r318). Pointer: none found; No fetched page documents the raw .md channel output (llms.txt only lists pages). Search the Claude Code docs for a page describing the raw markdown form; if none exists, the PR should remove these sentences instead. Drop the list of channel artifacts (fence attributes, tab expansion, escaped URLs); keep that source.* stays the unaltered fetch and the reproduce-never-repair decision, with a pointer to the owner.plugins/knowledge/skills/setup/SKILL.md:95-97(r321). Pointer: https://code.claude.com/docs/en/plugins/manifest-reference#where-each-variable-resolves Drop the explanation of when ${user_config.*} is injected; keep the instruction to rerun check in a fresh session and report the observed value, and point at the section.
context-guard
plugins/context-guard/README.md:123-124(r081). Pointer: https://code.claude.com/docs/en/plugins/mods/reference#mods-api-methods (confirm the section) Drop the claim about what Claude Code cannot do with a shown suggestion; keep that the suggestion stays in the box after hand-off, and point at the mods API methods.plugins/context-guard/README.md:146-147(r082). Pointer: https://code.claude.com/docs/en/plugins/mods/troubleshoot#refusal-messages (confirm the section) Drop the statement that an organization policy can refuse a user mod's tools; keep the module's one-debug-line-and-carry-on behavior and point at the refusal messages.plugins/context-guard/README.md:151-154(r083). Pointer: https://code.claude.com/docs/en/statusline#prompt-cache-fields Drop the description of what $.session.usage() lacks and what the cache lifetime depends on; keep that the band row shows no cache state and point at the section.plugins/context-guard/README.md:165-168(r084). Pointer: https://code.claude.com/docs/en/statusline#manually-configure-a-status-line Drop the claim that a plugin cannot add a status-line segment; keep the apply cache-line copy-and-print-the-edit behavior and point at the manual status line setup.plugins/context-guard/README.md:337-338(r085). Pointer: https://code.claude.com/docs/en/plugins/cli-reference#plugin-install Drop the statement that user scope is the install default; keep the decision to install at user scope so every session writes its snapshot, and point at plugin install.plugins/context-guard/reference/reader-contract.md:536-538(r088). Pointer: https://code.claude.com/docs/en/hooks#precompact (confirm the section) Drop the claim that auto-compact offers no steering hook; keep the decision to read a firing as a missed boundary and point at the PreCompact section.plugins/context-guard/reference/reader-contract.md:749-752(r089). Pointer: https://code.claude.com/docs/en/plugins/manifest-reference#where-each-variable-resolves Drop the description of how CLAUDE_PLUGIN_DATA resolves; keep the decision to use the fixed contract directory outside it and point at where each variable resolves.
disk-hygiene
plugins/disk-hygiene/README.md:259-262(r126). Pointer: https://docs.python.org/3/using/windows.html (confirm the section) Drop the Settings path and the alias-clearing steps; keep that bare python3 success is not proof of a real interpreter, and point at the Python Windows page.plugins/disk-hygiene/README.md:605-607(r127). Pointer: https://code.claude.com/docs/en/plugins/manifest-reference#where-each-variable-resolves Drop the claim about which variables a skill-frontmatter hook receives; keep the decision that the belt's --authorized-data-root channel stays out of the arguments, and point at the section.plugins/disk-hygiene/skills/clean/reference/unsupported-platform-handoff.md:212-217(r131). Pointer: https://learn.microsoft.com/en-us/windows/win32/api/shellapi/ns-shellapi-shfileopstructw (confirm the section) Drop the claims about the path-length limit and shell API rejection; keep the rule that an over-long path needs a permanent delete only with explicit consent, and point at the page.plugins/disk-hygiene/skills/setup/SKILL.md:87-91(r132). Pointer: https://code.claude.com/docs/en/hooks#hooks-in-skills-and-agents Drop the description of how long the skill-frontmatter hook stays armed and its behavior after resume; keep the two-surface guard registration decision and the pointer to the clean skill's safety model.plugins/disk-hygiene/skills/setup/SKILL.md:99-111(r133). Pointer: https://docs.python.org/3/using/windows.html#4115-troubleshooting Drop the description of what the python3 App Execution Alias stub does; keep the decision to confirm the resolved interpreter name before running the guard and the launcher's fall-through, and point at the section.plugins/disk-hygiene/skills/setup/SKILL.md:143-150(r134). Pointer: https://docs.python.org/3/using/windows.html#4115-troubleshooting Drop the Store-opening behavior and the Settings steps to disable the alias; keep the PASS-with-WARN verdict when the stub is present and point at the section for the remedy.plugins/disk-hygiene/skills/setup/SKILL.md:194-199(r136). Pointer: https://code.claude.com/docs/en/plugins/cli-reference#what-an-uninstall-deletes-and-keeps Drop the statement of what uninstall deletes and the already-installed print behavior; keep the decision not to uninstall to reconfigure and the headless fallback instruction, with a pointer to the section.
computer-use
plugins/computer-use/README.md:32-34(r060). Pointer: https://code.claude.com/docs/en/computer-use#screenshots-are-downscaled-automatically Drop the pixel-budget explanation and the claim that smaller monitors do not help; keep the decision that zoom is the lever, and point at the downscaling section. Same text also at:plugins/computer-use/skills/diagnose/SKILL.md:75-77,plugins/computer-use/skills/diagnose/SKILL.md:37-38; a row of its own covers it only if listed.plugins/computer-use/skills/diagnose/SKILL.md:75-77(r061). Pointer: https://code.claude.com/docs/en/computer-use#screenshots-are-downscaled-automatically Drop the megapixel-count explanation; keep the instruction to read the reference file before advising on resolution, and point at the downscaling section. Same text also at:plugins/computer-use/README.md:32-34,plugins/computer-use/skills/diagnose/SKILL.md:37-38; a row of its own covers it only if listed.plugins/computer-use/skills/setup/SKILL.md:44-46,117-119(r062). Pointer: none found; Upstream owner of the computer-use MCP tool descriptions (list_granted_applications, request_access); the fetched computer-use page does not name them. Search the docs for a tool reference or confirm via the /mcp tool listing. Drop what list_granted_applications returns and its read-only/no-side-effect description, in both places; keep the decision to use it as the check's probe, with a pointer.plugins/computer-use/skills/setup/SKILL.md:60-61,117-118(r063). Pointer: https://code.claude.com/docs/en/computer-use#approve-apps-per-session Drop the statement that request_access raises a consent dialog, in both places; keep the rule never to call it during a check, and point at the approval section.plugins/computer-use/skills/setup/SKILL.md:65-66(r064). Pointer: none found; Upstream doc on whether synthesized input resets the OS idle timer (Windows/macOS input injection or idle-detection docs); the computer-use page does not cover it. If none exists, reclassify as local measurement. Drop the claim that synthesized input does not reset the idle timer; keep the decision to probe and report the three timeouts, and point at an owner source once found. Same text also at:plugins/computer-use/README.md:29-31,plugins/computer-use/skills/diagnose/SKILL.md:42,plugins/computer-use/skills/setup/SKILL.md:79-81; a row of its own covers it only if listed.plugins/computer-use/skills/setup/SKILL.md:104-107(r065). Pointer: https://code.claude.com/docs/en/computer-use#approve-apps-per-session (confirm the section) Drop the description of the allowlist gate's refusal and its error text; keep reporting focus-stealing utilities as INFO with the retry pattern, and point at the approval section. Same text also at:plugins/computer-use/skills/diagnose/SKILL.md:41,plugins/computer-use/skills/diagnose/SKILL.md:80-81; a row of its own covers it only if listed.
Notes
Lines are as of 3bd42cabfe (https://github.com/melodic-software/claude-code-plugins/blob/3bd42cabfe6bdef37a05778d396869af0381bb51); locate each passage by its text if main has moved. Each rNNN is that row's number in the order of #7292's "Findings by plugin". Every row was upheld by three blind judges and survived a refutation pass, run report-only for #12072. Pointers are candidates: fetch each before writing it, and confirm the section still documents the fact.
Parent: #7292
Metadata
Metadata
Assignees
Labels
Type
Fields
Work status
Activity
github-actions commentedon Nov 3, 2026
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Large
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
Understood: 28 passages in 14 files across knowledge, context-guard, disk-hygiene and computer-use restate facts that upstream sources own. Each should become a pointer to the live upstream section, with an as-of date and recheck trigger. The local decision stays, and each touched plugin gets a changelog fragment. The work is docs-only and the rows are specific. Several pointers are marked "confirm the section" or "none found", so each needs a fetch to check it before it is written. The change spans four plugins and may need splitting. This looks related to the sibling "replace restated upstream facts" issues under #7292, but each covers different plugins, so I don't see a duplicate.
Automated triage, applied by the lanes App.
github-actions commentedon Nov 3, 2026
The triage sweep dispatched intake triage for this issue (attempt 1 of 2).
melodic-automation-lanes commentedon Nov 3, 2026
Not admitted to the issue lane yet: sub-issue #12775 is open.
melodic-automation-lanes commentedon Nov 3, 2026
Not split at intake (owner Q93). This Size Large issue stays parked at
status: ready: no split into whole changes was found, either by task-list line or by the targets the lines name. No person is asked to act and no hold label is added. The split settings aresize-splitin.github/actions/resolve-config/admission-rules.json.Automated by the lanes App, once per reason and body version.
kyle-sexton commentedon Nov 4, 2026
Decision recorded. 27 of the 28 rows are delivered on main; this issue stays open for row r318 alone, as host work.
Agent choice, not an owner answer.
Delivered, checked row by row on origin/main: the knowledge and computer-use rows by #12913 (e5389b6), r311 by #12818 (019146e), and the context-guard and disk-hygiene rows by #12812 (a4c9a26).
check-stamps.sh --trigger-lesson the 13 touched files: 93 stamps, 0 findings. Changelog fragments exist for all four plugins.Not delivered: r318.
plugins/knowledge/skills/docpage-digest/context/anthropic-docs-profile.md:38-40still lists the channel artifacts (theme={null}fence attributes, tab expansion,\&-escaped URLs). #12913 left it out because removing it cuts skill behaviour, which needs before-and-after eval evidence first (docs/review/skills-and-agents.md:6-8), and said #12775 would stay open for it; #12775 has since closed, so the row is tracked here.source.*stays the unaltered fetch, and adds a knowledge changelog fragment.kyle-sexton commentedon Nov 4, 2026
Row r318 is settled by the owner, so nothing is left here. The 13:19Z record above is an agent's, and it does not reflect the owner's answer on #12775: owner, verbatim, 2026-11-04: "Go w/ recommendations", on option (a), keep the r318 sentences and close with the row recorded as unmeasurable (record).
The before and after evals this record asks for already ran on #12775: before 1.00, after 1.00, degraded 0.858, a mean drop of 0.142 against the 0.15 bar, so under
rewrite-a-plugin.mdstep 7 the before text ships. The sentences stay. Re-opening the cut would be option (c), which the owner did not pick. The other 27 rows are delivered, per the record above.kyle-sexton commentedon Nov 4, 2026
Correction: withdraw the record above; this issue is done as closed.
Agent choice, not an owner answer.
The record above missed the owner's answer on #12775 (2026-11-04T13:10:54Z, verbatim: "Go w/ recommendations", option (a)): r318's sentences stay, recorded as unmeasurable because the negative control's mean drop was 0.142 against the 0.15 bar. No r318 work remains, so
host-runis removed and nothing is routed.