gsd-pi 2.68.1-dev.c1497ab → 2.68.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.
Files changed (172) hide show
  1. package/dist/resources/extensions/gsd/bootstrap/write-gate.js +5 -1
  2. package/dist/resources/extensions/gsd/guided-flow.js +70 -25
  3. package/dist/resources/extensions/gsd/model-router.js +2 -32
  4. package/dist/resources/extensions/gsd/prompt-validation.js +67 -0
  5. package/dist/resources/extensions/gsd/prompts/discuss-prepared.md +424 -0
  6. package/dist/resources/extensions/gsd/prompts/discuss.md +0 -2
  7. package/dist/resources/extensions/gsd/templates/context-enhanced.md +138 -0
  8. package/dist/resources/extensions/gsd/templates/context.md +2 -34
  9. package/dist/web/standalone/.next/BUILD_ID +1 -1
  10. package/dist/web/standalone/.next/app-path-routes-manifest.json +12 -12
  11. package/dist/web/standalone/.next/build-manifest.json +3 -3
  12. package/dist/web/standalone/.next/prerender-manifest.json +3 -3
  13. package/dist/web/standalone/.next/required-server-files.json +3 -3
  14. package/dist/web/standalone/.next/server/app/_global-error/page.js +3 -3
  15. package/dist/web/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  16. package/dist/web/standalone/.next/server/app/_global-error.html +1 -1
  17. package/dist/web/standalone/.next/server/app/_global-error.rsc +1 -1
  18. package/dist/web/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  20. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  21. package/dist/web/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/dist/web/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/dist/web/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/dist/web/standalone/.next/server/app/_not-found/page.js +2 -2
  25. package/dist/web/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  26. package/dist/web/standalone/.next/server/app/_not-found.html +1 -1
  27. package/dist/web/standalone/.next/server/app/_not-found.rsc +3 -3
  28. package/dist/web/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  29. package/dist/web/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  30. package/dist/web/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  31. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  32. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  33. package/dist/web/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  34. package/dist/web/standalone/.next/server/app/api/boot/route.js +1 -1
  35. package/dist/web/standalone/.next/server/app/api/boot/route_client-reference-manifest.js +1 -1
  36. package/dist/web/standalone/.next/server/app/api/bridge-terminal/input/route.js +1 -1
  37. package/dist/web/standalone/.next/server/app/api/bridge-terminal/input/route_client-reference-manifest.js +1 -1
  38. package/dist/web/standalone/.next/server/app/api/bridge-terminal/resize/route.js +1 -1
  39. package/dist/web/standalone/.next/server/app/api/bridge-terminal/resize/route_client-reference-manifest.js +1 -1
  40. package/dist/web/standalone/.next/server/app/api/bridge-terminal/stream/route.js +2 -2
  41. package/dist/web/standalone/.next/server/app/api/bridge-terminal/stream/route_client-reference-manifest.js +1 -1
  42. package/dist/web/standalone/.next/server/app/api/browse-directories/route.js +1 -1
  43. package/dist/web/standalone/.next/server/app/api/browse-directories/route_client-reference-manifest.js +1 -1
  44. package/dist/web/standalone/.next/server/app/api/captures/route.js +1 -1
  45. package/dist/web/standalone/.next/server/app/api/captures/route_client-reference-manifest.js +1 -1
  46. package/dist/web/standalone/.next/server/app/api/cleanup/route.js +1 -1
  47. package/dist/web/standalone/.next/server/app/api/cleanup/route_client-reference-manifest.js +1 -1
  48. package/dist/web/standalone/.next/server/app/api/dev-mode/route.js +1 -1
  49. package/dist/web/standalone/.next/server/app/api/dev-mode/route_client-reference-manifest.js +1 -1
  50. package/dist/web/standalone/.next/server/app/api/doctor/route.js +1 -1
  51. package/dist/web/standalone/.next/server/app/api/doctor/route_client-reference-manifest.js +1 -1
  52. package/dist/web/standalone/.next/server/app/api/experimental/route.js +2 -2
  53. package/dist/web/standalone/.next/server/app/api/experimental/route_client-reference-manifest.js +1 -1
  54. package/dist/web/standalone/.next/server/app/api/export-data/route.js +1 -1
  55. package/dist/web/standalone/.next/server/app/api/export-data/route_client-reference-manifest.js +1 -1
  56. package/dist/web/standalone/.next/server/app/api/files/route.js +1 -1
  57. package/dist/web/standalone/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
  58. package/dist/web/standalone/.next/server/app/api/forensics/route.js +1 -1
  59. package/dist/web/standalone/.next/server/app/api/forensics/route_client-reference-manifest.js +1 -1
  60. package/dist/web/standalone/.next/server/app/api/git/route.js +1 -1
  61. package/dist/web/standalone/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  62. package/dist/web/standalone/.next/server/app/api/history/route.js +1 -1
  63. package/dist/web/standalone/.next/server/app/api/history/route_client-reference-manifest.js +1 -1
  64. package/dist/web/standalone/.next/server/app/api/hooks/route.js +1 -1
  65. package/dist/web/standalone/.next/server/app/api/hooks/route_client-reference-manifest.js +1 -1
  66. package/dist/web/standalone/.next/server/app/api/inspect/route.js +1 -1
  67. package/dist/web/standalone/.next/server/app/api/inspect/route_client-reference-manifest.js +1 -1
  68. package/dist/web/standalone/.next/server/app/api/knowledge/route.js +1 -1
  69. package/dist/web/standalone/.next/server/app/api/knowledge/route_client-reference-manifest.js +1 -1
  70. package/dist/web/standalone/.next/server/app/api/live-state/route.js +1 -1
  71. package/dist/web/standalone/.next/server/app/api/live-state/route_client-reference-manifest.js +1 -1
  72. package/dist/web/standalone/.next/server/app/api/notifications/route.js +2 -2
  73. package/dist/web/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  74. package/dist/web/standalone/.next/server/app/api/onboarding/route.js +1 -1
  75. package/dist/web/standalone/.next/server/app/api/onboarding/route_client-reference-manifest.js +1 -1
  76. package/dist/web/standalone/.next/server/app/api/preferences/route.js +1 -1
  77. package/dist/web/standalone/.next/server/app/api/preferences/route_client-reference-manifest.js +1 -1
  78. package/dist/web/standalone/.next/server/app/api/projects/route.js +1 -1
  79. package/dist/web/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  80. package/dist/web/standalone/.next/server/app/api/recovery/route.js +1 -1
  81. package/dist/web/standalone/.next/server/app/api/recovery/route_client-reference-manifest.js +1 -1
  82. package/dist/web/standalone/.next/server/app/api/remote-questions/route.js +2 -2
  83. package/dist/web/standalone/.next/server/app/api/remote-questions/route_client-reference-manifest.js +1 -1
  84. package/dist/web/standalone/.next/server/app/api/session/browser/route.js +1 -1
  85. package/dist/web/standalone/.next/server/app/api/session/browser/route_client-reference-manifest.js +1 -1
  86. package/dist/web/standalone/.next/server/app/api/session/command/route.js +1 -1
  87. package/dist/web/standalone/.next/server/app/api/session/command/route_client-reference-manifest.js +1 -1
  88. package/dist/web/standalone/.next/server/app/api/session/events/route.js +2 -2
  89. package/dist/web/standalone/.next/server/app/api/session/events/route_client-reference-manifest.js +1 -1
  90. package/dist/web/standalone/.next/server/app/api/session/manage/route.js +1 -1
  91. package/dist/web/standalone/.next/server/app/api/session/manage/route_client-reference-manifest.js +1 -1
  92. package/dist/web/standalone/.next/server/app/api/settings-data/route.js +1 -1
  93. package/dist/web/standalone/.next/server/app/api/settings-data/route_client-reference-manifest.js +1 -1
  94. package/dist/web/standalone/.next/server/app/api/shutdown/route.js +1 -1
  95. package/dist/web/standalone/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  96. package/dist/web/standalone/.next/server/app/api/skill-health/route.js +1 -1
  97. package/dist/web/standalone/.next/server/app/api/skill-health/route_client-reference-manifest.js +1 -1
  98. package/dist/web/standalone/.next/server/app/api/steer/route.js +1 -1
  99. package/dist/web/standalone/.next/server/app/api/steer/route_client-reference-manifest.js +1 -1
  100. package/dist/web/standalone/.next/server/app/api/switch-root/route.js +1 -1
  101. package/dist/web/standalone/.next/server/app/api/switch-root/route_client-reference-manifest.js +1 -1
  102. package/dist/web/standalone/.next/server/app/api/terminal/input/route.js +1 -1
  103. package/dist/web/standalone/.next/server/app/api/terminal/input/route_client-reference-manifest.js +1 -1
  104. package/dist/web/standalone/.next/server/app/api/terminal/resize/route.js +2 -2
  105. package/dist/web/standalone/.next/server/app/api/terminal/resize/route_client-reference-manifest.js +1 -1
  106. package/dist/web/standalone/.next/server/app/api/terminal/sessions/route.js +1 -1
  107. package/dist/web/standalone/.next/server/app/api/terminal/sessions/route_client-reference-manifest.js +1 -1
  108. package/dist/web/standalone/.next/server/app/api/terminal/stream/route.js +2 -2
  109. package/dist/web/standalone/.next/server/app/api/terminal/stream/route_client-reference-manifest.js +1 -1
  110. package/dist/web/standalone/.next/server/app/api/terminal/upload/route.js +1 -1
  111. package/dist/web/standalone/.next/server/app/api/terminal/upload/route_client-reference-manifest.js +1 -1
  112. package/dist/web/standalone/.next/server/app/api/undo/route.js +1 -1
  113. package/dist/web/standalone/.next/server/app/api/undo/route_client-reference-manifest.js +1 -1
  114. package/dist/web/standalone/.next/server/app/api/update/route.js +1 -1
  115. package/dist/web/standalone/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  116. package/dist/web/standalone/.next/server/app/api/visualizer/route.js +1 -1
  117. package/dist/web/standalone/.next/server/app/api/visualizer/route_client-reference-manifest.js +1 -1
  118. package/dist/web/standalone/.next/server/app/index.html +1 -1
  119. package/dist/web/standalone/.next/server/app/index.rsc +4 -4
  120. package/dist/web/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  121. package/dist/web/standalone/.next/server/app/index.segments/_full.segment.rsc +4 -4
  122. package/dist/web/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  123. package/dist/web/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
  124. package/dist/web/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  125. package/dist/web/standalone/.next/server/app/page.js +2 -2
  126. package/dist/web/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  127. package/dist/web/standalone/.next/server/app-paths-manifest.json +12 -12
  128. package/dist/web/standalone/.next/server/chunks/63.js +3 -3
  129. package/dist/web/standalone/.next/server/chunks/6897.js +1 -1
  130. package/dist/web/standalone/.next/server/middleware-build-manifest.js +1 -1
  131. package/dist/web/standalone/.next/server/middleware.js +2 -2
  132. package/dist/web/standalone/.next/server/next-font-manifest.js +1 -1
  133. package/dist/web/standalone/.next/server/next-font-manifest.json +1 -1
  134. package/dist/web/standalone/.next/server/pages/404.html +1 -1
  135. package/dist/web/standalone/.next/server/pages/500.html +1 -1
  136. package/dist/web/standalone/.next/server/server-reference-manifest.json +1 -1
  137. package/dist/web/standalone/.next/static/chunks/app/_not-found/{page-f2a7482d42a5614b.js → page-2f24283c162b6ab3.js} +1 -1
  138. package/dist/web/standalone/.next/static/chunks/app/{layout-a16c7a7ecdf0c2cf.js → layout-9ecfd95f343793f0.js} +1 -1
  139. package/dist/web/standalone/.next/static/chunks/app/page-7115e62689b5fd84.js +1 -0
  140. package/dist/web/standalone/.next/static/chunks/main-app-d3d4c336195465f9.js +1 -0
  141. package/dist/web/standalone/.next/static/chunks/next/dist/client/components/builtin/global-error-ab5a8926e07ec673.js +1 -0
  142. package/dist/web/standalone/node_modules/node-pty/build/Makefile +2 -2
  143. package/dist/web/standalone/node_modules/node-pty/build/Release/pty.node +0 -0
  144. package/dist/web/standalone/node_modules/node-pty/build/pty.target.mk +14 -14
  145. package/dist/web/standalone/node_modules/node-pty/node-addon-api/node_addon_api.target.mk +14 -14
  146. package/dist/web/standalone/node_modules/node-pty/node-addon-api/node_addon_api_except.target.mk +14 -14
  147. package/dist/web/standalone/node_modules/node-pty/node-addon-api/node_addon_api_maybe.target.mk +14 -14
  148. package/dist/web/standalone/server.js +1 -1
  149. package/package.json +1 -1
  150. package/src/resources/extensions/gsd/auto-model-selection.ts +3 -1
  151. package/src/resources/extensions/gsd/bootstrap/write-gate.ts +5 -1
  152. package/src/resources/extensions/gsd/guided-flow.ts +84 -22
  153. package/src/resources/extensions/gsd/model-router.ts +10 -44
  154. package/src/resources/extensions/gsd/preferences-types.ts +1 -3
  155. package/src/resources/extensions/gsd/prompt-validation.ts +88 -0
  156. package/src/resources/extensions/gsd/prompts/discuss-prepared.md +424 -0
  157. package/src/resources/extensions/gsd/prompts/discuss.md +0 -2
  158. package/src/resources/extensions/gsd/templates/context-enhanced.md +138 -0
  159. package/src/resources/extensions/gsd/templates/context.md +2 -34
  160. package/src/resources/extensions/gsd/tests/adversarial-review-fixes.test.ts +223 -0
  161. package/src/resources/extensions/gsd/tests/capability-router.test.ts +7 -31
  162. package/src/resources/extensions/gsd/tests/integration/test-isolation.ts +53 -0
  163. package/src/resources/extensions/gsd/tests/integration-prepared-discussion.test.ts +525 -0
  164. package/src/resources/extensions/gsd/tests/model-router.test.ts +2 -2
  165. package/src/resources/extensions/gsd/tests/preparation.test.ts +1211 -0
  166. package/src/resources/extensions/gsd/tests/prompt-builder.test.ts +669 -0
  167. package/src/resources/extensions/gsd/tests/write-gate.test.ts +16 -13
  168. package/dist/web/standalone/.next/static/chunks/app/page-f1e30ab6bb269149.js +0 -1
  169. package/dist/web/standalone/.next/static/chunks/main-app-fdab67f7802d7832.js +0 -1
  170. package/dist/web/standalone/.next/static/chunks/next/dist/client/components/builtin/global-error-459824ffb8c323dd.js +0 -1
  171. /package/dist/web/standalone/.next/static/{5D80IWYltFwlAJiCZ84MC → u9mQsApZYm8sVYSAaft8g}/_buildManifest.js +0 -0
  172. /package/dist/web/standalone/.next/static/{5D80IWYltFwlAJiCZ84MC → u9mQsApZYm8sVYSAaft8g}/_ssgManifest.js +0 -0
@@ -230,13 +230,16 @@ import {
230
230
  // ─── Scenario 19: isGateQuestionId recognizes all gate patterns ──
231
231
 
232
232
  test('write-gate: isGateQuestionId recognizes all gate patterns', () => {
233
+ assert.strictEqual(isGateQuestionId('layer1_scope_gate'), true);
234
+ assert.strictEqual(isGateQuestionId('layer2_architecture_gate'), true);
235
+ assert.strictEqual(isGateQuestionId('layer3_error_gate'), true);
236
+ assert.strictEqual(isGateQuestionId('layer4_quality_gate'), true);
233
237
  assert.strictEqual(isGateQuestionId('depth_verification'), true);
234
238
  assert.strictEqual(isGateQuestionId('depth_verification_M002'), true);
235
- assert.strictEqual(isGateQuestionId('depth_verification_confirm'), true);
239
+ assert.strictEqual(isGateQuestionId('my_layer1_scope_gate_question'), true);
236
240
  // Non-gate question IDs
237
241
  assert.strictEqual(isGateQuestionId('project_intent'), false);
238
242
  assert.strictEqual(isGateQuestionId('feature_priority'), false);
239
- assert.strictEqual(isGateQuestionId('layer1_scope_gate'), false);
240
243
  assert.strictEqual(isGateQuestionId(''), false);
241
244
  });
242
245
 
@@ -246,14 +249,14 @@ test('write-gate: pending gate lifecycle (set, get, clear)', () => {
246
249
  clearDiscussionFlowState();
247
250
  assert.strictEqual(getPendingGate(), null, 'starts null');
248
251
 
249
- setPendingGate('depth_verification');
250
- assert.strictEqual(getPendingGate(), 'depth_verification', 'set correctly');
252
+ setPendingGate('layer1_scope_gate');
253
+ assert.strictEqual(getPendingGate(), 'layer1_scope_gate', 'set correctly');
251
254
 
252
255
  clearPendingGate();
253
256
  assert.strictEqual(getPendingGate(), null, 'cleared correctly');
254
257
 
255
258
  // clearDiscussionFlowState also clears pending gate
256
- setPendingGate('depth_verification_M002');
259
+ setPendingGate('layer2_architecture_gate');
257
260
  clearDiscussionFlowState();
258
261
  assert.strictEqual(getPendingGate(), null, 'clearDiscussionFlowState clears pending gate');
259
262
  });
@@ -262,12 +265,12 @@ test('write-gate: pending gate lifecycle (set, get, clear)', () => {
262
265
 
263
266
  test('write-gate: shouldBlockPendingGate blocks write/edit during pending gate', () => {
264
267
  clearDiscussionFlowState();
265
- setPendingGate('depth_verification');
268
+ setPendingGate('layer1_scope_gate');
266
269
 
267
270
  // write should be blocked during discussion
268
271
  const writeResult = shouldBlockPendingGate('write', 'M001', false);
269
272
  assert.strictEqual(writeResult.block, true, 'write should be blocked');
270
- assert.ok(writeResult.reason!.includes('depth_verification'), 'reason mentions the gate');
273
+ assert.ok(writeResult.reason!.includes('layer1_scope_gate'), 'reason mentions the gate');
271
274
 
272
275
  // edit should be blocked
273
276
  const editResult = shouldBlockPendingGate('edit', 'M001', false);
@@ -284,7 +287,7 @@ test('write-gate: shouldBlockPendingGate blocks write/edit during pending gate',
284
287
 
285
288
  test('write-gate: shouldBlockPendingGate allows read-only and ask_user_questions during pending gate', () => {
286
289
  clearDiscussionFlowState();
287
- setPendingGate('depth_verification');
290
+ setPendingGate('layer1_scope_gate');
288
291
 
289
292
  // ask_user_questions is always safe (model needs to re-ask)
290
293
  assert.strictEqual(shouldBlockPendingGate('ask_user_questions', 'M001').block, false);
@@ -301,7 +304,7 @@ test('write-gate: shouldBlockPendingGate allows read-only and ask_user_questions
301
304
 
302
305
  test('write-gate: shouldBlockPendingGate blocks outside discussion when a gate is pending', () => {
303
306
  clearDiscussionFlowState();
304
- setPendingGate('depth_verification');
307
+ setPendingGate('layer1_scope_gate');
305
308
 
306
309
  // No milestoneId and no queue phase — still block because the gate is pending
307
310
  const result = shouldBlockPendingGate('write', null, false);
@@ -327,7 +330,7 @@ test('write-gate: shouldBlockPendingGate blocks in queue mode when gate is pendi
327
330
 
328
331
  test('write-gate: shouldBlockPendingGateBash allows read-only commands during pending gate', () => {
329
332
  clearDiscussionFlowState();
330
- setPendingGate('depth_verification');
333
+ setPendingGate('layer2_architecture_gate');
331
334
 
332
335
  assert.strictEqual(shouldBlockPendingGateBash('cat file.txt', 'M001').block, false);
333
336
  assert.strictEqual(shouldBlockPendingGateBash('git log --oneline', 'M001').block, false);
@@ -341,11 +344,11 @@ test('write-gate: shouldBlockPendingGateBash allows read-only commands during pe
341
344
 
342
345
  test('write-gate: shouldBlockPendingGateBash blocks mutating commands during pending gate', () => {
343
346
  clearDiscussionFlowState();
344
- setPendingGate('depth_verification');
347
+ setPendingGate('layer2_architecture_gate');
345
348
 
346
349
  const result = shouldBlockPendingGateBash('npm run build', 'M001');
347
350
  assert.strictEqual(result.block, true, 'mutating bash should be blocked');
348
- assert.ok(result.reason!.includes('depth_verification'));
351
+ assert.ok(result.reason!.includes('layer2_architecture_gate'));
349
352
 
350
353
  clearDiscussionFlowState();
351
354
  });
@@ -362,7 +365,7 @@ test('write-gate: no pending gate means no blocking', () => {
362
365
  // ─── Scenario 28: resetWriteGateState clears pending gate ──
363
366
 
364
367
  test('write-gate: resetWriteGateState clears pending gate', () => {
365
- setPendingGate('depth_verification');
368
+ setPendingGate('layer3_error_gate');
366
369
  resetWriteGateState();
367
370
  assert.strictEqual(getPendingGate(), null);
368
371
  });
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974],{2600:(e,t,n)=>{Promise.resolve().then(n.bind(n,66919))},5214:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return r.workAsyncStorageInstance}});let r=n(17828)},17828:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return r}});let r=(0,n(64054).createAsyncLocalStorage)()},21957:(e,t,n)=>{"use strict";function r({moduleIds:e}){return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return r}}),n(95155),n(47650),n(5214),n(2451),n(53887)},37206:(e,t,n)=>{"use strict";n.d(t,{default:()=>u.a});var r=n(75707),u=n.n(r)},41112:(e,t,n)=>{"use strict";function r({reason:e,children:t}){return t}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return r}}),n(1980)},64054:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={bindSnapshot:function(){return s},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return i}};for(var r in n)Object.defineProperty(t,r,{enumerable:!0,get:n[r]});let u=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class l{disable(){throw u}getStore(){}run(){throw u}exit(){throw u}enterWith(){throw u}static bind(e){return e}}let o="u">typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return o?new o:new l}function s(e){return o?o.bind(e):l.bind(e)}function i(){return o?o.snapshot():function(e,...t){return e(...t)}}},66919:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>l});var r=n(95155);let u=(0,n(37206).default)(()=>Promise.all([n.e(1838),n.e(6079),n.e(4986),n.e(2008),n.e(2826)]).then(n.bind(n,62826)).then(e=>e.GSDAppShell),{loadableGenerated:{webpack:()=>[62826]},ssr:!1,loading:()=>(0,r.jsx)("div",{className:"flex h-screen items-center justify-center bg-background text-sm text-muted-foreground",children:"Loading workspace…"})});function l(){return(0,r.jsx)(u,{})}},68635:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return s}});let r=n(95155),u=n(12115),l=n(41112);function o(e){return{default:e&&"default"in e?e.default:e}}n(21957);let a={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},s=function(e){let t={...a,...e},n=(0,u.lazy)(()=>t.loader().then(o)),s=t.loading;function i(e){let o=s?(0,r.jsx)(s,{isLoading:!0,pastDelay:!0,error:null}):null,a=!t.ssr||!!t.loading,i=a?u.Suspense:u.Fragment,c=t.ssr?(0,r.jsxs)(r.Fragment,{children:[null,(0,r.jsx)(n,{...e})]}):(0,r.jsx)(l.BailoutToCSR,{reason:"next/dynamic",children:(0,r.jsx)(n,{...e})});return(0,r.jsx)(i,{...a?{fallback:o}:{},children:c})}return i.displayName="LoadableComponent",i}},75707:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return u}});let r=n(73623)._(n(68635));function u(e,t){let n={};"function"==typeof e&&(n.loader=e);let u={...n,...t};return(0,r.default)({...u,modules:u.loadableGenerated?.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}},e=>{e.O(0,[8441,3794,7358],()=>e(e.s=2600)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7358],{19393:()=>{},55548:(e,s,n)=>{Promise.resolve().then(n.t.bind(n,27123,23)),Promise.resolve().then(n.t.bind(n,61304,23)),Promise.resolve().then(n.t.bind(n,78616,23)),Promise.resolve().then(n.t.bind(n,64777,23)),Promise.resolve().then(n.t.bind(n,57121,23)),Promise.resolve().then(n.t.bind(n,74581,23)),Promise.resolve().then(n.t.bind(n,90484,23)),Promise.resolve().then(n.bind(n,86869))}},e=>{var s=s=>e(e.s=s);e.O(0,[8441,3794],()=>(s(83861),s(55548))),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9337],{43946:(e,s,_)=>{Promise.resolve().then(_.t.bind(_,27123,23))}},e=>{e.O(0,[8441,3794,7358],()=>e(e.s=43946)),_N_E=e.O()}]);