@stigmer/react 3.12.6 → 3.12.7

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 (149) hide show
  1. package/composer/ComposerToolbar.d.ts +19 -1
  2. package/composer/ComposerToolbar.d.ts.map +1 -1
  3. package/composer/ComposerToolbar.js +7 -2
  4. package/composer/ComposerToolbar.js.map +1 -1
  5. package/composer/SessionComposer.d.ts +10 -0
  6. package/composer/SessionComposer.d.ts.map +1 -1
  7. package/composer/SessionComposer.js +2 -2
  8. package/composer/SessionComposer.js.map +1 -1
  9. package/composer/index.d.ts +1 -0
  10. package/composer/index.d.ts.map +1 -1
  11. package/composer/index.js.map +1 -1
  12. package/execution/MessageThread.d.ts.map +1 -1
  13. package/execution/MessageThread.js +8 -11
  14. package/execution/MessageThread.js.map +1 -1
  15. package/execution/useFileChangeContent.d.ts +2 -6
  16. package/execution/useFileChangeContent.d.ts.map +1 -1
  17. package/execution/useFileChangeContent.js +4 -12
  18. package/execution/useFileChangeContent.js.map +1 -1
  19. package/index.d.ts +6 -3
  20. package/index.d.ts.map +1 -1
  21. package/index.js +5 -1
  22. package/index.js.map +1 -1
  23. package/internal/download.d.ts +8 -0
  24. package/internal/download.d.ts.map +1 -0
  25. package/internal/download.js +25 -0
  26. package/internal/download.js.map +1 -0
  27. package/library/useExportResource.d.ts.map +1 -1
  28. package/library/useExportResource.js +3 -17
  29. package/library/useExportResource.js.map +1 -1
  30. package/memory/MemoryListPanel.d.ts +35 -0
  31. package/memory/MemoryListPanel.d.ts.map +1 -0
  32. package/memory/MemoryListPanel.js +141 -0
  33. package/memory/MemoryListPanel.js.map +1 -0
  34. package/memory/index.d.ts +8 -0
  35. package/memory/index.d.ts.map +1 -0
  36. package/memory/index.js +12 -0
  37. package/memory/index.js.map +1 -0
  38. package/memory/memoryGroups.d.ts +31 -0
  39. package/memory/memoryGroups.d.ts.map +1 -0
  40. package/memory/memoryGroups.js +52 -0
  41. package/memory/memoryGroups.js.map +1 -0
  42. package/memory/useConfirmMemory.d.ts +31 -0
  43. package/memory/useConfirmMemory.d.ts.map +1 -0
  44. package/memory/useConfirmMemory.js +43 -0
  45. package/memory/useConfirmMemory.js.map +1 -0
  46. package/memory/useDeleteMemory.d.ts +30 -0
  47. package/memory/useDeleteMemory.d.ts.map +1 -0
  48. package/memory/useDeleteMemory.js +42 -0
  49. package/memory/useDeleteMemory.js.map +1 -0
  50. package/memory/useMemories.d.ts +33 -0
  51. package/memory/useMemories.d.ts.map +1 -0
  52. package/memory/useMemories.js +42 -0
  53. package/memory/useMemories.js.map +1 -0
  54. package/memory/useRejectMemory.d.ts +34 -0
  55. package/memory/useRejectMemory.d.ts.map +1 -0
  56. package/memory/useRejectMemory.js +46 -0
  57. package/memory/useRejectMemory.js.map +1 -0
  58. package/memory/useUpdateMemoryContent.d.ts +32 -0
  59. package/memory/useUpdateMemoryContent.d.ts.map +1 -0
  60. package/memory/useUpdateMemoryContent.js +48 -0
  61. package/memory/useUpdateMemoryContent.js.map +1 -0
  62. package/package.json +4 -4
  63. package/session/NewSessionViewer.d.ts.map +1 -1
  64. package/session/NewSessionViewer.js +9 -1
  65. package/session/NewSessionViewer.js.map +1 -1
  66. package/session/SessionViewer.d.ts +14 -1
  67. package/session/SessionViewer.d.ts.map +1 -1
  68. package/session/SessionViewer.js +21 -25
  69. package/session/SessionViewer.js.map +1 -1
  70. package/session/TranscriptExportMenu.d.ts +24 -0
  71. package/session/TranscriptExportMenu.d.ts.map +1 -0
  72. package/session/TranscriptExportMenu.js +26 -0
  73. package/session/TranscriptExportMenu.js.map +1 -0
  74. package/session/index.d.ts +4 -0
  75. package/session/index.d.ts.map +1 -1
  76. package/session/index.js +2 -0
  77. package/session/index.js.map +1 -1
  78. package/session/useExportTranscript.d.ts +44 -0
  79. package/session/useExportTranscript.d.ts.map +1 -0
  80. package/session/useExportTranscript.js +109 -0
  81. package/session/useExportTranscript.js.map +1 -0
  82. package/session/useNewSessionFlow.d.ts +11 -0
  83. package/session/useNewSessionFlow.d.ts.map +1 -1
  84. package/session/useNewSessionFlow.js +14 -6
  85. package/session/useNewSessionFlow.js.map +1 -1
  86. package/session/useSessionConversation.d.ts.map +1 -1
  87. package/session/useSessionConversation.js +7 -19
  88. package/session/useSessionConversation.js.map +1 -1
  89. package/session/useSessionExecutions.d.ts +2 -14
  90. package/session/useSessionExecutions.d.ts.map +1 -1
  91. package/session/useSessionExecutions.js +4 -26
  92. package/session/useSessionExecutions.js.map +1 -1
  93. package/session/useSessionPageFlow.d.ts +23 -10
  94. package/session/useSessionPageFlow.d.ts.map +1 -1
  95. package/session/useSessionPageFlow.js +61 -9
  96. package/session/useSessionPageFlow.js.map +1 -1
  97. package/settings/MemorySection.d.ts +12 -0
  98. package/settings/MemorySection.d.ts.map +1 -0
  99. package/settings/MemorySection.js +21 -0
  100. package/settings/MemorySection.js.map +1 -0
  101. package/settings/index.d.ts +1 -0
  102. package/settings/index.d.ts.map +1 -1
  103. package/settings/index.js +1 -0
  104. package/settings/index.js.map +1 -1
  105. package/settings/settings-nav.d.ts.map +1 -1
  106. package/settings/settings-nav.js +2 -1
  107. package/settings/settings-nav.js.map +1 -1
  108. package/src/__tests__/public-api.test.ts +21 -0
  109. package/src/composer/ComposerToolbar.tsx +58 -0
  110. package/src/composer/SessionComposer.tsx +13 -1
  111. package/src/composer/__tests__/ComposerToolbar-autoApprove.test.tsx +80 -0
  112. package/src/composer/index.ts +1 -0
  113. package/src/execution/MessageThread.tsx +8 -11
  114. package/src/execution/useFileChangeContent.ts +5 -12
  115. package/src/index.ts +34 -0
  116. package/src/internal/download.ts +29 -0
  117. package/src/library/useExportResource.ts +3 -19
  118. package/src/memory/MemoryListPanel.tsx +532 -0
  119. package/src/memory/__tests__/MemoryListPanel.test.tsx +259 -0
  120. package/src/memory/__tests__/memoryHooks.test.tsx +220 -0
  121. package/src/memory/index.ts +19 -0
  122. package/src/memory/memoryGroups.ts +64 -0
  123. package/src/memory/useConfirmMemory.ts +62 -0
  124. package/src/memory/useDeleteMemory.ts +61 -0
  125. package/src/memory/useMemories.ts +66 -0
  126. package/src/memory/useRejectMemory.ts +65 -0
  127. package/src/memory/useUpdateMemoryContent.ts +67 -0
  128. package/src/session/NewSessionViewer.tsx +15 -1
  129. package/src/session/SessionViewer.tsx +48 -49
  130. package/src/session/TranscriptExportMenu.tsx +78 -0
  131. package/src/session/__tests__/SessionViewer-autoApproveToggle.test.tsx +178 -0
  132. package/src/session/__tests__/SessionViewer-transcriptExport.test.tsx +151 -0
  133. package/src/session/__tests__/TranscriptExportMenu.test.tsx +97 -0
  134. package/src/session/__tests__/useExportTranscript.test.tsx +187 -0
  135. package/src/session/__tests__/useNewSessionFlow.test.tsx +33 -0
  136. package/src/session/__tests__/useSessionPageFlow.autoApprove.test.tsx +176 -2
  137. package/src/session/index.ts +9 -0
  138. package/src/session/useExportTranscript.ts +171 -0
  139. package/src/session/useNewSessionFlow.ts +28 -7
  140. package/src/session/useSessionConversation.ts +10 -16
  141. package/src/session/useSessionExecutions.ts +5 -26
  142. package/src/session/useSessionPageFlow.ts +84 -21
  143. package/src/settings/MemorySection.tsx +45 -0
  144. package/src/settings/index.ts +1 -0
  145. package/src/settings/settings-nav.ts +2 -0
  146. package/src/usage/useExportCSV.ts +2 -14
  147. package/usage/useExportCSV.d.ts.map +1 -1
  148. package/usage/useExportCSV.js +2 -13
  149. package/usage/useExportCSV.js.map +1 -1
@@ -112,20 +112,33 @@ export interface UseSessionPageFlowReturn {
112
112
  /** Session variables (per-execution secrets) manager. */
113
113
  readonly sessionVariables: UseSessionVariablesReturn;
114
114
  /**
115
- * Session-scoped "auto-approve tool calls" preference.
115
+ * Session-scoped "auto-approve tool calls" state (stigmer/stigmer#816).
116
116
  *
117
- * `false` by default; a host can pre-arm it app-wide via
118
- * `StigmerProvider`'s `approvalDefaults` (#302, guests excluded). Flipped
119
- * to `true` when the user chooses "Approve & don't ask again" at an
120
- * approval gate (see {@link submitApproval}), and carried into every
121
- * subsequent follow-up via {@link handleSubmit}. Held in memory only
122
- * reset on reload / new session back to the host default, never persisted
123
- * server-side.
117
+ * `false` by default. `true` when any of its sources arms it the user's
118
+ * explicit choice always winning:
119
+ *
120
+ * 1. the user's composer toggle ({@link setAutoApproveAll});
121
+ * 2. "Approve & don't ask again" at an approval gate (see
122
+ * {@link submitApproval});
123
+ * 3. the host's app-wide `StigmerProvider` `approvalDefaults` (#302,
124
+ * guests excluded);
125
+ * 4. the active in-flight execution having been created with
126
+ * `spec.auto_approve_all` (e.g. armed on the new-session surface), so
127
+ * the state survives the launcher → session-page handoff.
128
+ *
129
+ * While `true`, follow-ups carry `auto_approve_all` ({@link handleSubmit})
130
+ * and gates appearing in the in-flight run are auto-released (never for
131
+ * guest/observer/channel-origin surfaces). Held in memory only — reset on
132
+ * reload back to the host default, never persisted server-side.
124
133
  */
125
134
  readonly autoApproveAll: boolean;
126
135
  /**
127
- * Toggle the session-scoped auto-approve preference. The reversible "Turn off"
128
- * control in the UI calls this with `false`.
136
+ * Set the user's explicit session-scoped auto-approve choice. Wired to the
137
+ * composer's always-visible toggle; an explicit `false` wins over the host
138
+ * default and over an armed in-flight run for everything the client
139
+ * controls (follow-up carry, gate auto-release) — an already-armed run's
140
+ * server-side bypass cannot be revoked mid-run, exactly as with today's
141
+ * gate-time "Approve & don't ask again".
129
142
  */
130
143
  readonly setAutoApproveAll: (value: boolean) => void;
131
144
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useSessionPageFlow.d.ts","sourceRoot":"","sources":["../../src/session/useSessionPageFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSessionPageFlow.d.ts","sourceRoot":"","sources":["../../src/session/useSessionPageFlow.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { resolveExecutionRuntimeEnv } from "./runtime-env.js";
15
15
  import { useAgentRefFromSession } from "./useAgentRefFromSession.js";
16
16
  import { usePersistedModel } from "./usePersistedModel.js";
17
17
  import { toSessionUpdateInput } from "@stigmer/sdk";
18
+ import { isChannelOriginSession } from "./channelOrigin.js";
18
19
  import { assertValidRunConfig } from "./run-config.js";
19
20
  /**
20
21
  * Well-known Daytona sandbox workspace root. Used as the SDK safety-net
@@ -116,25 +117,76 @@ export function useSessionPageFlow(options) {
116
117
  const [mcpServerUsages, setMcpServerUsages] = useState([]);
117
118
  const [skillRefs, setSkillRefs] = useState([]);
118
119
  const initialSyncDone = useRef(false);
119
- // Session-scoped auto-approve. Armed either at the approval gate ("Approve &
120
- // don't ask again") or from the host's provider-level approvalDefaults
121
- // (#302) an app-level trust judgment, so it seeds the INITIAL state only;
122
- // the user's in-session "Turn off" always wins from then on. Guests never
123
- // inherit the host default (a share-link visitor is not the operator the
124
- // host's trust judgment covers). Lives only in memory for the life of this
125
- // page reset on reload re-applies the host default, never a user choice.
120
+ // Session-scoped auto-approve (#816). Derived like interactionMode above
121
+ // the user's explicit in-session decision wins, otherwise the truth is
122
+ // computed from its sources never an effect-synced copy:
123
+ //
124
+ // effective = userChoice ?? (hostSeed || runArmed)
125
+ //
126
+ // - `userChoice`: the composer toggle, or the gate-time "Approve & don't
127
+ // ask again" (which has always escalated the session preference).
128
+ // - `hostSeed`: the host's provider-level approvalDefaults (#302) — an
129
+ // app-level trust judgment. Guests never inherit it (a share-link
130
+ // visitor is not the operator the host's trust judgment covers).
131
+ // - `runArmed`: the ACTIVE execution was created with
132
+ // spec.auto_approve_all, so the toggle reflects an armed in-flight run —
133
+ // this is what carries the state across the new-session → session-page
134
+ // handoff. Deliberately derived from the active execution ONLY, never
135
+ // from history: deriving from past executions would silently survive a
136
+ // reload and change the reset-on-reload consent contract below.
137
+ //
138
+ // Lives only in memory for the life of this page — reset on reload
139
+ // re-applies the host default, never a user choice.
126
140
  const approvalDefaults = useApprovalDefaults();
127
- const [autoApproveAll, setAutoApproveAll] = useState(() => !isGuest && (approvalDefaults?.autoApproveAll ?? false));
141
+ const [autoApproveChoice, setAutoApproveChoice] = useState(null);
142
+ const hostSeed = !isGuest && (approvalDefaults?.autoApproveAll ?? false);
143
+ const runArmed = conv.activeStreamExecution?.spec?.autoApproveAll === true;
144
+ const autoApproveAll = autoApproveChoice ?? (hostSeed || runArmed);
145
+ const setAutoApproveAll = useCallback((value) => {
146
+ setAutoApproveChoice(value);
147
+ }, []);
128
148
  const submitApproval = useCallback(async (toolCallId, action, comment) => {
129
149
  // "Approve & don't ask again": remember the choice for the rest of this
130
150
  // live session so future follow-ups carry auto_approve_all. The control
131
151
  // plane separately resolves the current execution's remaining gates and
132
152
  // the runner skips the gate for the rest of that run.
133
153
  if (action === ApprovalAction.APPROVE_ALL) {
134
- setAutoApproveAll(true);
154
+ setAutoApproveChoice(true);
135
155
  }
136
156
  await conv.submitApproval(toolCallId, action, comment);
137
157
  }, [conv.submitApproval]);
158
+ // Armed responder (#816, the walk-away scenario): while auto-approve is ON,
159
+ // answer each approval gate as it appears in the in-flight run. This must be
160
+ // a standing responder, not a flip-time one-shot: a gate-time APPROVE_ALL
161
+ // grants a lease scoped to ONE tool class (see APPROVAL_ACTION_APPROVE_ALL
162
+ // in agentexecution enum.proto), so a later gate of a different class would
163
+ // still park the run — the responder covers each class as it surfaces, and
164
+ // every released call keeps an honest audit decision.
165
+ //
166
+ // Read-only surfaces must never auto-submit approvals on a viewer's behalf:
167
+ // the predicate mirrors SessionViewer's read-only derivation (guest audience,
168
+ // observer audience, channel-origin session) exactly.
169
+ const canRespondToGates = !isGuest &&
170
+ options.audience !== "observer" &&
171
+ !isChannelOriginSession(conv.session);
172
+ const respondedToolCallIds = useRef(new Set());
173
+ useEffect(() => {
174
+ if (!autoApproveAll || !canRespondToGates)
175
+ return;
176
+ for (const approval of conv.pendingApprovals) {
177
+ const toolCallId = approval.toolCallId;
178
+ // Marked before the submit resolves so a re-render mid-flight cannot
179
+ // double-submit. A failed submission is deliberately NOT retried — the
180
+ // approval card stays for a manual decision instead of a retry storm.
181
+ if (!toolCallId || respondedToolCallIds.current.has(toolCallId))
182
+ continue;
183
+ respondedToolCallIds.current.add(toolCallId);
184
+ void conv.submitApproval(toolCallId, ApprovalAction.APPROVE_ALL).catch(() => {
185
+ // Swallowed by design (see above); the card's own error surface
186
+ // reports the failure where the user can act on it.
187
+ });
188
+ }
189
+ }, [autoApproveAll, canRespondToGates, conv.pendingApprovals, conv.submitApproval]);
138
190
  // -------------------------------------------------------------------------
139
191
  // Agent — derive from session, allow mid-session changes
140
192
  // -------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"useSessionPageFlow.js","sourceRoot":"","sources":["../../src/session/useSessionPageFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSessionPageFlow.js","sourceRoot":"","sources":["../../src/session/useSessionPageFlow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Settings section listing everything the platform remembers about the
3
+ * caller in the active organization.
4
+ *
5
+ * The helper copy carries the DD-006 D6 transparency statement: a
6
+ * confirmed memory is injected into the caller's future sessions and
7
+ * appears in those executions' records. Memory content everywhere else
8
+ * is subject-only — this page shows the caller their own records and
9
+ * nobody else's.
10
+ */
11
+ export declare function MemorySection(): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=MemorySection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemorySection.d.ts","sourceRoot":"","sources":["../../src/settings/MemorySection.tsx"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,wBAAgB,aAAa,4CA4B5B"}
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from "react";
4
+ import { MemoryListPanel } from "../memory/MemoryListPanel.js";
5
+ import { useActiveOrgSlug } from "../organization/OrgProvider.js";
6
+ /**
7
+ * Settings section listing everything the platform remembers about the
8
+ * caller in the active organization.
9
+ *
10
+ * The helper copy carries the DD-006 D6 transparency statement: a
11
+ * confirmed memory is injected into the caller's future sessions and
12
+ * appears in those executions' records. Memory content everywhere else
13
+ * is subject-only — this page shows the caller their own records and
14
+ * nobody else's.
15
+ */
16
+ export function MemorySection() {
17
+ const headingId = useId();
18
+ const org = useActiveOrgSlug();
19
+ return (_jsxs("section", { "aria-labelledby": headingId, children: [_jsx("h2", { id: headingId, className: "stg:text-foreground stg:mb-1 stg:text-sm stg:font-semibold", children: "Memory" }), _jsx("p", { className: "stg:text-muted-foreground stg:mb-6 stg:text-xs", children: "Facts agents proposed to remember about you in this organization. Confirmed memories are shared with agents in your future sessions and appear in those executions' records. Only you can see them here, and you can edit or delete any of them at any time." }), !org ? (_jsx("p", { className: "stg:text-muted-foreground stg:py-4 stg:text-center stg:text-xs", children: "Select an organization to view its memories." })) : (_jsx(MemoryListPanel, { org: org }))] }));
20
+ }
21
+ //# sourceMappingURL=MemorySection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemorySection.js","sourceRoot":"","sources":["../../src/settings/MemorySection.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;IAE/B,OAAO,CACL,sCAA0B,SAAS,aACjC,aACE,EAAE,EAAE,SAAS,EACb,SAAS,EAAC,4DAA4D,uBAGnE,EACL,YAAG,SAAS,EAAC,gDAAgD,6QAKzD,EAEH,CAAC,GAAG,CAAC,CAAC,CAAC,CACN,YAAG,SAAS,EAAC,gEAAgE,6DAEzE,CACL,CAAC,CAAC,CAAC,CACF,KAAC,eAAe,IAAC,GAAG,EAAE,GAAG,GAAI,CAC9B,IACO,CACX,CAAC;AACJ,CAAC"}
@@ -8,6 +8,7 @@ export { MembersSection } from "./MembersSection.js";
8
8
  export { OrgProfileSection } from "./OrgProfileSection.js";
9
9
  export { OrgPreferencesSection } from "./OrgPreferencesSection.js";
10
10
  export { AccountPreferencesSection } from "./AccountPreferencesSection.js";
11
+ export { MemorySection } from "./MemorySection.js";
11
12
  export { EnvironmentsSection } from "./EnvironmentsSection.js";
12
13
  export { InvitationsSection } from "./InvitationsSection.js";
13
14
  export { IdentityProvidersSection } from "./IdentityProvidersSection.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
package/settings/index.js CHANGED
@@ -6,6 +6,7 @@ export { MembersSection } from "./MembersSection.js";
6
6
  export { OrgProfileSection } from "./OrgProfileSection.js";
7
7
  export { OrgPreferencesSection } from "./OrgPreferencesSection.js";
8
8
  export { AccountPreferencesSection } from "./AccountPreferencesSection.js";
9
+ export { MemorySection } from "./MemorySection.js";
9
10
  export { EnvironmentsSection } from "./EnvironmentsSection.js";
10
11
  export { InvitationsSection } from "./InvitationsSection.js";
11
12
  export { IdentityProvidersSection } from "./IdentityProvidersSection.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-nav.d.ts","sourceRoot":"","sources":["../../src/settings/settings-nav.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAoB3C,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;QAC3B,mDAAmD;QACnD,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,kEAAkE;AAClE,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;CAC5C;AAED,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EA4D1D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBAwBzC,CAAC"}
1
+ {"version":3,"file":"settings-nav.d.ts","sourceRoot":"","sources":["../../src/settings/settings-nav.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAqB3C,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;QAC3B,mDAAmD;QACnD,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,kEAAkE;AAClE,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;CAC5C;AAED,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EA6D1D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBAwBzC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Activity, AppWindow, BarChart3, Box, Building2, CreditCard, KeyRound, Link, MessageSquare, MousePointerClick, Plug, Scale, ShieldCheck, SlidersHorizontal, UserCog, Users, } from "lucide-react";
1
+ import { Activity, AppWindow, BarChart3, Box, Brain, Building2, CreditCard, KeyRound, Link, MessageSquare, MousePointerClick, Plug, Scale, ShieldCheck, SlidersHorizontal, UserCog, Users, } from "lucide-react";
2
2
  /** Canonical settings sidebar/grouped navigation model. */
3
3
  export const SETTINGS_NAV_GROUPS = [
4
4
  {
@@ -56,6 +56,7 @@ export const SETTINGS_NAV_GROUPS = [
56
56
  label: "Preferences",
57
57
  icon: UserCog,
58
58
  },
59
+ { href: "/settings/memory", label: "Memory", icon: Brain },
59
60
  ],
60
61
  },
61
62
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"settings-nav.js","sourceRoot":"","sources":["../../src/settings/settings-nav.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,GAAG,EACH,SAAS,EACT,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,aAAa,EACb,iBAAiB,EACjB,IAAI,EACJ,KAAK,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,KAAK,GACN,MAAM,cAAc,CAAC;AAiCtB,2DAA2D;AAC3D,MAAM,CAAC,MAAM,mBAAmB,GAAgC;IAC9D;QACE,KAAK,EAAE,cAAc;QACrB,WAAW,EACT,kEAAkE;QACpE,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;YACxE;gBACE,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,iBAAiB;aACxB;YACD,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;YAC5D,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE;YACnE;gBACE,IAAI,EAAE,8BAA8B;gBACpC,KAAK,EAAE,oBAAoB;gBAC3B,IAAI,EAAE,WAAW;aAClB;SACF;KACF;IACD;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EACT,mFAAmF;QACrF,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjE;gBACE,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,kBAAkB;gBACzB,IAAI,EAAE,IAAI;aACX;YACD,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE;YACpE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;YACtE;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,cAAc;gBACrB,IAAI,EAAE,aAAa;aACpB;SACF;KACF;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,sCAAsC;QACnD,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YACjE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;KACF;IACD;QACE,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,0DAA0D;QACvE,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,+BAA+B;gBACrC,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,OAAO;aACd;SACF;KACF;CACF,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAqB;IAC3D,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,kEAAkE;IACpE,KAAK,EAAE;QACL;YACE,IAAI,EAAE,8BAA8B;YACpC,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,KAAK;YACX,kBAAkB,EAAE,0BAA0B;SAC/C;QACD;YACE,IAAI,EAAE,2BAA2B;YACjC,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,iBAAiB;YACvB,kBAAkB,EAAE,4BAA4B;SACjD;QACD;YACE,IAAI,EAAE,6BAA6B;YACnC,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,QAAQ;YACd,kBAAkB,EAAE,4BAA4B;SACjD;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"settings-nav.js","sourceRoot":"","sources":["../../src/settings/settings-nav.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { describe, expect, it } from "vitest";
2
+
3
+ import type { SessionRunConfig } from "../index.js";
4
+
5
+ // Root-surface pin (oss#802): the package's exports map exposes only the root
6
+ // barrel, so a type an embedder must name has to be re-exported from
7
+ // src/index.ts. The type-only import above is enforced by the typecheck gate
8
+ // (`tsc --noEmit`), which fails this file if the root export regresses —
9
+ // vitest alone would not catch it (esbuild strips types unchecked).
10
+ describe("public API surface", () => {
11
+ it("SessionRunConfig is importable from the package root", () => {
12
+ // Compile-time is the real assertion; construct a value against the type
13
+ // so the import cannot be flagged unused.
14
+ const pinned: SessionRunConfig = {
15
+ modelName: "claude-opus-5",
16
+ serviceTier: "fast",
17
+ thinkingMode: "enabled",
18
+ };
19
+ expect(pinned.modelName).toBe("claude-opus-5");
20
+ });
21
+ });
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
 
3
+ import { useId } from "react";
3
4
  import { cn } from "@stigmer/theme";
4
5
  import {
5
6
  Tooltip,
@@ -7,6 +8,7 @@ import {
7
8
  TooltipProvider,
8
9
  TooltipTrigger,
9
10
  } from "../internal/tooltip.js";
11
+ import { Switch } from "../switch/Switch.js";
10
12
  import { ContextPopover } from "./ContextPopover.js";
11
13
  import { ConfigureMenu, type ConfigureMenuItem } from "./ConfigureMenu.js";
12
14
  import { ModelSelector } from "../models/ModelSelector.js";
@@ -23,6 +25,18 @@ import {
23
25
  } from "./icons.js";
24
26
  import { SpinnerIcon } from "../internal/SpinnerIcon.js";
25
27
 
28
+ /**
29
+ * Wiring for the always-available "auto-approve tool calls" toggle
30
+ * (stigmer/stigmer#816). Presence renders the control; omission keeps the
31
+ * toolbar byte-identical for consumers that don't wire it (DD-011).
32
+ */
33
+ export interface ComposerAutoApproveProps {
34
+ /** Whether auto-approve is currently armed for this conversation. */
35
+ readonly armed: boolean;
36
+ /** Called with the next value when the user flips the toggle. */
37
+ readonly onChange: (armed: boolean) => void;
38
+ }
39
+
26
40
  export interface ComposerToolbarProps {
27
41
  readonly disabled: boolean;
28
42
  readonly isSubmitting: boolean;
@@ -47,6 +61,14 @@ export interface ComposerToolbarProps {
47
61
  readonly interactionMode?: InteractionModeOption;
48
62
  readonly onInteractionModeChange: (mode: InteractionModeOption) => void;
49
63
 
64
+ /**
65
+ * Always-available auto-approve toggle (#816). Deliberately NOT bound to
66
+ * {@link disabled}: the walk-away user flips it exactly while a turn
67
+ * streams, so it stays interactive under the composer lock — the same
68
+ * exemption the Stop button carries.
69
+ */
70
+ readonly autoApprove?: ComposerAutoApproveProps;
71
+
50
72
  readonly showModelSelector: boolean;
51
73
  readonly modelId?: string;
52
74
  readonly onModelChange: (id: string) => void;
@@ -128,6 +150,7 @@ export function ComposerToolbar({
128
150
  showInteractionModePicker,
129
151
  interactionMode,
130
152
  onInteractionModeChange,
153
+ autoApprove,
131
154
  showModelSelector,
132
155
  modelId,
133
156
  onModelChange,
@@ -137,6 +160,7 @@ export function ComposerToolbar({
137
160
  onThinkingModeChange,
138
161
  }: ComposerToolbarProps) {
139
162
  const showHarnessSeparate = showHarnessSelector && !showModelSelector;
163
+ const autoApproveLabelId = useId();
140
164
 
141
165
  return (
142
166
  <div className="stg:flex stg:items-center stg:justify-between stg:gap-2 stg:border-t stg:border-border-muted stg:px-3 stg:py-2">
@@ -173,6 +197,40 @@ export function ComposerToolbar({
173
197
  disabled={disabled}
174
198
  />
175
199
  )}
200
+
201
+ {/* Auto-approve (#816): primary state like Mode and Model — armed
202
+ vs gated is something the user glances at before walking away.
203
+ Never bound to `disabled` (see ComposerAutoApproveProps): the
204
+ whole point is flipping it while a turn streams. Scoped provider:
205
+ this tooltip does not share the icon cluster's hover-delay group. */}
206
+ {autoApprove && (
207
+ <TooltipProvider>
208
+ <Tooltip>
209
+ <TooltipTrigger render={<span className="stg:inline-flex" />}>
210
+ <span className="stg:flex stg:shrink-0 stg:items-center stg:gap-1.5 stg:px-1">
211
+ <label
212
+ id={autoApproveLabelId}
213
+ htmlFor={`${autoApproveLabelId}-switch`}
214
+ className="stg:cursor-pointer stg:select-none stg:text-xs stg:text-muted-foreground"
215
+ >
216
+ Auto-approve
217
+ </label>
218
+ <Switch
219
+ id={`${autoApproveLabelId}-switch`}
220
+ checked={autoApprove.armed}
221
+ onCheckedChange={autoApprove.onChange}
222
+ aria-labelledby={autoApproveLabelId}
223
+ />
224
+ </span>
225
+ </TooltipTrigger>
226
+ <TooltipContent side="top">
227
+ {autoApprove.armed
228
+ ? "Tool calls run without asking — this conversation only. Turn off to be asked again."
229
+ : "Run this conversation's tool calls without asking for approval, including the run in progress."}
230
+ </TooltipContent>
231
+ </Tooltip>
232
+ </TooltipProvider>
233
+ )}
176
234
  </div>
177
235
 
178
236
  {/* ---- Right group: Secondary actions (icon-only) + Send ----
@@ -4,7 +4,7 @@ import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useMemo,
4
4
  import { cn } from "@stigmer/theme";
5
5
  import { getUserMessage, type AttachmentInput, type EnvVarInput, type McpServerUsageInput, type ResourceRef } from "@stigmer/sdk";
6
6
  import { useComposer } from "./useComposer.js";
7
- import { ComposerToolbar } from "./ComposerToolbar.js";
7
+ import { ComposerToolbar, type ComposerAutoApproveProps } from "./ComposerToolbar.js";
8
8
  import { type ConfigureMenuItem } from "./ConfigureMenu.js";
9
9
  import type { HarnessOption } from "../models/harness.js";
10
10
  import { FAST_SERVICE_TIER, type ServiceTierOption } from "../models/service-tier.js";
@@ -300,6 +300,16 @@ export interface SessionComposerProps {
300
300
  /** Show the model selector. @default true */
301
301
  readonly showModelSelector?: boolean;
302
302
 
303
+ /**
304
+ * Always-visible "auto-approve tool calls" toggle in the toolbar
305
+ * (stigmer/stigmer#816). Presence renders it; omission keeps the composer
306
+ * byte-identical (DD-011). Stays interactive while the composer is
307
+ * `disabled` — the walk-away user flips it exactly while a turn streams —
308
+ * so consumers must only wire it on surfaces whose viewer may submit
309
+ * approvals (never guest/observer). See {@link ComposerAutoApproveProps}.
310
+ */
311
+ readonly autoApprove?: ComposerAutoApproveProps;
312
+
303
313
  /**
304
314
  * Workspace state managed by {@link useWorkspaceEntries}.
305
315
  * When provided, renders a workspace trigger in the toolbar
@@ -617,6 +627,7 @@ const SessionComposerInner = forwardRef<SessionComposerHandle, SessionComposerPr
617
627
  defaultModelId,
618
628
  onModelChange,
619
629
  showModelSelector = true,
630
+ autoApprove,
620
631
  workspace,
621
632
  gitHubConnection,
622
633
  enableGitHub = true,
@@ -1920,6 +1931,7 @@ const SessionComposerInner = forwardRef<SessionComposerHandle, SessionComposerPr
1920
1931
  interactionMode={interactionMode}
1921
1932
  onInteractionModeChange={handleInteractionModeChange}
1922
1933
  showModelSelector={showModelSelector}
1934
+ autoApprove={autoApprove}
1923
1935
  // The pill renders the effective selection — the same value the
1924
1936
  // submit payload carries (#663), never a fallback of its own.
1925
1937
  modelId={effective.modelId}
@@ -0,0 +1,80 @@
1
+ import { describe, it, expect, vi, afterEach } from "vitest";
2
+ import { render, screen, cleanup, fireEvent } from "@testing-library/react";
3
+ import { ComposerToolbar, type ComposerToolbarProps } from "../ComposerToolbar";
4
+
5
+ afterEach(cleanup);
6
+
7
+ function baseProps(overrides: Partial<ComposerToolbarProps> = {}): ComposerToolbarProps {
8
+ return {
9
+ disabled: false,
10
+ isSubmitting: false,
11
+ canSend: true,
12
+ onSend: vi.fn(),
13
+ showHarnessSelector: false,
14
+ harness: "native",
15
+ onHarnessChange: vi.fn(),
16
+ showInteractionModePicker: false,
17
+ interactionMode: "agent",
18
+ onInteractionModeChange: vi.fn(),
19
+ showModelSelector: false,
20
+ modelId: undefined,
21
+ onModelChange: vi.fn(),
22
+ showWorkspace: false,
23
+ workspaceCount: 0,
24
+ workspaceContent: null,
25
+ showAttach: false,
26
+ attachmentCount: 0,
27
+ onAttachClick: vi.fn(),
28
+ configureItems: [],
29
+ configOpen: false,
30
+ onConfigOpenChange: vi.fn(),
31
+ configActivePanel: null,
32
+ onConfigActivePanelChange: vi.fn(),
33
+ renderConfigPanel: () => null,
34
+ ...overrides,
35
+ };
36
+ }
37
+
38
+ describe("ComposerToolbar auto-approve toggle (#816)", () => {
39
+ it("renders nothing when the prop is omitted (DD-011 opt-in)", () => {
40
+ render(<ComposerToolbar {...baseProps()} />);
41
+ expect(screen.queryByRole("switch")).toBeNull();
42
+ expect(screen.queryByText("Auto-approve")).toBeNull();
43
+ });
44
+
45
+ it("renders a labeled switch reflecting the armed state", () => {
46
+ render(
47
+ <ComposerToolbar
48
+ {...baseProps({ autoApprove: { armed: true, onChange: vi.fn() } })}
49
+ />,
50
+ );
51
+ const toggle = screen.getByRole("switch", { name: "Auto-approve" });
52
+ expect(toggle.getAttribute("aria-checked")).toBe("true");
53
+ });
54
+
55
+ it("flipping calls onChange with the next value", () => {
56
+ const onChange = vi.fn();
57
+ render(
58
+ <ComposerToolbar
59
+ {...baseProps({ autoApprove: { armed: false, onChange } })}
60
+ />,
61
+ );
62
+ fireEvent.click(screen.getByRole("switch", { name: "Auto-approve" }));
63
+ expect(onChange).toHaveBeenCalledExactlyOnceWith(true);
64
+ });
65
+
66
+ it("stays interactive while the toolbar is disabled (the walk-away flip)", () => {
67
+ // The whole point of the toggle is arming DURING a streaming turn, when
68
+ // the rest of the composer is locked — the Stop-button exemption.
69
+ const onChange = vi.fn();
70
+ render(
71
+ <ComposerToolbar
72
+ {...baseProps({ disabled: true, autoApprove: { armed: false, onChange } })}
73
+ />,
74
+ );
75
+ const toggle = screen.getByRole("switch", { name: "Auto-approve" });
76
+ expect(toggle.hasAttribute("disabled")).toBe(false);
77
+ fireEvent.click(toggle);
78
+ expect(onChange).toHaveBeenCalledExactlyOnceWith(true);
79
+ });
80
+ });
@@ -7,6 +7,7 @@ export type {
7
7
  SessionComposerProps,
8
8
  SessionComposerSubmitContext,
9
9
  } from "./SessionComposer.js";
10
+ export type { ComposerAutoApproveProps } from "./ComposerToolbar.js";
10
11
 
11
12
  export { InteractionModePicker } from "./InteractionModePicker.js";
12
13
  export type {
@@ -20,7 +20,7 @@ import {
20
20
  ToolCallStatus,
21
21
  } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
22
22
  import type { WorkspaceEntry } from "@stigmer/protos/ai/stigmer/agentic/session/v1/workspace_pb";
23
- import { displayFileChangeSets } from "@stigmer/sdk";
23
+ import { displayFileChangeSets, syntheticUserPrompt } from "@stigmer/sdk";
24
24
  import { cn } from "@stigmer/theme";
25
25
  import { isTerminalPhase } from "./execution-phases.js";
26
26
  import { MessageEntry, type MessageEntryProps } from "./MessageEntry.js";
@@ -764,17 +764,14 @@ export function buildThreadItems(
764
764
  });
765
765
  }
766
766
 
767
- const specMessage = exec.spec?.message;
768
- // A Build-from-plan turn synthesizes NO prompt item: its message is a
769
- // machine-written label ("Build from plan"), not user prose — the real
770
- // instruction is runner-injected from the same flag. The plan card
771
- // directly above the turn is the visible cause; rendering the label as a
772
- // user bubble would attribute words to the user they never typed.
773
- const isBuildTurn = exec.spec?.executionConfig?.buildFromPlan === true;
774
- if (specMessage && specMessage !== "execute" && !isBuildTurn) {
767
+ // The user-turn synthesis rule (empty / "execute" placeholder /
768
+ // Build-from-plan skips) is the shared conversation rule see
769
+ // syntheticUserPrompt in @stigmer/sdk for the why of each skip.
770
+ const promptText = syntheticUserPrompt(exec);
771
+ if (promptText) {
775
772
  const syntheticHumanMsg = create(AgentMessageSchema);
776
773
  syntheticHumanMsg.type = MessageType.MESSAGE_HUMAN;
777
- syntheticHumanMsg.content = specMessage;
774
+ syntheticHumanMsg.content = promptText;
778
775
 
779
776
  // When the active stream execution's spec message matches the
780
777
  // pending user message, use a shared bridging key so React
@@ -782,7 +779,7 @@ export function buildThreadItems(
782
779
  const bridgePending =
783
780
  isActiveStreamExec &&
784
781
  pendingUserMessage != null &&
785
- specMessage === pendingUserMessage;
782
+ promptText === pendingUserMessage;
786
783
 
787
784
  // The turn's submitted files (spec.attachments, by reference — the spec
788
785
  // never mutates and structural sharing keeps the ref stable, so the