@juicesharp/rpiv-pi 1.18.0 → 1.18.1

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.
@@ -44,6 +44,30 @@ describe("SIBLINGS registry", () => {
44
44
  expect(i18nEntry?.matches.test("@juicesharp/rpiv-i18n")).toBe(true);
45
45
  });
46
46
 
47
+ it("pi-subagents SIBLINGS[0] matches BOTH the @tintinweb/pi-subagents fork and the @gotgenes/pi-subagents fork", () => {
48
+ const subagentsEntry = SIBLINGS[0];
49
+ expect(subagentsEntry).toBeDefined();
50
+ // Upstream fork (default install target via /rpiv-setup)
51
+ expect(subagentsEntry?.matches.test("@tintinweb/pi-subagents")).toBe(true);
52
+ // @gotgenes/pi-subagents — API-compatible fork with the same tool surface
53
+ expect(subagentsEntry?.matches.test("@gotgenes/pi-subagents")).toBe(true);
54
+ });
55
+
56
+ it("pi-subagents SIBLINGS[0] regex is case-insensitive across both fork namespaces", () => {
57
+ const subagentsEntry = SIBLINGS[0];
58
+ expect(subagentsEntry?.matches.test("@TINTINWEB/PI-SUBAGENTS")).toBe(true);
59
+ expect(subagentsEntry?.matches.test("@GOTGENES/PI-SUBAGENTS")).toBe(true);
60
+ });
61
+
62
+ it("pi-subagents SIBLINGS[0] regex does NOT match unrelated @-scoped pi-subagents-* variants", () => {
63
+ const subagentsEntry = SIBLINGS[0];
64
+ // Word-boundary guard: must not over-match a hypothetical future sibling
65
+ // such as `@juicesharp/pi-subagents-utils` (a dash right after the
66
+ // `pi-subagents` token is excluded via `(?![-\w])`).
67
+ expect(subagentsEntry?.matches.test("@tintinweb/pi-subagents-utils")).toBe(false);
68
+ expect(subagentsEntry?.matches.test("@gotgenes/pi-subagents-utils")).toBe(false);
69
+ });
70
+
47
71
  it("every entry has non-empty pkg + provides", () => {
48
72
  for (const s of SIBLINGS) {
49
73
  expect(s.pkg.length).toBeGreaterThan(0);
@@ -22,8 +22,10 @@ export interface SiblingPlugin {
22
22
  export const SIBLINGS: readonly SiblingPlugin[] = [
23
23
  {
24
24
  pkg: "npm:@tintinweb/pi-subagents",
25
- matches: /@tintinweb\/pi-subagents/i,
26
- provides: "Agent / get_subagent_result / steer_subagent tools",
25
+ // Detect both the upstream tintinweb fork and the API-compatible
26
+ // @gotgenes fork; pkg stays upstream so /rpiv-setup installs that.
27
+ matches: /@(tintinweb|gotgenes)\/pi-subagents(?![-\w])/i,
28
+ provides: "Agent / get_subagent_result / steer_subagent tools (tintinweb or gotgenes fork)",
27
29
  },
28
30
  {
29
31
  pkg: "npm:@juicesharp/rpiv-ask-user-question",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@juicesharp/rpiv-pi",
3
- "version": "1.18.0",
3
+ "version": "1.18.1",
4
4
  "description": "A skill-based development workflow for Pi Agent. Five skills (research, design, plan, implement, validate) and the shared subagents that compose its ship-loop.",
5
5
  "keywords": [
6
6
  "pi-package",