Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion plugins/claude-config/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "claude-config",
"version": "0.52.0",
"version": "0.52.1",
"description": "Nine configuration-health skills (plus setup) for a repo's Claude Code configuration: audit (settings.json / .mcp.json / hooks / plugins / permissions drift), audit-automation-gaps (evidence-gated verdicts on automation gaps), audit-permission-grants (allow-rule / allowed-tools grants for auto-mode durability and portability), audit-permission-state (the permission rules actually in effect: every settings scope merged with per-rule provenance, what auto mode drops on entry, config written where nothing reads it, and which managed intents are enforced versus loosenable), draft-auto-mode-rules (interview and draft a paste-ready autoMode classifier block; prints only, never writes), audit-instructions (locally-owned instruction surfaces vs current model capability, proposing removals/rewrites of instructions the model no longer needs, and detecting cross-surface instruction conflicts), audit-prompting-postures (the additive lane: posture guidance the prompting guide says a component's purpose needs but the component does not carry), audit-pass (one coordinated, ordered, resumable pass over a named target: three-scope inventory, run-time-derived exclusion set, stable finding identity, suppression memory, resume, one human gate, delegating every check to the plugin that owns it), and unhobble (the empirical bare-baseline experiment: reversibly strip a repo's standing instructions, log real stumbles against the current model, re-add only what evidence earns).",
"author": {
"name": "Melodic Software",
Expand Down
8 changes: 8 additions & 0 deletions plugins/claude-config/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ All notable changes to the `claude-config` plugin are documented here. Format fo

Versions 0.51.8 to 0.51.9 and 0.51.11 to 0.51.14 were reserved by parallel branches and never released.

## [0.52.1] - 2026-09-29

### Changed

- **`audit-instructions` / I15:** record the user-request-conflict axis as a non-member in the
Boundary section, with the co-residency reason; `conflict-criteria.md` 1.6.2
([#3565](https://github.com/melodic-software/claude-code-plugins/issues/3565)).

## [0.52.0] - 2026-09-29

### Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
- [Worked examples](#worked-examples)
- [Output format](#output-format)

Version: 1.6.1
Last updated: 2026-09-28
Version: 1.6.2
Last updated: 2026-09-29

**The adjudication procedure for check I15.** [criteria.md](criteria.md)'s I15 entry owns the
definition: what a cross-surface conflict *is*, its comparison set, its import and symlink
Expand Down Expand Up @@ -113,6 +113,21 @@ The rule remains **route on the population a check actually enumerates, never on
layer**: a boundary drawn from a label rather than from the incumbent's discovery script leaves whole
pair classes audited by neither skill. When that script's population moves, this table moves with it.

**A standing instruction against plausible user requests is not a member.** I15 does not detect
conflict between a standing instruction and a hypothetical or plausible user request. Its population
is the set of surfaces the tree can enumerate, and such requests are not in it. The reason is the
[co-residency prerequisite](#prerequisite-co-residency): both directives must be in the same context
window, and a hypothetical request has no residency, no enumerability and no liveness the tree can
determine. Admitting the axis would either drop that gate and reintroduce the noise it suppresses, or
need a parallel liveness notion for imagined inputs. The population is also unbounded, so the
false-negative rate cannot be measured. The owner adjudicated this in #3565 and rejected the reopen. A
corpus of realistic prompts to test instruction surfaces against is a different artifact and would be
filed separately, not as an I15 extension.
**Claim:** I15 does not adjudicate standing instructions against plausible user requests.
**Basis:** this file's Prerequisite: co-residency section and the owner decision on #3565.
**As of:** 2026-09-29. **Recheck:** when the co-residency prerequisite changes or a bounded,
enumerable request corpus is filed as its own artifact.

## Prerequisite: co-residency

A conflict requires both directives to be in the same context window at the same time. Matching text
Expand Down
Loading