@happier-dev/stack 0.2.0 → 0.2.1-preview.1775586714.26562

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 (107) hide show
  1. package/node_modules/@happier-dev/agents/dist/.tsbuildinfo +1 -1
  2. package/node_modules/@happier-dev/agents/dist/index.d.ts +1 -1
  3. package/node_modules/@happier-dev/agents/dist/index.d.ts.map +1 -1
  4. package/node_modules/@happier-dev/agents/dist/index.js.map +1 -1
  5. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/claudeRemote.d.ts +9 -9
  6. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/codex.d.ts +5 -5
  7. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.d.ts +14 -1
  8. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.d.ts.map +1 -1
  9. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.js +25 -12
  10. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.js.map +1 -1
  11. package/node_modules/@happier-dev/cli-common/dist/.tsbuildinfo +1 -1
  12. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.js +1 -1
  13. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.js.map +1 -1
  14. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.d.ts.map +1 -1
  15. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.js +2 -1
  16. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.js.map +1 -1
  17. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.js +22 -0
  18. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.js.map +1 -1
  19. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.d.ts +2 -2
  20. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.d.ts.map +1 -1
  21. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.js +1 -1
  22. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.js.map +1 -1
  23. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.d.ts +12 -0
  24. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.d.ts.map +1 -1
  25. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.js +18 -0
  26. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.js.map +1 -1
  27. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.js +39 -0
  28. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.js.map +1 -1
  29. package/node_modules/@happier-dev/cli-common/dist/process/index.d.ts +1 -1
  30. package/node_modules/@happier-dev/cli-common/dist/process/index.d.ts.map +1 -1
  31. package/node_modules/@happier-dev/cli-common/dist/process/index.js +1 -1
  32. package/node_modules/@happier-dev/cli-common/dist/process/index.js.map +1 -1
  33. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.d.ts +1 -0
  34. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.d.ts.map +1 -1
  35. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.js +23 -5
  36. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.js.map +1 -1
  37. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.test.d.ts +2 -0
  38. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.test.d.ts.map +1 -0
  39. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.test.js +64 -0
  40. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.test.js.map +1 -0
  41. package/node_modules/@happier-dev/cli-common/dist/providers/index.d.ts +1 -1
  42. package/node_modules/@happier-dev/cli-common/dist/providers/index.d.ts.map +1 -1
  43. package/node_modules/@happier-dev/cli-common/dist/providers/index.js +1 -1
  44. package/node_modules/@happier-dev/cli-common/dist/providers/index.js.map +1 -1
  45. package/node_modules/@happier-dev/cli-common/dist/providers/install.d.ts.map +1 -1
  46. package/node_modules/@happier-dev/cli-common/dist/providers/install.js +3 -1
  47. package/node_modules/@happier-dev/cli-common/dist/providers/install.js.map +1 -1
  48. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.d.ts.map +1 -1
  49. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.js +10 -1
  50. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.js.map +1 -1
  51. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.js +58 -1
  52. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.js.map +1 -1
  53. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.d.ts +2 -0
  54. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.d.ts.map +1 -1
  55. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.js +120 -32
  56. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.js.map +1 -1
  57. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.d.ts.map +1 -1
  58. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.js +10 -1
  59. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.js.map +1 -1
  60. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.js +6 -0
  61. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.js.map +1 -1
  62. package/node_modules/@happier-dev/protocol/dist/.tsbuildinfo +1 -1
  63. package/node_modules/@happier-dev/protocol/dist/e2e/providerSpec.d.ts +2 -2
  64. package/node_modules/@happier-dev/protocol/dist/features/decision.d.ts +2 -2
  65. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/authCapabilities.d.ts +1 -1
  66. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/capabilitiesSchema.d.ts +1 -1
  67. package/node_modules/@happier-dev/protocol/dist/features/payload/featuresResponseSchema.d.ts +1 -1
  68. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewFindingsV1.d.ts +3 -3
  69. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewFindingsV2.d.ts +1 -1
  70. package/node_modules/@happier-dev/release-runtime/dist/.tsbuildinfo +1 -1
  71. package/package.json +1 -1
  72. package/scripts/doctor.mjs +10 -2
  73. package/scripts/env.mjs +2 -5
  74. package/scripts/env_cmd.test.mjs +32 -0
  75. package/scripts/ghops.mjs +7 -4
  76. package/scripts/ghops.test.mjs +42 -1
  77. package/scripts/happier.mjs +2 -2
  78. package/scripts/menubar.mjs +2 -2
  79. package/scripts/run.mjs +2 -2
  80. package/scripts/self_host_runtime.mjs +10 -7
  81. package/scripts/self_host_runtime.test.mjs +47 -0
  82. package/scripts/service.mjs +10 -3
  83. package/scripts/stack.mjs +3 -2
  84. package/scripts/tailscale.mjs +2 -2
  85. package/scripts/utils/env/config.mjs +2 -7
  86. package/scripts/utils/env/env.mjs +9 -5
  87. package/scripts/utils/env/env_local.mjs +2 -1
  88. package/scripts/utils/paths/canonical_home.mjs +11 -3
  89. package/scripts/utils/paths/canonical_home.test.mjs +11 -3
  90. package/scripts/utils/paths/paths.mjs +17 -5
  91. package/scripts/utils/paths/paths_home_env.test.mjs +43 -0
  92. package/scripts/utils/proc/pm.mjs +9 -4
  93. package/scripts/utils/proc/pm_stack_cache_env.test.mjs +28 -0
  94. package/scripts/utils/review/targets.mjs +2 -2
  95. package/scripts/utils/server/apply_server_light_env_defaults.mjs +4 -3
  96. package/scripts/utils/server/apply_server_light_env_defaults.test.mjs +25 -0
  97. package/scripts/utils/server/urls.mjs +3 -5
  98. package/scripts/utils/server/urls.test.mjs +22 -1
  99. package/scripts/utils/service/stack_autostart_resolution.mjs +6 -2
  100. package/scripts/utils/service/stack_autostart_resolution.test.mjs +13 -1
  101. package/scripts/utils/stack/context.mjs +2 -3
  102. package/scripts/utils/stack/context.test.mjs +18 -0
  103. package/scripts/utils/stack/dirs.mjs +4 -4
  104. package/scripts/utils/stack/dirs.test.mjs +33 -0
  105. package/scripts/utils/stack/stop.mjs +2 -2
  106. package/scripts/where.mjs +15 -4
  107. package/scripts/worktrees.mjs +2 -1
@@ -3,7 +3,16 @@ import { isAbsolute, join, resolve as resolvePath } from 'node:path';
3
3
  export function resolveHappyHomeDirFromEnvironment(processEnv = process.env) {
4
4
  const override = typeof processEnv.HAPPIER_HOME_DIR === 'string' ? processEnv.HAPPIER_HOME_DIR.trim() : '';
5
5
  if (override) {
6
- return isAbsolute(override) ? override : resolvePath(override);
6
+ const envHome = process.platform === 'win32'
7
+ ? (processEnv.USERPROFILE || processEnv.HOME)
8
+ : processEnv.HOME;
9
+ const normalizedHome = typeof envHome === 'string' ? envHome.trim() : '';
10
+ const expandedOverride = override === '~'
11
+ ? (normalizedHome || homedir())
12
+ : override.startsWith('~/') || override.startsWith('~\\')
13
+ ? join(normalizedHome || homedir(), override.slice(2))
14
+ : override;
15
+ return isAbsolute(expandedOverride) ? expandedOverride : resolvePath(expandedOverride);
7
16
  }
8
17
  const envHome = (processEnv.HOME ?? processEnv.USERPROFILE ?? '').trim();
9
18
  let baseHome = envHome;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveHappyHomeDir.js","sourceRoot":"","sources":["../../src/providers/resolveHappyHomeDir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAErE,MAAM,UAAU,kCAAkC,CAAC,aAAgC,OAAO,CAAC,GAAG;IAC5F,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3G,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzE,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,CAAC;YACH,QAAQ,GAAG,OAAO,EAAE,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"resolveHappyHomeDir.js","sourceRoot":"","sources":["../../src/providers/resolveHappyHomeDir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAErE,MAAM,UAAU,kCAAkC,CAAC,aAAgC,OAAO,CAAC,GAAG;IAC5F,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3G,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GACX,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC1B,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC;YAC7C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QACtB,MAAM,cAAc,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,gBAAgB,GACpB,QAAQ,KAAK,GAAG;YACd,CAAC,CAAC,CAAC,cAAc,IAAI,OAAO,EAAE,CAAC;YAC/B,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC;gBACvD,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtD,CAAC,CAAC,QAAQ,CAAC;QACjB,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzE,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,CAAC;YACH,QAAQ,GAAG,OAAO,EAAE,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC"}
@@ -6,6 +6,12 @@ describe('resolveHappyHomeDirFromEnvironment', () => {
6
6
  it('returns an absolute override path unchanged', () => {
7
7
  expect(resolveHappyHomeDirFromEnvironment({ HAPPIER_HOME_DIR: '/tmp/happier-home' })).toBe('/tmp/happier-home');
8
8
  });
9
+ it('expands ~/ override paths against the configured home directory', () => {
10
+ expect(resolveHappyHomeDirFromEnvironment({
11
+ HAPPIER_HOME_DIR: '~/custom-happier-home',
12
+ HOME: '/Users/tester',
13
+ })).toBe('/Users/tester/custom-happier-home');
14
+ });
9
15
  it('resolves relative override paths to absolute paths', () => {
10
16
  expect(resolveHappyHomeDirFromEnvironment({ HAPPIER_HOME_DIR: 'relative-home' })).toBe(resolvePath('relative-home'));
11
17
  });
@@ -1 +1 @@
1
- {"version":3,"file":"resolveHappyHomeDir.test.js","sourceRoot":"","sources":["../../src/providers/resolveHappyHomeDir.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,EAAE,kCAAkC,EAAE,MAAM,0BAA0B,CAAC;AAE9E,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,kCAAkC,CAAC,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,CAAC,kCAAkC,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,kCAAkC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"resolveHappyHomeDir.test.js","sourceRoot":"","sources":["../../src/providers/resolveHappyHomeDir.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,EAAE,kCAAkC,EAAE,MAAM,0BAA0B,CAAC;AAE9E,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,kCAAkC,CAAC,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,CAAC,kCAAkC,CAAC;YACxC,gBAAgB,EAAE,uBAAuB;YACzC,IAAI,EAAE,eAAe;SACtB,CAAC,CAAC,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,CAAC,kCAAkC,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,kCAAkC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}