glimmervoid 0.44.2 → 0.45.1-next.45
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.
- package/dist/bin/glimmervoid.js +15 -15
- package/dist/chunks/{adapters-7AfJ6yb3.js → adapters-BE9BKVW0.js} +24 -24
- package/dist/chunks/{adapters-B_ss_kZh.js → adapters-CPaysZkO.js} +1 -1
- package/dist/chunks/{agent-api-cli-prUJ5ZGN.js → agent-api-cli-B0l8uLos.js} +1 -1
- package/dist/chunks/{agent-api-cli-zwuWZlwk.js → agent-api-cli-Bq9J0_D5.js} +148 -15
- package/dist/chunks/{agent-api-core-DQwd2ClI.js → agent-api-core-ClU9-5K3.js} +10 -4
- package/dist/chunks/{agent-setup-cli-7hG401Io.js → agent-setup-cli-BA_1AdhQ.js} +2 -2
- package/dist/chunks/{contracts-lxJ0sQEl.js → build-channel-qgKwNssc.js} +37 -3
- package/dist/chunks/{config-DlKkg6IX.js → config-BqJTnPae.js} +27 -34
- package/dist/chunks/{config-path-core-DFt-TemS.js → config-path-core-DUWk0Lui.js} +5 -1
- package/dist/chunks/config-store-5xpRLHFo.js +1 -0
- package/dist/chunks/{config-store-DIrwF5iQ.js → config-store-BGTg8oKO.js} +77 -78
- package/dist/chunks/{git-version-C3lznLS_.js → git-version-BpdkKH2j.js} +1 -1
- package/dist/chunks/{grok-Di4aQGre.js → grok-7jK8ZNtf.js} +1 -1
- package/dist/chunks/{json-file-DFCTvPjj.js → json-file-BjFK_eSH.js} +2 -7
- package/dist/chunks/{main-BCbulgNv.js → main-x9ygUnoL.js} +1226 -1012
- package/dist/chunks/{pair-cli-B3VRcrHm.js → pair-cli-Cph4TZ2R.js} +2 -2
- package/dist/chunks/{remote-config-C91HwjWq.js → remote-config-CmP36r_s.js} +2 -2
- package/dist/chunks/{rtk-resolver-BDHi6RMv.js → rtk-resolver-C_IReILP.js} +1 -1
- package/dist/chunks/rtk-resolver-DgnNb1or.js +1 -0
- package/dist/chunks/{session-CUc6d7aS.js → session-BwlLY_mv.js} +36 -14
- package/dist/chunks/{session-routes--hrsvv7a.js → session-routes-CviNvxcz.js} +9 -1
- package/dist/chunks/{settings-cli-C9eCc60b.js → settings-cli-Bete5oVk.js} +11 -10
- package/dist/chunks/{settings-readout-core-DK1m5TUq.js → settings-readout-core-CS8MPaIE.js} +14 -8
- package/dist/chunks/shown-files-core-soMzCQ1D.js +145 -0
- package/dist/chunks/{ssh-sign-cli-DCnHgHqo.js → ssh-sign-cli-DXhuqzuy.js} +2 -2
- package/dist/client/assets/action-status-BwqYb9eF.js +1 -0
- package/dist/client/assets/action-status-BwqYb9eF.js.br +0 -0
- package/dist/client/assets/benchmark-panel-BulIdLtq.js +1 -0
- package/dist/client/assets/benchmark-panel-BulIdLtq.js.br +0 -0
- package/dist/client/assets/card-dom-DkZgkeG9.js +1 -0
- package/dist/client/assets/card-dom-DkZgkeG9.js.br +0 -0
- package/dist/client/assets/control-ws-CAcwW-r9.js +4 -0
- package/dist/client/assets/control-ws-CAcwW-r9.js.br +0 -0
- package/dist/client/assets/dialogs-CCP1ipXD.js +79 -0
- package/dist/client/assets/dialogs-CCP1ipXD.js.br +0 -0
- package/dist/client/assets/dom-helpers-xJduxDcc.js +1 -0
- package/dist/client/assets/dom-helpers-xJduxDcc.js.br +0 -0
- package/dist/client/assets/hooks-panel-BWDeSHtM.js +1 -0
- package/dist/client/assets/hooks-panel-BWDeSHtM.js.br +0 -0
- package/dist/client/assets/index-D6m--U7B.js +84 -0
- package/dist/client/assets/index-D6m--U7B.js.br +0 -0
- package/dist/client/assets/index-DF3BLGk9.css +2 -0
- package/dist/client/assets/index-DF3BLGk9.css.br +0 -0
- package/dist/client/assets/issues-panel-B7Y1Lpyx.js +1 -0
- package/dist/client/assets/issues-panel-B7Y1Lpyx.js.br +0 -0
- package/dist/client/assets/modal-mWl2H7A_.js +1 -0
- package/dist/client/assets/modal-mWl2H7A_.js.br +0 -0
- package/dist/client/assets/plan-face-DpzZfVeG.js +3 -0
- package/dist/client/assets/plan-face-DpzZfVeG.js.br +0 -0
- package/dist/client/assets/{poll-ago-Dj148faJ.js → poll-ago-Bc-8mMFj.js} +1 -1
- package/dist/client/assets/poll-ago-Bc-8mMFj.js.br +0 -0
- package/dist/client/assets/pr-scope-tabs-DftvVYU8.js +1 -0
- package/dist/client/assets/pr-scope-tabs-DftvVYU8.js.br +0 -0
- package/dist/client/assets/radar-panel-hxjF7m9Z.js +1 -0
- package/dist/client/assets/radar-panel-hxjF7m9Z.js.br +0 -0
- package/dist/client/assets/review-queue-panel-8bP8Q7RR.js +10 -0
- package/dist/client/assets/review-queue-panel-8bP8Q7RR.js.br +0 -0
- package/dist/client/assets/roving-keys-core-BDobx2It.js +1 -0
- package/dist/client/assets/settings-panel-B50lNcrt.js +4 -0
- package/dist/client/assets/settings-panel-B50lNcrt.js.br +0 -0
- package/dist/client/assets/trace-panel-Dy-fgi9c.js +2 -0
- package/dist/client/assets/trace-panel-Dy-fgi9c.js.br +0 -0
- package/dist/client/assets/ui-prefs-CNf6fId2.js +1 -0
- package/dist/client/assets/ui-prefs-CNf6fId2.js.br +0 -0
- package/dist/client/assets/usage-panel-D2JuiQ4G.js +1 -0
- package/dist/client/assets/usage-panel-D2JuiQ4G.js.br +0 -0
- package/dist/client/assets/visions-panel-CI6CRn42.js +1 -0
- package/dist/client/assets/visions-panel-CI6CRn42.js.br +0 -0
- package/dist/client/index.html +14 -8
- package/dist/client/index.html.br +0 -0
- package/dist/server/index.js +99 -1
- package/dist/session/guardrails-open-launcher.js +28 -16
- package/dist/session/visions-relay.js +1 -1
- package/package.json +1 -1
- package/dist/chunks/config-store-LYSRHNQs.js +0 -1
- package/dist/chunks/rtk-resolver-Dr4iJsiS.js +0 -1
- package/dist/client/assets/action-status-DXcC95xv.js +0 -1
- package/dist/client/assets/action-status-DXcC95xv.js.br +0 -0
- package/dist/client/assets/benchmark-panel-Cssmnd3z.js +0 -1
- package/dist/client/assets/benchmark-panel-Cssmnd3z.js.br +0 -0
- package/dist/client/assets/dom-helpers-CcEFPh-F.js +0 -4
- package/dist/client/assets/dom-helpers-CcEFPh-F.js.br +0 -0
- package/dist/client/assets/hooks-panel-Cli8EeBB.js +0 -1
- package/dist/client/assets/hooks-panel-Cli8EeBB.js.br +0 -0
- package/dist/client/assets/index-C3nOrTwM.css +0 -2
- package/dist/client/assets/index-C3nOrTwM.css.br +0 -0
- package/dist/client/assets/index-C8u3ZjM3.js +0 -173
- package/dist/client/assets/index-C8u3ZjM3.js.br +0 -0
- package/dist/client/assets/issues-panel-Bev1wadi.js +0 -1
- package/dist/client/assets/issues-panel-Bev1wadi.js.br +0 -0
- package/dist/client/assets/modal-CvDX5-_2.js +0 -1
- package/dist/client/assets/modal-CvDX5-_2.js.br +0 -0
- package/dist/client/assets/poll-ago-Dj148faJ.js.br +0 -0
- package/dist/client/assets/pr-queue-columns-Jleg5z3W.js +0 -1
- package/dist/client/assets/pr-queue-columns-Jleg5z3W.js.br +0 -0
- package/dist/client/assets/radar-panel-Dtp4ZzT3.js +0 -1
- package/dist/client/assets/radar-panel-Dtp4ZzT3.js.br +0 -0
- package/dist/client/assets/review-queue-panel-BQvU_-xl.js +0 -2
- package/dist/client/assets/review-queue-panel-BQvU_-xl.js.br +0 -0
- package/dist/client/assets/settings-panel-DegKCsoZ.js +0 -3
- package/dist/client/assets/settings-panel-DegKCsoZ.js.br +0 -0
- package/dist/client/assets/trace-panel-DFqImX92.js +0 -1
- package/dist/client/assets/trace-panel-DFqImX92.js.br +0 -0
- package/dist/client/assets/ui-prefs-CavQQH-s.js +0 -1
- package/dist/client/assets/ui-prefs-CavQQH-s.js.br +0 -0
- package/dist/client/assets/usage-panel-CEJqXYIA.js +0 -1
- package/dist/client/assets/usage-panel-CEJqXYIA.js.br +0 -0
- package/dist/client/assets/visions-panel-Dm3iKlhv.js +0 -1
- package/dist/client/assets/visions-panel-Dm3iKlhv.js.br +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { B as TaskTitle, D as SESSION_DOC_PATH_MAX_CHARS, Dt as TeamReviewActionRequest, F as SessionState, Gt as REPO_SLUG_RE, H as LinkedPr, I as ShownFile, J as MyPrKeepMergeableResult, Jt as GithubPollingRefreshResult, Kt as repoParts, Mt as TeamReviewStatus, N as SessionDoc, Ot as TeamReviewActionResult, P as SessionSnapshot, Q as MyPrMergeResult, Rt as hasRequiredActionHead, S as ConversationApprovalDecision, U as MyPr, Ut as GH_SEGMENT, V as UnseenOutcome, Xt as githubPollingShape, Yt as GithubPrsFreshness, Z as MyPrMergeRequest, b as ConversationAnswers, bt as ReviewChecksState, ct as SessionPrLinks, dt as CommitSha, et as MyPrMergeWhenReadyRequest, ht as GithubReviewDecision, lt as pullRequestKeyFormat, nt as MyPrSearchNode, q as MyPrKeepMergeableRequest, qt as GithubPollingRefreshRequest, st as MyPrsStatus, tt as MyPrMergeWhenReadyResult, ut as repositoryName, x as ConversationApproval, y as CoherenceHooksState } from "./session-BwlLY_mv.js";
|
|
2
2
|
import { n as isRecord } from "./coerce-NSst8oRP.js";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { z } from "zod";
|
|
@@ -605,7 +605,9 @@ var SessionSetup = z.object({
|
|
|
605
605
|
});
|
|
606
606
|
//#endregion
|
|
607
607
|
//#region shared/contracts/update-journal.ts
|
|
608
|
-
var
|
|
608
|
+
var UPDATE_CHANNELS = Object.freeze(["release", "experimental"]);
|
|
609
|
+
var RETIRED_MAIN_CHANNEL = "main";
|
|
610
|
+
var UpdateChannel = z.preprocess((channel) => channel === RETIRED_MAIN_CHANNEL ? "experimental" : channel, z.enum(UPDATE_CHANNELS, { error: `updateChannel must be one of ${UPDATE_CHANNELS.join(", ")}` }));
|
|
609
611
|
var UpdateRunState = z.enum([
|
|
610
612
|
"idle",
|
|
611
613
|
"running",
|
|
@@ -1396,7 +1398,6 @@ var updateStatusShape = {
|
|
|
1396
1398
|
isTreeClean: z.boolean().nullable(),
|
|
1397
1399
|
lastCheckAt: timestamp,
|
|
1398
1400
|
channel: UpdateChannel,
|
|
1399
|
-
behindCount: z.number().int().nonnegative().nullable(),
|
|
1400
1401
|
reason: nullableString,
|
|
1401
1402
|
deprecation: nullableString,
|
|
1402
1403
|
journalSummary: UpdateJournalSummary.nullable(),
|
|
@@ -1419,7 +1420,6 @@ var DASHBOARD_TELEMETRY_EVENTS = Object.freeze([
|
|
|
1419
1420
|
]);
|
|
1420
1421
|
var DASHBOARD_VIEWS = Object.freeze([
|
|
1421
1422
|
"focus",
|
|
1422
|
-
"zen",
|
|
1423
1423
|
"prs",
|
|
1424
1424
|
"issues",
|
|
1425
1425
|
"usage",
|
|
@@ -1467,6 +1467,7 @@ var OPERATOR_ACTIONS_BY_SURFACE = Object.freeze({
|
|
|
1467
1467
|
"approve",
|
|
1468
1468
|
"approve-only",
|
|
1469
1469
|
"comment",
|
|
1470
|
+
"request-changes",
|
|
1470
1471
|
"discard",
|
|
1471
1472
|
"requeue",
|
|
1472
1473
|
"resolve-thread",
|
|
@@ -1530,6 +1531,10 @@ var clientVariants = [
|
|
|
1530
1531
|
environment: z.string().optional(),
|
|
1531
1532
|
requestId
|
|
1532
1533
|
}),
|
|
1534
|
+
loose("quick-session", {
|
|
1535
|
+
id: sessionId,
|
|
1536
|
+
requestId
|
|
1537
|
+
}),
|
|
1533
1538
|
loose("remove-session", {
|
|
1534
1539
|
id: sessionId,
|
|
1535
1540
|
force: z.unknown().optional(),
|
|
@@ -1759,6 +1764,7 @@ Object.freeze([
|
|
|
1759
1764
|
"state-change",
|
|
1760
1765
|
"session-added",
|
|
1761
1766
|
"session-removed",
|
|
1767
|
+
"session-close-confirm",
|
|
1762
1768
|
"session-renamed",
|
|
1763
1769
|
"session-title",
|
|
1764
1770
|
"session-prs",
|
|
@@ -1766,7 +1772,6 @@ Object.freeze([
|
|
|
1766
1772
|
"session-git",
|
|
1767
1773
|
"session-coherence-hooks",
|
|
1768
1774
|
"session-agents",
|
|
1769
|
-
"session-wakeup",
|
|
1770
1775
|
"session-prompt",
|
|
1771
1776
|
"session-conversation",
|
|
1772
1777
|
"session-merge-status",
|
|
@@ -1778,7 +1783,6 @@ Object.freeze([
|
|
|
1778
1783
|
"change-map",
|
|
1779
1784
|
"branch-sync-status",
|
|
1780
1785
|
"session-changed",
|
|
1781
|
-
"post-turn-result",
|
|
1782
1786
|
"debug-state-response",
|
|
1783
1787
|
"session-trace-response",
|
|
1784
1788
|
"session-trace-changed",
|
|
@@ -1879,7 +1883,8 @@ var serverVariants = [
|
|
|
1879
1883
|
requestId,
|
|
1880
1884
|
ok: z.boolean(),
|
|
1881
1885
|
error: optionalError,
|
|
1882
|
-
reason: z.enum(["not-git"]).optional()
|
|
1886
|
+
reason: z.enum(["not-git"]).optional(),
|
|
1887
|
+
sessionId: z.string().optional()
|
|
1883
1888
|
}),
|
|
1884
1889
|
loose("remove-session-result", {
|
|
1885
1890
|
requestId,
|
|
@@ -1937,6 +1942,10 @@ var serverVariants = [
|
|
|
1937
1942
|
id: sessionId,
|
|
1938
1943
|
session: z.string()
|
|
1939
1944
|
}),
|
|
1945
|
+
loose("session-close-confirm", {
|
|
1946
|
+
id: sessionId,
|
|
1947
|
+
mergeStatus: z.string()
|
|
1948
|
+
}),
|
|
1940
1949
|
loose("session-renamed", {
|
|
1941
1950
|
id: sessionId,
|
|
1942
1951
|
oldName: z.string(),
|
|
@@ -1970,13 +1979,7 @@ var serverVariants = [
|
|
|
1970
1979
|
unseenOutcome: UnseenOutcome.nullable(),
|
|
1971
1980
|
timestamp
|
|
1972
1981
|
}),
|
|
1973
|
-
loose("session-wakeup", {
|
|
1974
|
-
id: sessionId,
|
|
1975
|
-
pendingWakeup: PendingWakeup.nullable(),
|
|
1976
|
-
timestamp
|
|
1977
|
-
}),
|
|
1978
1982
|
loose("session-prompt", {
|
|
1979
|
-
isCompacting: z.boolean().optional(),
|
|
1980
1983
|
id: sessionId,
|
|
1981
1984
|
pendingPromptKind: nullableString,
|
|
1982
1985
|
timestamp
|
|
@@ -2047,18 +2050,6 @@ var serverVariants = [
|
|
|
2047
2050
|
error: optionalError
|
|
2048
2051
|
}),
|
|
2049
2052
|
loose("session-changed", { id: sessionId }),
|
|
2050
|
-
loose("post-turn-result", {
|
|
2051
|
-
id: sessionId,
|
|
2052
|
-
mode: z.string(),
|
|
2053
|
-
skipped: nullableString,
|
|
2054
|
-
filesFixed: z.number().int().nonnegative(),
|
|
2055
|
-
findings: z.array(openObject({
|
|
2056
|
-
file: z.string(),
|
|
2057
|
-
rule: z.string(),
|
|
2058
|
-
count: z.number().int().nonnegative()
|
|
2059
|
-
})),
|
|
2060
|
-
timestamp
|
|
2061
|
-
}),
|
|
2062
2053
|
loose("debug-state-response", {
|
|
2063
2054
|
id: sessionId,
|
|
2064
2055
|
payload: opaqueObject
|
|
@@ -2081,6 +2072,11 @@ var serverVariants = [
|
|
|
2081
2072
|
docs: z.array(SessionDoc)
|
|
2082
2073
|
}),
|
|
2083
2074
|
loose("session-docs-snapshot", { sessions: z.record(z.string(), z.array(SessionDoc)) }),
|
|
2075
|
+
loose("session-shown", {
|
|
2076
|
+
id: sessionId,
|
|
2077
|
+
files: z.array(ShownFile)
|
|
2078
|
+
}),
|
|
2079
|
+
loose("session-shown-snapshot", { sessions: z.record(z.string(), z.array(ShownFile)) }),
|
|
2084
2080
|
loose("session-doc-response", {
|
|
2085
2081
|
requestId,
|
|
2086
2082
|
id: sessionId,
|
|
@@ -2528,8 +2524,6 @@ var optionalWholeNumber = (field, range) => optionalNumber(field, range).unwrap(
|
|
|
2528
2524
|
var optionalInteger = (field, range) => z.number({ error: `${field} must be an integer between ${range.min} and ${range.max}` }).int({ error: `${field} must be an integer between ${range.min} and ${range.max}` }).min(range.min, { error: `${field} must be an integer between ${range.min} and ${range.max}` }).max(range.max, { error: `${field} must be an integer between ${range.min} and ${range.max}` }).optional();
|
|
2529
2525
|
var optionalObject = (field, shape) => z.object(shape, { error: `${field} must be an object` }).nullable().optional();
|
|
2530
2526
|
var optionalLooseObject = (field) => z.object({}, { error: `${field} must be an object` }).passthrough().nullable().optional();
|
|
2531
|
-
var UPDATE_CHANNELS = Object.freeze(["release", "main"]);
|
|
2532
|
-
var POST_TURN_CHECK_MODES = Object.freeze(["report", "fix"]);
|
|
2533
2527
|
var TaskTitleSettings = z.object({ refiner: z.object({
|
|
2534
2528
|
enabled: optionalBoolean("taskTitle.refiner.enabled"),
|
|
2535
2529
|
model: optionalString("taskTitle.refiner.model", true),
|
|
@@ -2554,7 +2548,6 @@ var BranchGcControlSettings = BranchGcFileSettings.omit({
|
|
|
2554
2548
|
}).nullable().optional();
|
|
2555
2549
|
Object.freeze(["enabled", "deleteUnmerged"]);
|
|
2556
2550
|
Object.freeze(["staleDays", "intervalMs"]);
|
|
2557
|
-
var PostTurnChecksSettings = optionalObject("postTurnChecks", { mode: z.enum(POST_TURN_CHECK_MODES, { error: "postTurnChecks.mode must be one of report, fix" }).optional() });
|
|
2558
2551
|
var VisionsSettings = optionalObject("visions", {
|
|
2559
2552
|
enabled: optionalBoolean("visions.enabled"),
|
|
2560
2553
|
autoFix: optionalBoolean("visions.autoFix"),
|
|
@@ -2584,6 +2577,7 @@ var TeamReviewSettings = optionalObject("teamReview", {
|
|
|
2584
2577
|
skipIdleAfterDays: optionalNumber("teamReview.skipIdleAfterDays")
|
|
2585
2578
|
});
|
|
2586
2579
|
var BenchmarksSettings = optionalObject("benchmarks", { enabled: optionalBoolean("benchmarks.enabled") });
|
|
2580
|
+
var IssuesSettings = optionalObject("issues", { enabled: optionalBoolean("issues.enabled") });
|
|
2587
2581
|
var CoherenceSettings = optionalObject("coherence", { enabled: optionalBoolean("coherence.enabled") });
|
|
2588
2582
|
var posthogNumberRanges = {
|
|
2589
2583
|
intervalMinutes: POSTHOG_INTERVAL_RANGE,
|
|
@@ -2660,7 +2654,6 @@ var createBrowserConfigShape = (isAbsolutePath) => ({
|
|
|
2660
2654
|
debugMode: optionalBoolean("debugMode"),
|
|
2661
2655
|
conversationView: optionalBoolean("conversationView"),
|
|
2662
2656
|
streamerMode: optionalBoolean("streamerMode"),
|
|
2663
|
-
zenView: optionalBoolean("zenView"),
|
|
2664
2657
|
viewTabOrder: z.array(z.string({ error: "viewTabOrder must be an array of view ids" }), { error: "viewTabOrder must be an array of view ids" }).optional(),
|
|
2665
2658
|
remoteSessions: optionalBoolean("remoteSessions"),
|
|
2666
2659
|
detectBackgroundAgents: optionalBoolean("detectBackgroundAgents"),
|
|
@@ -2669,7 +2662,7 @@ var createBrowserConfigShape = (isAbsolutePath) => ({
|
|
|
2669
2662
|
saneYolo: optionalBoolean("saneYolo"),
|
|
2670
2663
|
skipPermissionsByDefault: optionalBoolean("skipPermissionsByDefault"),
|
|
2671
2664
|
checkForUpdates: optionalBoolean("checkForUpdates"),
|
|
2672
|
-
updateChannel:
|
|
2665
|
+
updateChannel: UpdateChannel.optional(),
|
|
2673
2666
|
autoResume: optionalBoolean("autoResume"),
|
|
2674
2667
|
telegramNotifications: optionalBoolean("telegramNotifications"),
|
|
2675
2668
|
integrationBranch: optionalString("integrationBranch").nullable(),
|
|
@@ -2678,12 +2671,12 @@ var createBrowserConfigShape = (isAbsolutePath) => ({
|
|
|
2678
2671
|
repoRoots: z.array(z.string()).optional(),
|
|
2679
2672
|
taskTitle: TaskTitleSettings,
|
|
2680
2673
|
branchGc: BranchGcSettings,
|
|
2681
|
-
postTurnChecks: PostTurnChecksSettings,
|
|
2682
2674
|
visions: VisionsSettings,
|
|
2683
2675
|
github: GithubSettings,
|
|
2684
2676
|
teamReview: TeamReviewSettings,
|
|
2685
2677
|
benchmarks: BenchmarksSettings,
|
|
2686
2678
|
coherence: CoherenceSettings,
|
|
2679
|
+
issues: IssuesSettings,
|
|
2687
2680
|
posthog: PosthogSettings,
|
|
2688
2681
|
usage: createUsageSettings(isAbsolutePath),
|
|
2689
2682
|
telegram: TelegramSettings,
|
|
@@ -2850,6 +2843,7 @@ var FILE_CONFIG_SHAPE = {
|
|
|
2850
2843
|
teamReview: optionalLooseObject("teamReview"),
|
|
2851
2844
|
benchmarks: optionalLooseObject("benchmarks"),
|
|
2852
2845
|
coherence: optionalLooseObject("coherence"),
|
|
2846
|
+
issues: optionalLooseObject("issues"),
|
|
2853
2847
|
posthog: optionalLooseObject("posthog"),
|
|
2854
2848
|
usage: optionalLooseObject("usage"),
|
|
2855
2849
|
telegram: optionalLooseObject("telegram"),
|
|
@@ -2867,7 +2861,6 @@ var Config = z.object({
|
|
|
2867
2861
|
worktreeAutoRebase: optionalBoolean("worktreeAutoRebase"),
|
|
2868
2862
|
worktreeSyncOnStart: optionalBoolean("worktreeSyncOnStart"),
|
|
2869
2863
|
worktreeRerere: optionalBoolean("worktreeRerere"),
|
|
2870
|
-
postTurnChecks: z.record(z.string(), z.unknown()).optional(),
|
|
2871
2864
|
hooks: z.unknown().optional(),
|
|
2872
2865
|
remote: z.object({
|
|
2873
2866
|
enabled: z.boolean().optional(),
|
|
@@ -2914,12 +2907,12 @@ var Config = z.object({
|
|
|
2914
2907
|
var CONFIG_BLOCK_KEYS = Object.freeze([
|
|
2915
2908
|
"taskTitle",
|
|
2916
2909
|
"branchGc",
|
|
2917
|
-
"postTurnChecks",
|
|
2918
2910
|
"visions",
|
|
2919
2911
|
"github",
|
|
2920
2912
|
"teamReview",
|
|
2921
2913
|
"benchmarks",
|
|
2922
2914
|
"coherence",
|
|
2915
|
+
"issues",
|
|
2923
2916
|
"posthog",
|
|
2924
2917
|
"usage",
|
|
2925
2918
|
"telegram",
|
|
@@ -2952,4 +2945,4 @@ function configIssueMessage(error) {
|
|
|
2952
2945
|
return error.issues[0]?.message || "settings are invalid";
|
|
2953
2946
|
}
|
|
2954
2947
|
//#endregion
|
|
2955
|
-
export {
|
|
2948
|
+
export { PORT_RANGE as $, BenchmarkRun as A, parseExitPlanModeHookPayload as At, GithubPrsFrame as B, OPERATOR_ACTIONS_BY_SURFACE as C, PLAN_BODY_CAP_BYTES as Ct, BenchmarkCase as D, PLAN_TOOL_NAME as Dt, BenchmarkActionRequest as E, PLAN_RESULT_HOOK_EVENT as Et, MinedPrReviewData as F, IssueUpdate as Ft, WorkflowsState as G, WorkflowCommentBody as H, PrCheckoutCaseInput as I, IssuesSearchResponse as It, FLYING_ANIMALS_GAP_RANGE as J, FLYING_ANIMALS_DEFAULTS as K, GithubPrDetailNode as L, IssuesState as Lt, BenchmarkSuite as M, GithubIssuePullRequestsRepository as Mt, CommitComparison as N, GithubIssueResponse as Nt, BenchmarkId as O, PlanDecision as Ot, MergedPrListing as P, IssueKey as Pt, NON_NEGATIVE_NUMBER_RANGE as Q, GithubPrKey as R, IssuesStatus as Rt, ONBOARDING_STEP_STATES as S, changeMapFactId as St, pullRequestKeyFromReference as T, PLAN_HOOK_OUTPUT_MAX_CHARS as Tt, WorkflowLabelName as U, comparablePrKey as V, WorkflowsSettings as W, KEEP_MERGEABLE_TIMEOUT_MINUTES_RANGE as X, FLYING_ANIMALS_SCALE_RANGE as Y, MEMORY_RESERVE_MB_RANGE as Z, CONTROL_FRAME_MAX_BYTES as _, MAX_RAW_LINE_CHARS as _t, ConfigUpdate as a, REPLAY_BUFFER_KB_RANGE as at, InstallFlavor as b, CoherenceJournalOutput as bt, TASK_TITLE_SOURCE_PRIORITY as c, USAGE_INTEGER_RANGES as ct, USAGE_COST_MODES as d, WORKFLOWS_MAX_ACTIONS_PER_POLL_RANGE as dt, POSITIVE_NUMBER_RANGE as et, USAGE_VENDOR_KEYS as f, WORKFLOWS_MAX_CONCURRENT_SESSIONS_RANGE as ft, CLIENT_LOG_TEXT_MAX_CHARS as g, SessionSetup as gt, CHANGES_WATCH_LEASE_MS as h, UpdateJournal as ht, Config as i, POSTHOG_TRAFFIC_MULTIPLIER_RANGE as it, BenchmarkStatus as j, planTitle as jt, BenchmarkJudgement as k, PlanRevision as kt, configIssueMessage as l, USAGE_RETAIN_DAYS_RANGE as lt, CHANGES_POLL_INTERVAL_MS as m, UpdateChannel as mt, BUILTIN_AGENT_IDS as n, POSTHOG_TRAFFIC_BASELINE_RANGE as nt, PersistedTaskTitle as o, TASK_TITLE_TIMEOUT_RANGE as ot, normalizeLegacyConfigNumbers as p, UPDATE_CHANNELS as pt, FLYING_ANIMALS_DURATION_RANGE as q, BrowserConfig as r, POSTHOG_TRAFFIC_MIN_USERS_RANGE as rt, RUNTIME_CONFIG_SCALAR_KEYS as s, USAGE_BUDGET_RANGE as st, AGENT_ID_SHAPE_MESSAGE as t, POSTHOG_FIX_TIMEOUT_RANGE as tt, BranchGcFileSettings as u, USAGE_SCAN_INTERVAL_RANGE as ut, ClientMessage as v, TraceCheckpoint as vt, OPERATOR_SURFACES as w, PLAN_HOOK_EVENT as wt, ONBOARDING_STEPS as x, ChangeMap as xt, DASHBOARD_VIEWS as y, TraceRecord as yt, GithubPrLightSearchNode as z, issuePullRequestStateFromGithub as zt };
|
|
@@ -4,6 +4,10 @@ function glimmervoidHomeDir(homeDirectory, env) {
|
|
|
4
4
|
if (env.GLIMMERVOID_HOME) return path.resolve(env.GLIMMERVOID_HOME);
|
|
5
5
|
return path.join(homeDirectory, ".glimmervoid");
|
|
6
6
|
}
|
|
7
|
+
function isOperatorHomeUnderTest(homeDirectory, env) {
|
|
8
|
+
if (!env.NODE_TEST_CONTEXT) return false;
|
|
9
|
+
return glimmervoidHomeDir(homeDirectory, env) === glimmervoidHomeDir(homeDirectory, {});
|
|
10
|
+
}
|
|
7
11
|
function decideConfigPath({ env = {}, homeDir }, exists) {
|
|
8
12
|
const homePath = path.join(homeDir, "config.json");
|
|
9
13
|
if (env.GLIMMERVOID_CONFIG) {
|
|
@@ -35,4 +39,4 @@ function decideConfigPath({ env = {}, homeDir }, exists) {
|
|
|
35
39
|
};
|
|
36
40
|
}
|
|
37
41
|
//#endregion
|
|
38
|
-
export { glimmervoidHomeDir as n, decideConfigPath as t };
|
|
42
|
+
export { glimmervoidHomeDir as n, isOperatorHomeUnderTest as r, decideConfigPath as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { c as loadConfigFile } from "./config-store-BGTg8oKO.js";
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { n as errorLabel, r as errorMessage } from "./text-DoirglWV.js";
|
|
2
2
|
import { n as equalsIgnoringCaseOnWindows } from "./paths-Bu4eH1Yd.js";
|
|
3
|
-
import {
|
|
3
|
+
import { o as packageRoot } from "./runtime-paths-ghcH9CeW.js";
|
|
4
|
+
import { n as glimmervoidHomeDir$1, t as decideConfigPath } from "./config-path-core-DUWk0Lui.js";
|
|
5
|
+
import { $ as PORT_RANGE, J as FLYING_ANIMALS_GAP_RANGE, K as FLYING_ANIMALS_DEFAULTS, Q as NON_NEGATIVE_NUMBER_RANGE, X as KEEP_MERGEABLE_TIMEOUT_MINUTES_RANGE, Y as FLYING_ANIMALS_SCALE_RANGE, Z as MEMORY_RESERVE_MB_RANGE, at as REPLAY_BUFFER_KB_RANGE, ct as USAGE_INTEGER_RANGES, d as USAGE_COST_MODES, dt as WORKFLOWS_MAX_ACTIONS_PER_POLL_RANGE, et as POSITIVE_NUMBER_RANGE, ft as WORKFLOWS_MAX_CONCURRENT_SESSIONS_RANGE, i as Config, it as POSTHOG_TRAFFIC_MULTIPLIER_RANGE, l as configIssueMessage, lt as USAGE_RETAIN_DAYS_RANGE, n as BUILTIN_AGENT_IDS, nt as POSTHOG_TRAFFIC_BASELINE_RANGE, ot as TASK_TITLE_TIMEOUT_RANGE, p as normalizeLegacyConfigNumbers, pt as UPDATE_CHANNELS, q as FLYING_ANIMALS_DURATION_RANGE, rt as POSTHOG_TRAFFIC_MIN_USERS_RANGE, s as RUNTIME_CONFIG_SCALAR_KEYS, st as USAGE_BUDGET_RANGE, t as AGENT_ID_SHAPE_MESSAGE, tt as POSTHOG_FIX_TIMEOUT_RANGE, u as BranchGcFileSettings, ut as USAGE_SCAN_INTERVAL_RANGE } from "./config-BqJTnPae.js";
|
|
4
6
|
import { n as isRecord } from "./coerce-NSst8oRP.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { s as FeatureFlagsResponse, u as TELEMETRY_KILL_SWITCH_FLAG } from "./contracts-lxJ0sQEl.js";
|
|
7
|
+
import { d as writeJsonAtomicSync, f as writeTextAtomic, p as writeTextAtomicSync } from "./json-file-BjFK_eSH.js";
|
|
8
|
+
import { f as TELEMETRY_KILL_SWITCH_FLAG, l as FeatureFlagsResponse, n as isExperimentalBuild } from "./build-channel-qgKwNssc.js";
|
|
8
9
|
import fs from "node:fs";
|
|
9
10
|
import path from "node:path";
|
|
10
11
|
import os from "node:os";
|
|
@@ -1058,22 +1059,6 @@ var SECTIONS = Object.freeze([
|
|
|
1058
1059
|
defaultValue: false,
|
|
1059
1060
|
...MACHINE_NOW
|
|
1060
1061
|
},
|
|
1061
|
-
{
|
|
1062
|
-
id: "zen-view",
|
|
1063
|
-
path: "zenView",
|
|
1064
|
-
title: "Zen view (experimental)",
|
|
1065
|
-
description: "Add a Zen tab that shows no terminal until a session needs you, then shows only that session and what it needs.",
|
|
1066
|
-
control: "toggle",
|
|
1067
|
-
keywords: [
|
|
1068
|
-
"experimental",
|
|
1069
|
-
"calm",
|
|
1070
|
-
"focus",
|
|
1071
|
-
"attention",
|
|
1072
|
-
"needs you"
|
|
1073
|
-
],
|
|
1074
|
-
defaultValue: false,
|
|
1075
|
-
...MACHINE_NOW
|
|
1076
|
-
},
|
|
1077
1062
|
{
|
|
1078
1063
|
id: "tab-order",
|
|
1079
1064
|
path: "viewTabOrder",
|
|
@@ -1231,17 +1216,6 @@ var SECTIONS = Object.freeze([
|
|
|
1231
1216
|
defaultValue: false,
|
|
1232
1217
|
...MACHINE_NEW_SESSIONS
|
|
1233
1218
|
},
|
|
1234
|
-
{
|
|
1235
|
-
id: "post-turn-checks-mode",
|
|
1236
|
-
path: "postTurnChecks.mode",
|
|
1237
|
-
title: "Post-turn checks mode",
|
|
1238
|
-
description: "Default mode for post-turn checks. Project and individual rule modes override it, so Report can still allow file fixes.",
|
|
1239
|
-
control: "select",
|
|
1240
|
-
options: capitalizedOptions(POST_TURN_CHECK_MODES),
|
|
1241
|
-
keywords: ["quality", "fixes"],
|
|
1242
|
-
defaultValue: "report",
|
|
1243
|
-
...MACHINE_NOW
|
|
1244
|
-
},
|
|
1245
1219
|
{
|
|
1246
1220
|
id: "branch-gc-delete-unmerged",
|
|
1247
1221
|
path: "branchGc.deleteUnmerged",
|
|
@@ -1350,10 +1324,16 @@ var SECTIONS = Object.freeze([
|
|
|
1350
1324
|
id: "update-channel",
|
|
1351
1325
|
path: "updateChannel",
|
|
1352
1326
|
title: "Channel",
|
|
1353
|
-
description: "Track
|
|
1327
|
+
description: "Track stable releases, or Experimental builds published from every change to main before it reaches a release.",
|
|
1354
1328
|
control: "select",
|
|
1355
1329
|
options: capitalizedOptions(UPDATE_CHANNELS),
|
|
1356
|
-
keywords: [
|
|
1330
|
+
keywords: [
|
|
1331
|
+
"release",
|
|
1332
|
+
"prerelease",
|
|
1333
|
+
"next",
|
|
1334
|
+
"beta",
|
|
1335
|
+
"early"
|
|
1336
|
+
],
|
|
1357
1337
|
defaultValue: "release",
|
|
1358
1338
|
...MACHINE_NOW
|
|
1359
1339
|
},
|
|
@@ -1655,7 +1635,7 @@ var SECTIONS = Object.freeze([
|
|
|
1655
1635
|
description: "Poll open pull requests from the team and draft a review of each one. Nothing is posted until you choose Approve or Comment.",
|
|
1656
1636
|
control: "toggle",
|
|
1657
1637
|
keywords: ["pull requests", "github"],
|
|
1658
|
-
defaultValue:
|
|
1638
|
+
defaultValue: true,
|
|
1659
1639
|
...MACHINE_NOW
|
|
1660
1640
|
},
|
|
1661
1641
|
{
|
|
@@ -1868,6 +1848,27 @@ var SECTIONS = Object.freeze([
|
|
|
1868
1848
|
...MACHINE_NOW
|
|
1869
1849
|
}]
|
|
1870
1850
|
},
|
|
1851
|
+
{
|
|
1852
|
+
id: "lanes-issues",
|
|
1853
|
+
level: "lanes",
|
|
1854
|
+
title: "Issues (experimental)",
|
|
1855
|
+
description: "GitHub issues from your projects and teams in their own dashboard tab.",
|
|
1856
|
+
settings: [{
|
|
1857
|
+
id: "issues-enabled",
|
|
1858
|
+
path: "issues.enabled",
|
|
1859
|
+
title: "Show the Issues tab",
|
|
1860
|
+
description: "Poll GitHub issues for your projects and teams and list them in an Issues tab. Off stops the polling and hides the tab.",
|
|
1861
|
+
control: "toggle",
|
|
1862
|
+
keywords: [
|
|
1863
|
+
"experimental",
|
|
1864
|
+
"issues",
|
|
1865
|
+
"github",
|
|
1866
|
+
"tab"
|
|
1867
|
+
],
|
|
1868
|
+
defaultValue: false,
|
|
1869
|
+
...MACHINE_NOW
|
|
1870
|
+
}]
|
|
1871
|
+
},
|
|
1871
1872
|
{
|
|
1872
1873
|
id: "machine-privacy",
|
|
1873
1874
|
level: "machine",
|
|
@@ -1893,8 +1894,8 @@ var SECTIONS = Object.freeze([
|
|
|
1893
1894
|
{
|
|
1894
1895
|
id: "browser-shortcuts",
|
|
1895
1896
|
level: "browser",
|
|
1896
|
-
title: "Shortcuts
|
|
1897
|
-
description: "Keyboard shortcuts
|
|
1897
|
+
title: "Shortcuts",
|
|
1898
|
+
description: "Keyboard shortcuts and their reference.",
|
|
1898
1899
|
legacyIds: ["shortcuts"],
|
|
1899
1900
|
settings: [{
|
|
1900
1901
|
id: "next-attention-key",
|
|
@@ -2170,28 +2171,6 @@ var FILE_ONLY_SETTINGS = Object.freeze([
|
|
|
2170
2171
|
fileOnlyReason: TUNING_KNOB,
|
|
2171
2172
|
...FILE_ONLY
|
|
2172
2173
|
},
|
|
2173
|
-
{
|
|
2174
|
-
id: "file-post-turn-checks",
|
|
2175
|
-
path: "postTurnChecks",
|
|
2176
|
-
title: "Post-turn checks",
|
|
2177
|
-
group: "machine-detection-sessions",
|
|
2178
|
-
description: "Deterministic checks run after eligible turns. The global mode is a default; project and individual rule modes can select fixes even when the global mode is report.",
|
|
2179
|
-
control: "json",
|
|
2180
|
-
keywords: ["quality", "fixes"],
|
|
2181
|
-
defaultValue: {
|
|
2182
|
-
enabled: true,
|
|
2183
|
-
mode: "report",
|
|
2184
|
-
rules: {
|
|
2185
|
-
trailingWs: true,
|
|
2186
|
-
finalNewline: true,
|
|
2187
|
-
bom: true,
|
|
2188
|
-
slop: false
|
|
2189
|
-
}
|
|
2190
|
-
},
|
|
2191
|
-
takesEffect: "now",
|
|
2192
|
-
fileOnlyReason: STRUCTURED_VALUE,
|
|
2193
|
-
...FILE_ONLY
|
|
2194
|
-
},
|
|
2195
2174
|
{
|
|
2196
2175
|
id: "file-branch-gc-enabled",
|
|
2197
2176
|
path: "branchGc.enabled",
|
|
@@ -2958,6 +2937,10 @@ var SETTINGS_REGISTRY = Object.freeze({
|
|
|
2958
2937
|
sections: SECTIONS,
|
|
2959
2938
|
fileOnly: FILE_ONLY_SETTINGS
|
|
2960
2939
|
});
|
|
2940
|
+
var EXPERIMENTAL_KEYWORD = "experimental";
|
|
2941
|
+
function isExperimentalSetting(setting) {
|
|
2942
|
+
return setting.keywords.includes(EXPERIMENTAL_KEYWORD);
|
|
2943
|
+
}
|
|
2961
2944
|
Object.freeze(Object.fromEntries(SECTIONS.flatMap((section) => (section.legacyIds ?? []).map((legacyId) => [legacyId, section.id]))));
|
|
2962
2945
|
Object.freeze(SECTIONS.reduce((moved, section) => {
|
|
2963
2946
|
for (const setting of section.settings) for (const legacy of setting.legacyIds ?? []) moved[legacy.sectionId] = {
|
|
@@ -3429,6 +3412,28 @@ function findEscapingArchiveMember(listingText) {
|
|
|
3429
3412
|
return null;
|
|
3430
3413
|
}
|
|
3431
3414
|
//#endregion
|
|
3415
|
+
//#region server/core/experimental-gate-core.ts
|
|
3416
|
+
var EXPERIMENTAL_MACHINE_SETTINGS = settingsOf(SETTINGS_REGISTRY.sections).filter((setting) => setting.scope === "machine" && isExperimentalSetting(setting));
|
|
3417
|
+
function replaceAtPath(target, [key, ...nestedKeys], value) {
|
|
3418
|
+
if (nestedKeys.length === 0) {
|
|
3419
|
+
Reflect.set(target, key, value);
|
|
3420
|
+
return;
|
|
3421
|
+
}
|
|
3422
|
+
const child = Reflect.get(target, key);
|
|
3423
|
+
const copiedChild = isRecord(child) ? { ...child } : {};
|
|
3424
|
+
Reflect.set(target, key, copiedChild);
|
|
3425
|
+
replaceAtPath(copiedChild, nestedKeys, value);
|
|
3426
|
+
}
|
|
3427
|
+
function withExperimentalFeaturesGated(config, isExperimentalBuild) {
|
|
3428
|
+
if (isExperimentalBuild) return config;
|
|
3429
|
+
const gated = { ...config };
|
|
3430
|
+
for (const setting of EXPERIMENTAL_MACHINE_SETTINGS) replaceAtPath(gated, setting.path.split("."), setting.defaultValue);
|
|
3431
|
+
return gated;
|
|
3432
|
+
}
|
|
3433
|
+
function isSettingAvailable(setting, isExperimentalBuild) {
|
|
3434
|
+
return isExperimentalBuild || !isExperimentalSetting(setting);
|
|
3435
|
+
}
|
|
3436
|
+
//#endregion
|
|
3432
3437
|
//#region server/config-store.ts
|
|
3433
3438
|
var DEFAULT_CONFIG = {
|
|
3434
3439
|
port: 3e3,
|
|
@@ -3438,7 +3443,6 @@ var DEFAULT_CONFIG = {
|
|
|
3438
3443
|
debugMode: false,
|
|
3439
3444
|
conversationView: false,
|
|
3440
3445
|
streamerMode: false,
|
|
3441
|
-
zenView: false,
|
|
3442
3446
|
viewTabOrder: [],
|
|
3443
3447
|
remoteSessions: false,
|
|
3444
3448
|
detectBackgroundAgents: true,
|
|
@@ -3489,16 +3493,6 @@ var DEFAULT_CONFIG = {
|
|
|
3489
3493
|
},
|
|
3490
3494
|
repoRoots: [],
|
|
3491
3495
|
customAgents: [],
|
|
3492
|
-
postTurnChecks: {
|
|
3493
|
-
enabled: true,
|
|
3494
|
-
mode: "report",
|
|
3495
|
-
rules: {
|
|
3496
|
-
trailingWs: true,
|
|
3497
|
-
finalNewline: true,
|
|
3498
|
-
bom: true,
|
|
3499
|
-
slop: false
|
|
3500
|
-
}
|
|
3501
|
-
},
|
|
3502
3496
|
remote: {
|
|
3503
3497
|
enabled: false,
|
|
3504
3498
|
port: null,
|
|
@@ -3740,7 +3734,12 @@ function retiredGuardrailKeysWarning(config) {
|
|
|
3740
3734
|
if (retiredKeys.length === 0) return null;
|
|
3741
3735
|
return `[guardrails] config.json still has ${retiredKeys.join(" and ")}. These keys are ignored, so their unreadable paths and opt-outs do not apply until you move them.`;
|
|
3742
3736
|
}
|
|
3743
|
-
function
|
|
3737
|
+
function readIsExperimentalBuild() {
|
|
3738
|
+
const manifest = JSON.parse(fs.readFileSync(path.join(packageRoot, "package.json"), "utf8"));
|
|
3739
|
+
return isRecord(manifest) && isExperimentalBuild(manifest.version);
|
|
3740
|
+
}
|
|
3741
|
+
var IS_EXPERIMENTAL_BUILD = readIsExperimentalBuild();
|
|
3742
|
+
function createConfigStore({ settingsDefaults, readTelemetryInstallId, isExperimentalBuild = IS_EXPERIMENTAL_BUILD } = {}) {
|
|
3744
3743
|
const configPath = resolveConfigPath();
|
|
3745
3744
|
const effectiveDefaults = {
|
|
3746
3745
|
...DEFAULT_CONFIG,
|
|
@@ -3761,6 +3760,7 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3761
3760
|
} catch (err) {
|
|
3762
3761
|
console.warn("[config] Failed to persist auto-assigned project IDs:", errorMessage(err));
|
|
3763
3762
|
}
|
|
3763
|
+
Object.assign(config, withExperimentalFeaturesGated(config, isExperimentalBuild));
|
|
3764
3764
|
let _lastWrittenContent = null;
|
|
3765
3765
|
let _lastAppliedContent = loadedConfig.loadedContent;
|
|
3766
3766
|
let synchronousWriteRevision = 0;
|
|
@@ -3805,7 +3805,7 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3805
3805
|
} catch (err) {
|
|
3806
3806
|
return refuseSave(`[config] Failed to write config.json: ${errorLabel(err)}`);
|
|
3807
3807
|
}
|
|
3808
|
-
return effectiveConfig;
|
|
3808
|
+
return withExperimentalFeaturesGated(effectiveConfig, isExperimentalBuild);
|
|
3809
3809
|
}
|
|
3810
3810
|
function saveAsync(mutatorFn) {
|
|
3811
3811
|
const scheduledSave = pendingSaves.then(async () => {
|
|
@@ -3841,7 +3841,7 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3841
3841
|
}
|
|
3842
3842
|
_lastWrittenContent = nextContent;
|
|
3843
3843
|
_lastAppliedContent = null;
|
|
3844
|
-
return effectiveConfig;
|
|
3844
|
+
return withExperimentalFeaturesGated(effectiveConfig, isExperimentalBuild);
|
|
3845
3845
|
} catch (error) {
|
|
3846
3846
|
console.warn("[config] Failed to save config.json asynchronously:", errorMessage(error));
|
|
3847
3847
|
return null;
|
|
@@ -3872,7 +3872,6 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3872
3872
|
debugMode: config.debugMode ?? effectiveDefaults.debugMode,
|
|
3873
3873
|
conversationView: config.conversationView ?? effectiveDefaults.conversationView,
|
|
3874
3874
|
streamerMode: config.streamerMode ?? effectiveDefaults.streamerMode,
|
|
3875
|
-
zenView: config.zenView ?? effectiveDefaults.zenView,
|
|
3876
3875
|
viewTabOrder: config.viewTabOrder ?? DEFAULT_CONFIG.viewTabOrder,
|
|
3877
3876
|
remoteSessions: config.remoteSessions ?? effectiveDefaults.remoteSessions,
|
|
3878
3877
|
detectBackgroundAgents: config.detectBackgroundAgents ?? effectiveDefaults.detectBackgroundAgents,
|
|
@@ -3906,12 +3905,12 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3906
3905
|
repositoryRootCaseInsensitive: equalsIgnoringCaseOnWindows("root", "ROOT"),
|
|
3907
3906
|
taskTitle: pickBlock("taskTitle", config.taskTitle ?? DEFAULT_CONFIG.taskTitle),
|
|
3908
3907
|
branchGc: pickBlock("branchGc", config.branchGc),
|
|
3909
|
-
postTurnChecks: pickBlock("postTurnChecks", config.postTurnChecks ?? DEFAULT_CONFIG.postTurnChecks),
|
|
3910
3908
|
visions: pickBlock("visions", config.visions),
|
|
3911
3909
|
github: pickBlock("github", config.github),
|
|
3912
3910
|
teamReview: pickBlock("teamReview", config.teamReview),
|
|
3913
3911
|
benchmarks: pickBlock("benchmarks", config.benchmarks),
|
|
3914
3912
|
coherence: pickBlock("coherence", config.coherence),
|
|
3913
|
+
issues: pickBlock("issues", config.issues),
|
|
3915
3914
|
workflows: config.workflows ?? null,
|
|
3916
3915
|
posthog: pickBlock("posthog", config.posthog),
|
|
3917
3916
|
secretSources: secretSourcesOf(process.env),
|
|
@@ -3947,8 +3946,6 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3947
3946
|
config[key] = nextValue;
|
|
3948
3947
|
}
|
|
3949
3948
|
config.repoRoots = newConfig.repoRoots || [];
|
|
3950
|
-
if (newConfig.postTurnChecks == null) delete config.postTurnChecks;
|
|
3951
|
-
if (newConfig.postTurnChecks != null) config.postTurnChecks = newConfig.postTurnChecks;
|
|
3952
3949
|
if (newConfig.worktreeShare == null) delete config.worktreeShare;
|
|
3953
3950
|
if (newConfig.worktreeShare != null) config.worktreeShare = newConfig.worktreeShare;
|
|
3954
3951
|
if (newConfig.taskTitle != null) config.taskTitle = newConfig.taskTitle;
|
|
@@ -3958,6 +3955,7 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3958
3955
|
if (newConfig.teamReview != null) config.teamReview = newConfig.teamReview;
|
|
3959
3956
|
if (newConfig.benchmarks != null) config.benchmarks = newConfig.benchmarks;
|
|
3960
3957
|
if (newConfig.coherence != null) config.coherence = newConfig.coherence;
|
|
3958
|
+
if (newConfig.issues != null) config.issues = newConfig.issues;
|
|
3961
3959
|
if (newConfig.posthog != null) config.posthog = newConfig.posthog;
|
|
3962
3960
|
if (newConfig.usage != null) config.usage = newConfig.usage;
|
|
3963
3961
|
if (newConfig.telegram != null) config.telegram = newConfig.telegram;
|
|
@@ -3996,7 +3994,7 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
3996
3994
|
}
|
|
3997
3995
|
_lastAppliedContent = data;
|
|
3998
3996
|
_lastWrittenContent = null;
|
|
3999
|
-
callback(newConfig);
|
|
3997
|
+
callback(withExperimentalFeaturesGated(newConfig, isExperimentalBuild));
|
|
4000
3998
|
console.log("[config] Reloaded config.json");
|
|
4001
3999
|
}
|
|
4002
4000
|
try {
|
|
@@ -4033,8 +4031,9 @@ function createConfigStore({ settingsDefaults, readTelemetryInstallId } = {}) {
|
|
|
4033
4031
|
applySettings,
|
|
4034
4032
|
isUnchosenLaunchDefault,
|
|
4035
4033
|
watchForChanges,
|
|
4034
|
+
isExperimentalBuild,
|
|
4036
4035
|
DEFAULT_CONFIG
|
|
4037
4036
|
};
|
|
4038
4037
|
}
|
|
4039
4038
|
//#endregion
|
|
4040
|
-
export {
|
|
4039
|
+
export { resolveProjectToken as $, setValueAtPath as A, buildAiGenerationEvents as B, SETTINGS_INDEX as C, hasScaledUnit as D, displayText as E, SETTINGS_REGISTRY as F, claudeAccountUuidOf as G, buildExceptionProperties as H, FIRST_RUN_NOTICE as I, decideRemoteTelemetryState as J, codexUserIdOf as K, TELEMETRY_BATCH_URL as L, settingsOf as M, valueAtPath as N, parsePosthogProjectSelection as O, FILE_ONLY_GROUPS as P, parsePosthogReleaseId as Q, TELEMETRY_FLAGS_URL as R, validateSettingsBlock as S, deleteValueAtPath as T, buildPersonProperties as U, buildBrowserExceptionProperties as V, classifySessionExit as W, exceptionFingerprint as X, decideTelemetryConsent as Y, nodeMajorVersion as Z, isRtkBinaryName as _, ensureProjectIds as a, matchedPrefix as at, mergeSettingsBlock as b, loadConfigFile as c, sessionIdFromBranch as ct, validateConfig as d, canonicalizePath as dt, ENV_SECRET_BINDINGS as et, isSettingAvailable as f, comparableDirectoryPath as ft, installTargetPath as g, findEscapingArchiveMember as h, createConfigStore as i, DEFAULT_BRANCH_GC_PREFIXES as it, settingsGroupOf as j, scoreSettingsSearch as k, resolveConfigPath as l, usablePrefixes as lt, decideRtkInstall as m, DEFAULT_CONFIG as n, stableConfigKey as nt, generateProjectId as o, planBranchGc as ot, assetForPlatform as p, isSameDirectoryPath as pt, decideIsDevInstall as q, IS_EXPERIMENTAL_BUILD as r, withEnvSecrets as rt, glimmervoidHomeDir as s, planWorktreeGc as st, ABORT_CONFIG_SAVE as t, readEnvSecrets as tt, saveConfigFileOnce as u, worktreeIntegrationTips as ut, verifyDigest as v, cloneValue as w, settingsBlockSpecFor as x, SECRET_PRESENCE_SUFFIX as y, adapterBucket as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as AGENT_API_VERBS } from "./session-
|
|
1
|
+
import { t as AGENT_API_VERBS } from "./session-BwlLY_mv.js";
|
|
2
2
|
import { r as execFileSync } from "./child-process-safe-D4hyVIXj.js";
|
|
3
3
|
//#region server/core/command-line-core.ts
|
|
4
4
|
var SUBCOMMANDS_HONORING_TRAILING_GLOBAL_OPTIONS = /* @__PURE__ */ new Set([
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as errorMessage } from "./text-DoirglWV.js";
|
|
2
2
|
import { s as relayPath } from "./runtime-paths-ghcH9CeW.js";
|
|
3
|
-
import { j as SIGN_URL_ENV, n as AGENT_URL_ENV } from "./session-
|
|
3
|
+
import { j as SIGN_URL_ENV, n as AGENT_URL_ENV } from "./session-BwlLY_mv.js";
|
|
4
4
|
import { n as isRecord } from "./coerce-NSst8oRP.js";
|
|
5
5
|
import { t as HOOK_URL_ENV } from "./hook-relay-core-DA_bz2KA.js";
|
|
6
6
|
import { a as SANE_YOLO_PATH_ENV, o as saneYoloEnv, r as RTK_PATH_ENV } from "./rtk-hook-core-B-MpzPin.js";
|
|
@@ -203,13 +203,11 @@ function createSpawnGate({ memoryAdmission = null, kind = "session" } = {}) {
|
|
|
203
203
|
if (flaggedStarts.has(queuedStart) || !queuedStart.isStillWanted()) return;
|
|
204
204
|
flaggedStarts.add(queuedStart);
|
|
205
205
|
admission.noteStartHeld(true);
|
|
206
|
-
queuedStart.onMemoryWait(true);
|
|
207
206
|
}
|
|
208
207
|
function leaveQueue(queuedStart) {
|
|
209
208
|
queuedStarts.delete(queuedStart);
|
|
210
209
|
if (!flaggedStarts.delete(queuedStart)) return;
|
|
211
210
|
admission.noteStartHeld(false);
|
|
212
|
-
queuedStart.onMemoryWait(false);
|
|
213
211
|
}
|
|
214
212
|
function noteHeadStartHeld(isHeld) {
|
|
215
213
|
isHeadStartHeld = isHeld;
|
|
@@ -217,11 +215,8 @@ function createSpawnGate({ memoryAdmission = null, kind = "session" } = {}) {
|
|
|
217
215
|
for (const queuedStart of queuedStarts) flagWaitingForMemory(queuedStart);
|
|
218
216
|
}
|
|
219
217
|
function run(fn, options = {}) {
|
|
220
|
-
const { isStillWanted = () => true
|
|
221
|
-
const queuedStart = {
|
|
222
|
-
isStillWanted,
|
|
223
|
-
onMemoryWait
|
|
224
|
-
};
|
|
218
|
+
const { isStillWanted = () => true } = options;
|
|
219
|
+
const queuedStart = { isStillWanted };
|
|
225
220
|
queuedStarts.add(queuedStart);
|
|
226
221
|
if (isHeadStartHeld) flagWaitingForMemory(queuedStart);
|
|
227
222
|
const release = () => leaveQueue(queuedStart);
|