@productbrain/cli 0.1.0-beta.6046 → 0.1.0-beta.6055
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/handshake-formatter.test.js +27 -0
- package/dist/__tests__/handshake-formatter.test.js.map +1 -1
- package/dist/__tests__/handshake-preview.test.js +18 -0
- package/dist/__tests__/handshake-preview.test.js.map +1 -1
- package/dist/__tests__/handshake.test.js +64 -12
- package/dist/__tests__/handshake.test.js.map +1 -1
- package/dist/__tests__/strip.test.js +27 -1
- package/dist/__tests__/strip.test.js.map +1 -1
- package/dist/commands/connect-screens.d.ts.map +1 -1
- package/dist/commands/connect-screens.js +7 -2
- package/dist/commands/connect-screens.js.map +1 -1
- package/dist/commands/handshake.js +5 -5
- package/dist/commands/handshake.js.map +1 -1
- package/dist/commands/handshakeCursorSkillCleanup.d.ts.map +1 -1
- package/dist/commands/handshakeCursorSkillCleanup.js +13 -5
- package/dist/commands/handshakeCursorSkillCleanup.js.map +1 -1
- package/dist/formatters/handshake.d.ts.map +1 -1
- package/dist/formatters/handshake.js +6 -1
- package/dist/formatters/handshake.js.map +1 -1
- package/dist/lib/strip.d.ts +9 -0
- package/dist/lib/strip.d.ts.map +1 -1
- package/dist/lib/strip.js +25 -0
- package/dist/lib/strip.js.map +1 -1
- package/package.json +1 -1
|
@@ -61,6 +61,33 @@ describe('formatHandshakeReport — leftover files (report-only, coordinator rul
|
|
|
61
61
|
const out = formatHandshakeReport(baseReport({ leftoverFiles: [] }));
|
|
62
62
|
expect(out).not.toContain('Leftover files:');
|
|
63
63
|
});
|
|
64
|
+
it('PR #912 round 14/15 (Codex P2): reversibly escapes control chars/escape sequences/newlines in a filesystem-derived leftover path before rendering, without losing filename identity', () => {
|
|
65
|
+
// Unix filenames may contain raw control chars/ANSI escapes/newlines — readdirSync returns
|
|
66
|
+
// them verbatim. A malicious or corrupted filename must never inject terminal controls or
|
|
67
|
+
// forged extra lines into the report. Round 15: a lossy sanitizer (collapse/delete) can point
|
|
68
|
+
// the user — who is told to go remove this path — at the wrong file or lose it entirely, so
|
|
69
|
+
// this must escape reversibly instead.
|
|
70
|
+
const out = formatHandshakeReport(baseReport({
|
|
71
|
+
leftoverFiles: [
|
|
72
|
+
{ path: '.cursor/rules/evil\x1b[31mFAKE ERROR\x1b[0m\nrm -rf /.mdc', reason: 'orphan\r\nFAKE LINE' },
|
|
73
|
+
],
|
|
74
|
+
}));
|
|
75
|
+
// eslint-disable-next-line no-control-regex
|
|
76
|
+
expect(out).not.toMatch(/[\x00-\x08\x0b-\x1f\x7f]/);
|
|
77
|
+
expect(out).not.toContain('\x1b[31m');
|
|
78
|
+
// The raw ESC byte and newline are gone, but every character survives as a visible,
|
|
79
|
+
// reversible escape — nothing is deleted or collapsed away.
|
|
80
|
+
expect(out).toContain('.cursor/rules/evil\\x1b[31mFAKE ERROR\\x1b[0m\\nrm -rf /.mdc');
|
|
81
|
+
expect(out).toContain('orphan\\r\\nFAKE LINE');
|
|
82
|
+
});
|
|
83
|
+
it('PR #912 round 15 (Codex P2): a leftover path/reason with only ordinary whitespace renders unchanged — the reversible escaper never collapses spaces', () => {
|
|
84
|
+
const out = formatHandshakeReport(baseReport({
|
|
85
|
+
leftoverFiles: [
|
|
86
|
+
{ path: '.claude/rules/safe name.mdc', reason: 'orphan' },
|
|
87
|
+
],
|
|
88
|
+
}));
|
|
89
|
+
expect(out).toContain('.claude/rules/safe name.mdc — orphan');
|
|
90
|
+
});
|
|
64
91
|
});
|
|
65
92
|
describe('formatHandshakeReport — preview statuses would-augment + needs-attention (TEN-2155)', () => {
|
|
66
93
|
it('renders would-augment and needs-attention statuses', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handshake-formatter.test.js","sourceRoot":"","sources":["../../src/__tests__/handshake-formatter.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handshake-formatter.test.js","sourceRoot":"","sources":["../../src/__tests__/handshake-formatter.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -632,6 +632,24 @@ describe('runHandshake — preview/apply/dryRun invariants (WP-332 S1)', () => {
|
|
|
632
632
|
vi.mocked(kernelCall).mockResolvedValue([]);
|
|
633
633
|
}
|
|
634
634
|
});
|
|
635
|
+
it('PR #912 round 14 (Codex P2): the empty-active-assets progress line describes report-only leftover listing, never cleanup/removal', async () => {
|
|
636
|
+
vi.mocked(kernelCall).mockImplementation(async (tool) => tool === 'setup.listAssetsForUser'
|
|
637
|
+
? { activeAssets: [], dormantAssets: [], hasAnyReceipt: true }
|
|
638
|
+
: []);
|
|
639
|
+
const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
|
|
640
|
+
let combined;
|
|
641
|
+
try {
|
|
642
|
+
await runHandshake({ apply: true });
|
|
643
|
+
combined = writeSpy.mock.calls.map(([chunk]) => String(chunk)).join('');
|
|
644
|
+
}
|
|
645
|
+
finally {
|
|
646
|
+
writeSpy.mockRestore();
|
|
647
|
+
vi.mocked(kernelCall).mockResolvedValue([]);
|
|
648
|
+
}
|
|
649
|
+
expect(combined).toContain('any existing projections on the selected surfaces will be listed as leftovers, not removed');
|
|
650
|
+
expect(combined).not.toMatch(/projections clear/i);
|
|
651
|
+
expect(combined).not.toMatch(/cleanup runs/i);
|
|
652
|
+
});
|
|
635
653
|
it('apply mode projects DB setup assets with body-derived refs, disabled filtering, and hash trailers', async () => {
|
|
636
654
|
vi.mocked(shouldEmitToTarget).mockImplementation((_entry, target) => target === 'cursor');
|
|
637
655
|
vi.mocked(generateCursorSkill).mockImplementation((skill) => skill.body);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handshake-preview.test.js","sourceRoot":"","sources":["../../src/__tests__/handshake-preview.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handshake-preview.test.js","sourceRoot":"","sources":["../../src/__tests__/handshake-preview.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,10 +79,21 @@ vi.mock('fs', () => ({
|
|
|
79
79
|
if (!isSymlink && !isDir && !isFile) {
|
|
80
80
|
throw Object.assign(new Error(`ENOENT: lstat '${path}'`), { code: 'ENOENT' });
|
|
81
81
|
}
|
|
82
|
+
// Round 15: dev/ino for directory-entry-identity comparisons (findLeftoverCursorSkills'
|
|
83
|
+
// live-alias check). Same default-hash-or-vfsInodes-override scheme as statSync below.
|
|
84
|
+
let ino = vfsInodes.get(path);
|
|
85
|
+
if (ino === undefined) {
|
|
86
|
+
let h = 0;
|
|
87
|
+
for (let i = 0; i < path.length; i++)
|
|
88
|
+
h = (h * 31 + path.charCodeAt(i)) | 0;
|
|
89
|
+
ino = h;
|
|
90
|
+
}
|
|
82
91
|
return {
|
|
83
92
|
isDirectory: () => isDir,
|
|
84
93
|
isFile: () => isFile,
|
|
85
94
|
isSymbolicLink: () => isSymlink,
|
|
95
|
+
dev: 1,
|
|
96
|
+
ino,
|
|
86
97
|
};
|
|
87
98
|
}),
|
|
88
99
|
// PR #912 follow-up: realpathSync backs the Cursor-skills-root containment check — an explicit
|
|
@@ -616,29 +627,71 @@ describe('findLeftoverCursorSkills (WP-379 S5b nested layout, report-only)', ()
|
|
|
616
627
|
expect(userMd in vfs).toBe(true);
|
|
617
628
|
expect(leftovers.some((l) => l.path === userMd)).toBe(false);
|
|
618
629
|
});
|
|
619
|
-
it('PR #912 round
|
|
630
|
+
it('PR #912 round 15 (Codex P2): a case-only alias that resolves to the SAME directory entry as the canonical path is not reported as stale (case-insensitive filesystem)', () => {
|
|
620
631
|
const skillsDir = `${MOCK_CWD}/.cursor/skills`;
|
|
621
632
|
// On a case-insensitive FS, the directory literally on disk is "setup-skill" but the OS
|
|
622
|
-
// also resolves "Setup Skill" to that
|
|
623
|
-
//
|
|
633
|
+
// also resolves "Setup Skill" to that SAME entry — simulate that by giving both DIRECTORY
|
|
634
|
+
// paths' lstat() the same dev+ino, exactly like a real case-insensitive filesystem would.
|
|
624
635
|
const aliasDir = `${skillsDir}/setup-skill`;
|
|
636
|
+
const canonicalDir = `${skillsDir}/Setup Skill`;
|
|
625
637
|
const aliasMd = `${aliasDir}/SKILL.md`;
|
|
626
|
-
const canonicalMd = `${skillsDir}/Setup Skill/SKILL.md`;
|
|
627
638
|
vfs[skillsDir] = '';
|
|
628
639
|
vfsDirs.add(skillsDir);
|
|
629
640
|
vfsDirs.add(aliasDir);
|
|
641
|
+
vfsDirs.add(canonicalDir); // same physical entry, reachable under either spelling
|
|
630
642
|
vfs[aliasMd] = `${MARKER}\n# Active (case-insensitive alias)\n`;
|
|
631
|
-
|
|
632
|
-
//
|
|
633
|
-
vfs[canonicalMd] = vfs[aliasMd];
|
|
634
|
-
vfsInodes.set(aliasMd, 777);
|
|
635
|
-
vfsInodes.set(canonicalMd, 777); // same entry on a case-insensitive FS
|
|
643
|
+
vfsInodes.set(aliasDir, 777);
|
|
644
|
+
vfsInodes.set(canonicalDir, 777); // same entry on a case-insensitive FS
|
|
636
645
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
637
646
|
readdirSyncMock.mockImplementation((d) => (d === skillsDir ? ['setup-skill'] : []));
|
|
638
647
|
const { files: leftovers } = findLeftoverCursorSkills(MOCK_CWD, ['Setup Skill']);
|
|
639
648
|
expect(aliasMd in vfs).toBe(true); // survives — was never a candidate for removal anyway
|
|
640
649
|
expect(leftovers.some((l) => l.path === aliasMd)).toBe(false);
|
|
641
650
|
});
|
|
651
|
+
it('PR #912 round 15 (Codex P2): the SOLE on-disk entry being itself a symlink is still a live alias, not a leftover, when both case spellings resolve to it', () => {
|
|
652
|
+
const skillsDir = `${MOCK_CWD}/.cursor/skills`;
|
|
653
|
+
// "setup-skill" is the ONLY directory entry, and it happens to be a symlink (e.g. to some
|
|
654
|
+
// external skill store) — but on a case-insensitive FS, "Setup Skill" resolves to that SAME
|
|
655
|
+
// entry too. Round 14's "never exempt a symlink" rule wrongly flagged this as stale; round 15
|
|
656
|
+
// compares lstat identity instead, which correctly treats "same entry" as a live alias
|
|
657
|
+
// regardless of whether that shared entry happens to be a symlink.
|
|
658
|
+
const aliasDir = `${skillsDir}/setup-skill`;
|
|
659
|
+
const canonicalDir = `${skillsDir}/Setup Skill`;
|
|
660
|
+
const aliasMd = `${aliasDir}/SKILL.md`;
|
|
661
|
+
vfs[skillsDir] = '';
|
|
662
|
+
vfsDirs.add(skillsDir);
|
|
663
|
+
vfsSymlinks.add(aliasDir);
|
|
664
|
+
vfsSymlinks.add(canonicalDir); // same physical symlink, addressed by either spelling
|
|
665
|
+
vfs[aliasMd] = `${MARKER}\n# Active (sole entry is a symlink)\n`;
|
|
666
|
+
vfsInodes.set(aliasDir, 999);
|
|
667
|
+
vfsInodes.set(canonicalDir, 999); // identical lstat identity — one real entry
|
|
668
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
669
|
+
readdirSyncMock.mockImplementation((d) => (d === skillsDir ? ['setup-skill'] : []));
|
|
670
|
+
const { files: leftovers } = findLeftoverCursorSkills(MOCK_CWD, ['Setup Skill']);
|
|
671
|
+
expect(aliasMd in vfs).toBe(true);
|
|
672
|
+
expect(leftovers.some((l) => l.path === aliasMd)).toBe(false);
|
|
673
|
+
});
|
|
674
|
+
it('PR #912 round 15 (Codex P2): a SYMLINKED case-only alias pointing AT a distinct canonical directory is still reported as stale (case-sensitive filesystem, two real entries)', () => {
|
|
675
|
+
const skillsDir = `${MOCK_CWD}/.cursor/skills`;
|
|
676
|
+
// "setup-skill" is a SYMLINK pointing AT the canonical "Setup Skill" directory — TWO
|
|
677
|
+
// distinct, separately-readdirSync-visible entries. lstat (never follows) on each gives a
|
|
678
|
+
// DIFFERENT identity: the symlink's own inode vs. the real target directory's inode.
|
|
679
|
+
const aliasDir = `${skillsDir}/setup-skill`;
|
|
680
|
+
const canonicalDir = `${skillsDir}/Setup Skill`;
|
|
681
|
+
const aliasMd = `${aliasDir}/SKILL.md`;
|
|
682
|
+
vfs[skillsDir] = '';
|
|
683
|
+
vfsDirs.add(skillsDir);
|
|
684
|
+
vfsSymlinks.add(aliasDir); // the discovered directory entry IS a symlink
|
|
685
|
+
vfsDirs.add(canonicalDir); // the canonical directory is a real, distinct entry
|
|
686
|
+
vfs[aliasMd] = `${MARKER}\n# Symlinked alias\n`;
|
|
687
|
+
// No vfsInodes override — default per-path hash means aliasDir and canonicalDir get
|
|
688
|
+
// DIFFERENT inos, matching two genuinely distinct filesystem objects.
|
|
689
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
690
|
+
readdirSyncMock.mockImplementation((d) => (d === skillsDir ? ['setup-skill'] : []));
|
|
691
|
+
const { files: leftovers } = findLeftoverCursorSkills(MOCK_CWD, ['Setup Skill']);
|
|
692
|
+
expect(aliasMd in vfs).toBe(true); // survives — report-only, never unlinked
|
|
693
|
+
expect(leftovers.some((l) => l.path === aliasMd && l.reason.includes('stale case'))).toBe(true);
|
|
694
|
+
});
|
|
642
695
|
it('PR #912 round 13 (Codex P2): a genuinely distinct stale directory (different inode) is still reported, even with the same normalized stem', () => {
|
|
643
696
|
const skillsDir = `${MOCK_CWD}/.cursor/skills`;
|
|
644
697
|
const staleDir = `${skillsDir}/setup-skill`;
|
|
@@ -647,9 +700,8 @@ describe('findLeftoverCursorSkills (WP-379 S5b nested layout, report-only)', ()
|
|
|
647
700
|
vfsDirs.add(skillsDir);
|
|
648
701
|
vfsDirs.add(staleDir);
|
|
649
702
|
vfs[staleMd] = `${MARKER}\n# Genuinely stale\n`;
|
|
650
|
-
//
|
|
651
|
-
//
|
|
652
|
-
// distinct file, not an alias.
|
|
703
|
+
// The canonical "Setup Skill" directory doesn't exist in this test at all (lstatSync on it
|
|
704
|
+
// throws ENOENT, caught, treated as no match) — a real, distinct stale directory, not an alias.
|
|
653
705
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
654
706
|
readdirSyncMock.mockImplementation((d) => (d === skillsDir ? ['setup-skill'] : []));
|
|
655
707
|
const { files: leftovers } = findLeftoverCursorSkills(MOCK_CWD, ['Setup Skill']);
|