From d1fdc621eada9c597654ba9a3dda19eb2187d7d4 Mon Sep 17 00:00:00 2001 From: Eric Litman Date: Sun, 4 Oct 2026 12:10:51 -0400 Subject: [PATCH] fix(verify): map repository-root attribution files as nonRuntime (#134) NOTICE.md, README-UPSTREAM.md and the two preserved upstream license files ship nowhere; both marketplaces ship only ./plugins/pstack. Unmapped, they blocked any PR or upstream sync that edits them (first seen on #114). Co-Authored-By: Claude Opus 5.5 --- .claude/skills/verify-open-pstack/features/registry.json | 1 + .claude/skills/verify-open-pstack/scripts/core.test.ts | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/.claude/skills/verify-open-pstack/features/registry.json b/.claude/skills/verify-open-pstack/features/registry.json index ac211599..0762f70e 100644 --- a/.claude/skills/verify-open-pstack/features/registry.json +++ b/.claude/skills/verify-open-pstack/features/registry.json @@ -46,6 +46,7 @@ ], "nonRuntime": [ "README.md", "CHANGES.md", "LICENSE", "LICENSE.md", "UPSTREAM.md", + "NOTICE.md", "README-UPSTREAM.md", "LICENSE-cursor-team-kit", "LICENSE-superpowers", ".gitignore", ".mergify.yml", "docs/**", "assets/**", "plugins/pstack/skills/poteto-mode/scripts/bootstrap.test.ts", "plugins/pstack/skills/poteto-mode/scripts/check-plan.test.ts" diff --git a/.claude/skills/verify-open-pstack/scripts/core.test.ts b/.claude/skills/verify-open-pstack/scripts/core.test.ts index a3e2223e..d8d24b74 100644 --- a/.claude/skills/verify-open-pstack/scripts/core.test.ts +++ b/.claude/skills/verify-open-pstack/scripts/core.test.ts @@ -42,6 +42,11 @@ describe('registry and ownership', () => { expect(matches('skills/x/file', 'skills/x/**')).toBe(true); expect(matches('skills/xyz/file', 'skills/x/**')).toBe(false); }); + test('repository-root attribution files are not runtime', () => { + for (const filename of ['NOTICE.md', 'README-UPSTREAM.md', 'LICENSE-cursor-team-kit', 'LICENSE-superpowers']) { + expect(classify([{ filename }], registry).noRuntime).toBe(true); + } + }); test('markdown instructions are runtime', () => { for (const filename of ['plugins/pstack/skills/architect/SKILL.md', 'plugins/pstack/skills/architect/references/guide.md']) { const s = classify([{ filename }], registry);