@pennyfarthing/core 9.4.0 → 10.0.0

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.
Files changed (60) hide show
  1. package/dist/cli/commands/cyclist.d.ts +1 -1
  2. package/dist/cli/commands/cyclist.d.ts.map +1 -1
  3. package/dist/cli/commands/cyclist.js +15 -25
  4. package/dist/cli/commands/cyclist.js.map +1 -1
  5. package/dist/cli/commands/cyclist.test.js +12 -8
  6. package/dist/cli/commands/cyclist.test.js.map +1 -1
  7. package/dist/cli/commands/doctor.d.ts.map +1 -1
  8. package/dist/cli/commands/doctor.js +149 -15
  9. package/dist/cli/commands/doctor.js.map +1 -1
  10. package/dist/cli/commands/e2e-fresh-install.test.d.ts +19 -0
  11. package/dist/cli/commands/e2e-fresh-install.test.d.ts.map +1 -0
  12. package/dist/cli/commands/e2e-fresh-install.test.js +395 -0
  13. package/dist/cli/commands/e2e-fresh-install.test.js.map +1 -0
  14. package/dist/cli/commands/e2e-upgrade.test.d.ts +22 -0
  15. package/dist/cli/commands/e2e-upgrade.test.d.ts.map +1 -0
  16. package/dist/cli/commands/e2e-upgrade.test.js +562 -0
  17. package/dist/cli/commands/e2e-upgrade.test.js.map +1 -0
  18. package/dist/cli/commands/init-consolidation.test.d.ts +17 -0
  19. package/dist/cli/commands/init-consolidation.test.d.ts.map +1 -0
  20. package/dist/cli/commands/init-consolidation.test.js +217 -0
  21. package/dist/cli/commands/init-consolidation.test.js.map +1 -0
  22. package/dist/cli/commands/init.js +18 -15
  23. package/dist/cli/commands/init.js.map +1 -1
  24. package/dist/cli/commands/persona-config-consolidation.test.d.ts +18 -0
  25. package/dist/cli/commands/persona-config-consolidation.test.d.ts.map +1 -0
  26. package/dist/cli/commands/persona-config-consolidation.test.js +230 -0
  27. package/dist/cli/commands/persona-config-consolidation.test.js.map +1 -0
  28. package/dist/cli/commands/theme.js +2 -2
  29. package/dist/cli/commands/theme.js.map +1 -1
  30. package/dist/cli/commands/uninstall.d.ts.map +1 -1
  31. package/dist/cli/commands/uninstall.js +2 -1
  32. package/dist/cli/commands/uninstall.js.map +1 -1
  33. package/dist/cli/commands/update-consolidation.test.d.ts +19 -0
  34. package/dist/cli/commands/update-consolidation.test.d.ts.map +1 -0
  35. package/dist/cli/commands/update-consolidation.test.js +572 -0
  36. package/dist/cli/commands/update-consolidation.test.js.map +1 -0
  37. package/dist/cli/commands/update.d.ts +25 -0
  38. package/dist/cli/commands/update.d.ts.map +1 -1
  39. package/dist/cli/commands/update.js +128 -11
  40. package/dist/cli/commands/update.js.map +1 -1
  41. package/dist/cli/utils/manifest.d.ts +3 -3
  42. package/dist/cli/utils/manifest.d.ts.map +1 -1
  43. package/dist/cli/utils/manifest.js +21 -12
  44. package/dist/cli/utils/manifest.js.map +1 -1
  45. package/dist/cli/utils/settings-consolidation.test.d.ts +13 -0
  46. package/dist/cli/utils/settings-consolidation.test.d.ts.map +1 -0
  47. package/dist/cli/utils/settings-consolidation.test.js +227 -0
  48. package/dist/cli/utils/settings-consolidation.test.js.map +1 -0
  49. package/dist/cli/utils/settings.d.ts +11 -0
  50. package/dist/cli/utils/settings.d.ts.map +1 -1
  51. package/dist/cli/utils/settings.js +59 -6
  52. package/dist/cli/utils/settings.js.map +1 -1
  53. package/dist/cli/utils/themes.d.ts +3 -3
  54. package/dist/cli/utils/themes.d.ts.map +1 -1
  55. package/dist/cli/utils/themes.js +14 -12
  56. package/dist/cli/utils/themes.js.map +1 -1
  57. package/dist/cli/utils/themes.test.d.ts +2 -2
  58. package/dist/cli/utils/themes.test.js +29 -13
  59. package/dist/cli/utils/themes.test.js.map +1 -1
  60. package/package.json +1 -1
@@ -2,9 +2,9 @@
2
2
  * Tests for theme configuration
3
3
  *
4
4
  * These tests verify:
5
- * - getCurrentTheme() checks .pennyfarthing/config.local.yaml first, falls back to shared
5
+ * - getCurrentTheme() reads from .pennyfarthing/config.local.yaml > .pennyfarthing/persona-config.yaml
6
6
  * - setTheme() writes to .pennyfarthing/config.local.yaml by default
7
- * - setTheme() with global option writes to shared config
7
+ * - setTheme() with global option writes to .pennyfarthing/persona-config.yaml
8
8
  *
9
9
  * Run with: npm test
10
10
  */
@@ -66,14 +66,31 @@ describe('Theme Configuration', () => {
66
66
  // Assert: should prefer .pennyfarthing/ over .claude/
67
67
  assert.strictEqual(result, 'star-trek', 'Should return local theme when both exist');
68
68
  });
69
- it('should fall back to shared theme when local does not exist', () => {
70
- // Setup: only shared config
69
+ it('should return null when only .claude/persona-config.yaml exists (no fallback)', () => {
70
+ // Setup: only legacy shared config — no longer a valid source
71
71
  const sharedConfig = { theme: 'discworld' };
72
72
  writeFileSync(join(claudeDir, 'persona-config.yaml'), yamlStringify(sharedConfig));
73
73
  // Act
74
74
  const result = getCurrentTheme(testDir);
75
- // Assert: should use shared config
76
- assert.strictEqual(result, 'discworld', 'Should fall back to shared theme');
75
+ // Assert: .claude/persona-config.yaml is not a fallback anymore
76
+ assert.strictEqual(result, null, 'Should not fall back to .claude/persona-config.yaml');
77
+ });
78
+ it('should fall back to .pennyfarthing/persona-config.yaml when config.local.yaml is absent', () => {
79
+ // Setup: project default at .pennyfarthing/persona-config.yaml (set via --global)
80
+ writeFileSync(join(pennyfarthingDir, 'persona-config.yaml'), yamlStringify({ theme: 'discworld' }));
81
+ // Act
82
+ const result = getCurrentTheme(testDir);
83
+ // Assert: should fall back to .pennyfarthing/persona-config.yaml
84
+ assert.strictEqual(result, 'discworld', 'Should fall back to .pennyfarthing/persona-config.yaml');
85
+ });
86
+ it('should prefer config.local.yaml over persona-config.yaml in .pennyfarthing/', () => {
87
+ // Setup: both files in .pennyfarthing/
88
+ writeFileSync(join(pennyfarthingDir, 'config.local.yaml'), yamlStringify({ theme: 'star-trek' }));
89
+ writeFileSync(join(pennyfarthingDir, 'persona-config.yaml'), yamlStringify({ theme: 'discworld' }));
90
+ // Act
91
+ const result = getCurrentTheme(testDir);
92
+ // Assert: config.local.yaml wins
93
+ assert.strictEqual(result, 'star-trek', 'config.local.yaml should take priority over persona-config.yaml');
77
94
  });
78
95
  it('should return null when neither local nor shared exist', () => {
79
96
  // Setup: no config files (just empty directories)
@@ -117,15 +134,14 @@ describe('Theme Configuration', () => {
117
134
  const sharedContent = yamlParse(readFileSync(join(claudeDir, 'persona-config.yaml'), 'utf-8'));
118
135
  assert.strictEqual(sharedContent.theme, 'original-theme', 'Shared config should remain unchanged when setting local theme');
119
136
  });
120
- it('should write to shared config when global option is true', () => {
121
- // Setup: shared config with original theme
122
- const sharedConfig = { theme: 'original-theme' };
123
- writeFileSync(join(claudeDir, 'persona-config.yaml'), yamlStringify(sharedConfig));
137
+ it('should write to .pennyfarthing/persona-config.yaml when global option is true', () => {
124
138
  // Act: set theme with global option
125
139
  setTheme('test-theme', testDir, { global: true });
126
- // Assert: shared config should be updated
127
- const sharedContent = yamlParse(readFileSync(join(claudeDir, 'persona-config.yaml'), 'utf-8'));
128
- assert.strictEqual(sharedContent.theme, 'test-theme', 'Global option should update shared config');
140
+ // Assert: project default config at .pennyfarthing/persona-config.yaml
141
+ const globalPath = join(pennyfarthingDir, 'persona-config.yaml');
142
+ assert.ok(existsSync(globalPath), 'Global option should write to .pennyfarthing/persona-config.yaml');
143
+ const globalContent = yamlParse(readFileSync(globalPath, 'utf-8'));
144
+ assert.strictEqual(globalContent.theme, 'test-theme', 'Global option should update .pennyfarthing/persona-config.yaml');
129
145
  });
130
146
  });
131
147
  describe('Theme precedence integration', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"themes.test.js","sourceRoot":"","sources":["../../../src/cli/utils/themes.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAEtE,2BAA2B;AAC3B,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAExD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,IAAI,OAAe,CAAC;IACpB,IAAI,SAAiB,CAAC;IACtB,IAAI,gBAAwB,CAAC;IAC7B,IAAI,SAAiB,CAAC;IAEtB,kCAAkC;IAClC,MAAM,SAAS,GAAG;QAChB,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,2BAA2B,EAAE;QACvE,MAAM,EAAE;YACN,YAAY,EAAE,EAAE,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE;YAC/D,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;YAC3C,GAAG,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;YAC7C,GAAG,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;YAC7C,QAAQ,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE;YACvD,SAAS,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE;YACzD,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;YAC3C,aAAa,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE;YAC1D,aAAa,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;YACtD,MAAM,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE;SACpD;KACF,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,qDAAqD;QACrD,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,sBAAsB,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpG,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrC,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACnD,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QACpD,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEjD,8CAA8C;QAC9C,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B;QAC1B,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,uEAAuE;YACvE,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YAE5C,aAAa,CACX,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,EAC3C,aAAa,CAAC,WAAW,CAAC,CAC3B,CAAC;YACF,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,YAAY,CAAC,CAC5B,CAAC;YAEF,MAAM;YACN,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAExC,sDAAsD;YACtD,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,2CAA2C,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,4BAA4B;YAC5B,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YAE5C,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,YAAY,CAAC,CAC5B,CAAC;YAEF,MAAM;YACN,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAExC,mCAAmC;YACnC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,kCAAkC,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;YAChE,kDAAkD;YAElD,MAAM;YACN,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAExC,SAAS;YACT,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,0CAA0C,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;YAChE,uEAAuE;YACvE,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;YAC5C,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;YAE9C,aAAa,CACX,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,EAC3C,aAAa,CAAC,WAAW,CAAC,CAC3B,CAAC;YACF,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,YAAY,CAAC,CAC5B,CAAC;YAEF,MAAM;YACN,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAExC,SAAS;YACT,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,mCAAmC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACjD,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;YACrE,qDAAqD;YACrD,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;YAC9C,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,YAAY,CAAC,CAC5B,CAAC;YAEF,sCAAsC;YACtC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAEhC,uDAAuD;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;YAE9D,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,2DAA2D,CAAC,CAAC;YAC9F,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YACjE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,oCAAoC,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,2CAA2C;YAC3C,MAAM,oBAAoB,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;YACzD,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,oBAAoB,CAAC,CACpC,CAAC;YAEF,yBAAyB;YACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAEhC,4CAA4C;YAC5C,MAAM,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/F,MAAM,CAAC,WAAW,CAChB,aAAa,CAAC,KAAK,EACnB,gBAAgB,EAChB,gEAAgE,CACjE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,2CAA2C;YAC3C,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;YACjD,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,YAAY,CAAC,CAC5B,CAAC;YAEF,oCAAoC;YACpC,QAAQ,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAElD,0CAA0C;YAC1C,MAAM,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/F,MAAM,CAAC,WAAW,CAChB,aAAa,CAAC,KAAK,EACnB,YAAY,EACZ,2CAA2C,CAC5C,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,0CAA0C;YAC1C,+CAA+C;YAC/C,qCAAqC;YACrC,yDAAyD;YAEzD,6BAA6B;YAC7B,aAAa,CACX,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACtC,aAAa,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CACtC,CAAC;YAEF,qCAAqC;YACrC,aAAa,CACX,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,EAC3C,aAAa,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CACtC,CAAC;YAEF,wCAAwC;YACxC,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,8CAA8C,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"themes.test.js","sourceRoot":"","sources":["../../../src/cli/utils/themes.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pennyfarthing/core",
3
- "version": "9.4.0",
3
+ "version": "10.0.0",
4
4
  "description": "Claude Code agent framework with TDD workflow and persona system",
5
5
  "type": "module",
6
6
  "keywords": [