Skip to content

Check plugin data directory assignments - #7

Merged
jonathanhefner merged 1 commit into
mainfrom
agent/plugin-data-assignment
Sep 18, 2026
Merged

jonathanhefner merged 1 commit into
mainfrom
agent/plugin-data-assignment

Conversation

@jonathanhefner

@jonathanhefner jonathanhefner commented Sep 18, 2026 •

Copy link
Copy Markdown
Member

Check that the observed Core and Recovery plugins receive distinct PLUGIN_DATA paths. A shared resolved path now fails mcp.stdio.data.distinct-across-plugins. The existing Core observations also support mcp.stdio.data.consistent-within-plugin, which checks that its four servers share one resolved path.

Recovery's existing observation adds only nullable resolvedData. Collection uses the same three plugins, tools, and guide procedure. Cross-plugin comparison uses all available resolved Core paths; one collision fails, and passing requires usable evidence from both plugins. Core consistency passes when all four paths agree; an observed contradiction fails even if other observations are missing.

These checks cover the observed path assignments, not filesystem access restrictions or persistence across updates.

Both probes use native filesystem path resolution so Windows junction targets with short and long path spellings remain comparable.

Validation:

  • Independent source and documentation review found no material issues.
  • The 64-test suite, packaged-probe tests, and reproducible-build checks pass. CI passes on Linux and Windows with Node 22 and 24, including the junction test.
  • Native Codex CLI 0.155.0-alpha.2.6: eight observations, all 19 cases pass. Core's four data paths agree and Recovery's differs.
  • Native Copilot CLI 1.0.83 on Node 24.18.0: seven observations, 15 pass, two fail, two not_verified. Core consistency passes; cross-plugin separation remains unverified because the Recovery MCP configuration is rejected. The other unverified case is Recovery server availability; the two failures are the previously observed core argument/environment expansion differences.

Both final native runs use unchanged packages from 0929ecb5d7666b9d94f136c66dbfb4c181c68ae1 and the ordinary README prompt. Saved observations match the received evidence and both reports match deterministic reevaluation. Codex followed immediate collection/record sequencing. Copilot collected four Core observations together before recording, contrary to the guide; its record writes were sequential and faithful.

Comment thread plugins/agent-plugins-conformance/README.md Outdated
Compare resolved Core and Recovery data paths to detect storage shared
across plugin instances. Check every available Core path so inconsistent
assignment within Core cannot hide a collision, and reuse its four
observations to check within-plugin consistency.

Add only nullable `resolvedData` to the existing Recovery observation.
Observed contradictions fail; missing evidence needed to decide remains
`not_verified`. Collection needs no additional plugin, tool, or step.

Resolve probe root, working directory, and data paths with
`realpathSync.native` so Windows junction targets with short and long
path spellings remain comparable.
@jonathanhefner
jonathanhefner force-pushed the agent/plugin-data-assignment branch from 8df4957 to 19cab71 Compare September 18, 2026 21:58
@jonathanhefner
jonathanhefner marked this pull request as ready for review September 18, 2026 22:01
@jonathanhefner
jonathanhefner merged commit a01212a into main Sep 18, 2026
4 checks passed
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.

1 participant