@ganglion/xacpx 0.24.2-beta.0 → 0.24.3-beta.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.
@@ -6,7 +6,19 @@ export interface ClaudeExecutionSettings {
6
6
  settingsPolicy?: ClaudeSettingsPolicy;
7
7
  model?: string;
8
8
  }
9
- interface ResolveClaudeSpawnEnvironmentOptions {
9
+ /**
10
+ * Mutation provenance for one Claude spawn-env resolution: which keys the
11
+ * resolver explicitly wrote or removed, independent of whether the value
12
+ * happens to equal the parent. A same-value intentional write (e.g. an
13
+ * explicit session model matching an inherited ANTHROPIC_MODEL) must still
14
+ * ride the Runtime overlay above persisted session env — a pure value diff
15
+ * cannot recover that intent.
16
+ */
17
+ export interface ClaudeEnvironmentProvenance {
18
+ setKeys: Set<string>;
19
+ clearedKeys: Set<string>;
20
+ }
21
+ export interface ResolveClaudeSpawnEnvironmentOptions {
10
22
  baseEnv?: NodeJS.ProcessEnv;
11
23
  homeDir?: string;
12
24
  platform?: NodeJS.Platform;
@@ -22,6 +34,32 @@ interface ResolveClaudeSpawnEnvironmentOptions {
22
34
  * the narrow provider/model fields when a third-party marker is present.
23
35
  */
24
36
  export declare function resolveClaudeSpawnEnvironment(input: ClaudeExecutionSettings, options?: ResolveClaudeSpawnEnvironmentOptions): NodeJS.ProcessEnv | undefined;
37
+ /**
38
+ * Resolves the Runtime `agentProcessEnv` overlay in a single pass: the
39
+ * intentional overlay for acpx, derived with the resolver's own mutation
40
+ * provenance (not a value diff — a same-value intentional write still rides
41
+ * above persisted session env). `undefined` when the resolver yields no env.
42
+ */
43
+ export declare function resolveClaudeAgentProcessEnv(input: ClaudeExecutionSettings, options?: ResolveClaudeSpawnEnvironmentOptions): Record<string, string> | undefined;
44
+ /**
45
+ * Narrows a fully-resolved Claude spawn env (see
46
+ * resolveClaudeSpawnEnvironment) to the intentional Runtime overlay for
47
+ * acpx `agentProcessEnv`. A key crosses the boundary when the resolver
48
+ * explicitly wrote it (provenance, when provided) or when its value
49
+ * differs from the base — the inherited parent remainder stays out, so
50
+ * persisted `sessionOptions.env` keeps its upstream precedence (protected
51
+ * auth > agentProcessEnv > persisted session env > inherited parent env)
52
+ * instead of being shadowed by a re-elevated copy of the parent. A
53
+ * same-value intentional write (e.g. an explicit session model matching
54
+ * an inherited ANTHROPIC_MODEL) still rides the overlay: without
55
+ * provenance a pure value diff cannot tell it apart from inheritance.
56
+ *
57
+ * `resolved === undefined` (first-party provider-only: nothing intentional)
58
+ * narrows to `undefined`, as does an empty delta. `baseEnv` must be the
59
+ * same base the resolver derived from (defaults to process.env, matching
60
+ * the resolver default).
61
+ */
62
+ export declare function narrowToAgentProcessEnvOverlay(resolved: NodeJS.ProcessEnv | undefined, baseEnv?: NodeJS.ProcessEnv, platform?: NodeJS.Platform, provenance?: ClaudeEnvironmentProvenance): Record<string, string> | undefined;
25
63
  declare function linkClaudeSessionState(sourceConfigDir: string, profileDir: string, platform: NodeJS.Platform): void;
26
64
  declare function sanitizeClaudeModelConfig(settings: Record<string, unknown> | undefined): Record<string, unknown>;
27
65
  declare function sanitizeClaudeSettings(settings: Record<string, unknown> | undefined, includeModel: boolean): Record<string, unknown>;