@awak-app/simy-cli 0.7.46 → 0.7.48

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.
@@ -34,6 +34,8 @@ export async function claudePluginFiles() {
34
34
  for (const name of ["loop-kernel.mjs", "loop-kernel/index.mjs", "loop-kernel/policy.json", "loop-kernel/pin.json", "loop-kernel/outcome-review.mjs", "loop-kernel/work-frontier.mjs", "loop-kernel/task-pool.mjs"]) {
35
35
  files.set(`hooks/${name}`, await readFile(path.join(SOURCE, "hooks", name), "utf8"));
36
36
  }
37
+ // The shared hook imports this standalone helper; no native bridge is needed.
38
+ files.set("native/guidance-intent.mjs", await readFile(path.join(SOURCE, "native/guidance-intent.mjs"), "utf8"));
37
39
  const collector = await readFile(new URL("../cli-observability.js", import.meta.url), "utf8");
38
40
  // Standalone hooks do not ship the CLI capability dependency graph. Freeze the
39
41
  // maintained package version into their generated collector instead.
@@ -475,6 +475,8 @@ async function runSingleProviderReview(
475
475
  ) {
476
476
  assertProvider(provider);
477
477
  assertStructuredRequest(request);
478
+ // Probe the same filtered environment used by the actual provider process.
479
+ environment = safeReviewEnvironment(environment, provider);
478
480
  if (signal?.aborted) throw new SqmLocalReviewError('Local analysis was cancelled.', { code: 'analysis_cancelled' });
479
481
  const label = provider === "claude" ? "Claude Code" : "Codex";
480
482
  const inspection = await inspectExecutor(provider);
@@ -621,7 +623,7 @@ function spawnReview(command, args, prompt, { spawnImpl, dispatchTransport, exec
621
623
  child = dispatchTransport(() => {
622
624
  try {
623
625
  return spawnImpl(command, args, {
624
- env: safeReviewEnvironment(environment, provider), cwd, windowsHide: true, detached: process.platform !== "win32", stdio: ["pipe", "pipe", "pipe"],
626
+ env: environment, cwd, windowsHide: true, detached: process.platform !== "win32", stdio: ["pipe", "pipe", "pipe"],
625
627
  });
626
628
  } catch { throw providerFailure("provider_spawn_failed", { model }); }
627
629
  });
@@ -811,6 +813,8 @@ function providerSignInRequired(message) {
811
813
  function safeReviewEnvironment(environment, provider) {
812
814
  const allowed = [
813
815
  "HOME", "PATH", "CODEX_HOME", "CLAUDE_CONFIG_DIR",
816
+ // Native credential lookup on macOS needs the local user identity too.
817
+ "USER", "LOGNAME",
814
818
  "SystemRoot", "SYSTEMROOT", "USERPROFILE", "APPDATA", "LOCALAPPDATA", "TEMP", "TMP", "LANG", "LC_ALL", "LC_CTYPE", "TMPDIR",
815
819
  "SSL_CERT_FILE", "SSL_CERT_DIR", "HTTPS_PROXY", "HTTP_PROXY", "ALL_PROXY", "NO_PROXY",
816
820
  ];