@dotobokuri/fleet-console 1.10.0 → 1.10.2
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/cli-bin.mjs +213 -15
- package/dist/cli.mjs +213 -15
- package/dist/client/assets/{_baseUniq-CpZAwUyg.js → _baseUniq-B0PErl2E.js} +1 -1
- package/dist/client/assets/{arc-D7iMsyk2.js → arc-DZOCtb72.js} +1 -1
- package/dist/client/assets/{architectureDiagram-Q4EWVU46-DGUN9yJC.js → architectureDiagram-Q4EWVU46-lKeHajPP.js} +1 -1
- package/dist/client/assets/{blockDiagram-DXYQGD6D-mHGERYOO.js → blockDiagram-DXYQGD6D-nxOjG3tp.js} +1 -1
- package/dist/client/assets/{c4Diagram-AHTNJAMY-CUFKgiE1.js → c4Diagram-AHTNJAMY-B6immmFF.js} +1 -1
- package/dist/client/assets/channel-BPvn1RT5.js +1 -0
- package/dist/client/assets/{chunk-4BX2VUAB-DJVv4Xuk.js → chunk-4BX2VUAB-hrDXiMYn.js} +1 -1
- package/dist/client/assets/{chunk-4TB4RGXK-CiMGZvmq.js → chunk-4TB4RGXK-CjiaitfY.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-NErjEbD9.js → chunk-55IACEB6-Dfp3hg95.js} +1 -1
- package/dist/client/assets/{chunk-EDXVE4YY-DTTJdEr-.js → chunk-EDXVE4YY-D91XPfwh.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-CUQsmXDG.js → chunk-FMBD7UC4-DTGdaoi9.js} +1 -1
- package/dist/client/assets/{chunk-OYMX7WX6-DEXFXMqS.js → chunk-OYMX7WX6-j4aVytt_.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-0XA0aotU.js → chunk-QZHKN3VN-CA2z0Wnz.js} +1 -1
- package/dist/client/assets/{chunk-YZCP3GAM-B1CBq-Bd.js → chunk-YZCP3GAM-B0NhMyF9.js} +1 -1
- package/dist/client/assets/classDiagram-6PBFFD2Q-CGvwHQW2.js +1 -0
- package/dist/client/assets/classDiagram-v2-HSJHXN6E-CGvwHQW2.js +1 -0
- package/dist/client/assets/clone-jCrAo27W.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-aZiE_5HW.js → cose-bilkent-S5V4N54A-BGHrOYlY.js} +1 -1
- package/dist/client/assets/{dagre-KV5264BT-CyE3dfqF.js → dagre-KV5264BT-BFtQQNJz.js} +1 -1
- package/dist/client/assets/{diagram-5BDNPKRD-Dn1c6pP2.js → diagram-5BDNPKRD-Bl5sE460.js} +1 -1
- package/dist/client/assets/{diagram-G4DWMVQ6-BJlWBn9n.js → diagram-G4DWMVQ6-Cjz1orfi.js} +1 -1
- package/dist/client/assets/{diagram-MMDJMWI5-EO6LIBA2.js → diagram-MMDJMWI5-B-fFQatb.js} +1 -1
- package/dist/client/assets/{diagram-TYMM5635-DP-obRT1.js → diagram-TYMM5635-C1aFMoW4.js} +1 -1
- package/dist/client/assets/{erDiagram-SMLLAGMA-DwQvA8OY.js → erDiagram-SMLLAGMA-Dnsp-AHy.js} +1 -1
- package/dist/client/assets/{flowDiagram-DWJPFMVM-DJgNhD-9.js → flowDiagram-DWJPFMVM-Ik7b9ai0.js} +1 -1
- package/dist/client/assets/{ganttDiagram-T4ZO3ILL-pNmuyhTT.js → ganttDiagram-T4ZO3ILL-BC-NrcBq.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-UUTBAWPF-DywGqs_d.js → gitGraphDiagram-UUTBAWPF-DWLFCHqJ.js} +1 -1
- package/dist/client/assets/{graph-wLI-a6f_.js → graph-CFrgLuks.js} +1 -1
- package/dist/client/assets/index-BSr9Yi1L.css +1 -0
- package/dist/client/assets/{index-BvlhP0lF.js → index-BmsjlgH0.js} +162 -162
- package/dist/client/assets/{infoDiagram-42DDH7IO-Dd-W13KY.js → infoDiagram-42DDH7IO-C8LNvGxg.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-Cxusf_HC.js → ishikawaDiagram-UXIWVN3A-BVF0c1qh.js} +1 -1
- package/dist/client/assets/{journeyDiagram-VCZTEJTY-CNBWilxn.js → journeyDiagram-VCZTEJTY-DRe82d1J.js} +1 -1
- package/dist/client/assets/{kanban-definition-6JOO6SKY-COvid-XL.js → kanban-definition-6JOO6SKY-DWQP2qnF.js} +1 -1
- package/dist/client/assets/{layout-kFbZe4kW.js → layout-CRE4t3i4.js} +1 -1
- package/dist/client/assets/{linear-Ms3Rqxm3.js → linear-CEMkymuU.js} +1 -1
- package/dist/client/assets/{mermaid.core-pNTEyfuV.js → mermaid.core-Bstsk9cs.js} +4 -4
- package/dist/client/assets/{min-DHX2aDkR.js → min-Dqb8cdig.js} +1 -1
- package/dist/client/assets/{mindmap-definition-QFDTVHPH-BvC6-hNE.js → mindmap-definition-QFDTVHPH-C4IgFjul.js} +1 -1
- package/dist/client/assets/{pieDiagram-DEJITSTG-B_Usa7SZ.js → pieDiagram-DEJITSTG-qQsv3h1d.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-34T5L4WZ-BelZwQw0.js → quadrantDiagram-34T5L4WZ-B9Z5d9Su.js} +1 -1
- package/dist/client/assets/{requirementDiagram-MS252O5E-D3PopSCU.js → requirementDiagram-MS252O5E-B3bvh52E.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-XADWPNL6-CT_hbWMk.js → sankeyDiagram-XADWPNL6-CzMbxMn4.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-FGHM5R23-BiNn8SKW.js → sequenceDiagram-FGHM5R23-OC2b3ovy.js} +1 -1
- package/dist/client/assets/{stateDiagram-FHFEXIEX-JGDKAj7k.js → stateDiagram-FHFEXIEX-DZ794L2W.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CWkyT6YP.js +1 -0
- package/dist/client/assets/{timeline-definition-GMOUNBTQ-C_m1mLvt.js → timeline-definition-GMOUNBTQ-VG_E_aeb.js} +1 -1
- package/dist/client/assets/{vennDiagram-DHZGUBPP-CbTzleI3.js → vennDiagram-DHZGUBPP-rtfRsKP2.js} +1 -1
- package/dist/client/assets/{wardley-RL74JXVD-n43ETO10.js → wardley-RL74JXVD-BFVZEiVh.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-NUSXRM2D-CPYrHJfx.js → wardleyDiagram-NUSXRM2D-CAwmkN7Y.js} +1 -1
- package/dist/client/assets/{xychartDiagram-5P7HB3ND-D5_xXt5s.js → xychartDiagram-5P7HB3ND-Gk8gTxJJ.js} +1 -1
- package/dist/client/index.html +2 -2
- package/package.json +1 -1
- package/dist/client/assets/channel-Bsc9v8gO.js +0 -1
- package/dist/client/assets/classDiagram-6PBFFD2Q-CemsJaFk.js +0 -1
- package/dist/client/assets/classDiagram-v2-HSJHXN6E-CemsJaFk.js +0 -1
- package/dist/client/assets/clone-D1HtW7uh.js +0 -1
- package/dist/client/assets/index-CTyjGQHF.css +0 -1
- package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CiJ42_NW.js +0 -1
package/dist/cli.mjs
CHANGED
|
@@ -40236,7 +40236,7 @@ var AGENT_CLI_API_CATALOG = [
|
|
|
40236
40236
|
{
|
|
40237
40237
|
method: "GET",
|
|
40238
40238
|
path: "/agent-cli/state",
|
|
40239
|
-
summary: "
|
|
40239
|
+
summary: "Get the installed Agent CLI status.",
|
|
40240
40240
|
category: "Agent CLI",
|
|
40241
40241
|
gate: "loopback"
|
|
40242
40242
|
}
|
|
@@ -40265,63 +40265,63 @@ var CARRIER_SETTINGS_API_CATALOG = [
|
|
|
40265
40265
|
{
|
|
40266
40266
|
method: "GET",
|
|
40267
40267
|
path: "/carrier-settings/state",
|
|
40268
|
-
summary: "
|
|
40268
|
+
summary: "Get the carrier settings status.",
|
|
40269
40269
|
category: "Carrier Settings",
|
|
40270
40270
|
gate: "loopback"
|
|
40271
40271
|
},
|
|
40272
40272
|
{
|
|
40273
40273
|
method: "GET",
|
|
40274
40274
|
path: "/carrier-settings/options",
|
|
40275
|
-
summary: "
|
|
40275
|
+
summary: "Get the carrier settings options.",
|
|
40276
40276
|
category: "Carrier Settings",
|
|
40277
40277
|
gate: "loopback"
|
|
40278
40278
|
},
|
|
40279
40279
|
{
|
|
40280
40280
|
method: "PUT",
|
|
40281
40281
|
path: "/carrier-settings/carriers/:id/cli",
|
|
40282
|
-
summary: "
|
|
40282
|
+
summary: "Change the carrier Agent CLI.",
|
|
40283
40283
|
category: "Carrier Settings",
|
|
40284
40284
|
gate: "terminal-origin"
|
|
40285
40285
|
},
|
|
40286
40286
|
{
|
|
40287
40287
|
method: "PUT",
|
|
40288
40288
|
path: "/carrier-settings/carriers/:id/model",
|
|
40289
|
-
summary: "
|
|
40289
|
+
summary: "Change the carrier model selection.",
|
|
40290
40290
|
category: "Carrier Settings",
|
|
40291
40291
|
gate: "terminal-origin"
|
|
40292
40292
|
},
|
|
40293
40293
|
{
|
|
40294
40294
|
method: "PATCH",
|
|
40295
40295
|
path: "/carrier-settings/carriers/:id/display-name",
|
|
40296
|
-
summary: "
|
|
40296
|
+
summary: "Change the carrier display name.",
|
|
40297
40297
|
category: "Carrier Settings",
|
|
40298
40298
|
gate: "terminal-origin"
|
|
40299
40299
|
},
|
|
40300
40300
|
{
|
|
40301
40301
|
method: "PUT",
|
|
40302
40302
|
path: "/carrier-settings/carriers/:id/agent-mode",
|
|
40303
|
-
summary: "
|
|
40303
|
+
summary: "Change the carrier execution mode.",
|
|
40304
40304
|
category: "Carrier Settings",
|
|
40305
40305
|
gate: "terminal-origin"
|
|
40306
40306
|
},
|
|
40307
40307
|
{
|
|
40308
40308
|
method: "PUT",
|
|
40309
40309
|
path: "/carrier-settings/carriers/:id/taskforce/:cliType",
|
|
40310
|
-
summary: "Task Force
|
|
40310
|
+
summary: "Set the Task Force backend model.",
|
|
40311
40311
|
category: "Carrier Settings",
|
|
40312
40312
|
gate: "terminal-origin"
|
|
40313
40313
|
},
|
|
40314
40314
|
{
|
|
40315
40315
|
method: "DELETE",
|
|
40316
40316
|
path: "/carrier-settings/carriers/:id/taskforce/:cliType",
|
|
40317
|
-
summary: "Task Force
|
|
40317
|
+
summary: "Unset the Task Force backend model.",
|
|
40318
40318
|
category: "Carrier Settings",
|
|
40319
40319
|
gate: "terminal-origin"
|
|
40320
40320
|
},
|
|
40321
40321
|
{
|
|
40322
40322
|
method: "DELETE",
|
|
40323
40323
|
path: "/carrier-settings/carriers/:id/taskforce",
|
|
40324
|
-
summary: "
|
|
40324
|
+
summary: "Reset the carrier Task Force settings.",
|
|
40325
40325
|
category: "Carrier Settings",
|
|
40326
40326
|
gate: "terminal-origin"
|
|
40327
40327
|
}
|
|
@@ -40742,14 +40742,14 @@ var GLOBAL_SETTINGS_API_CATALOG = [
|
|
|
40742
40742
|
{
|
|
40743
40743
|
method: "GET",
|
|
40744
40744
|
path: "/global-settings/state",
|
|
40745
|
-
summary: "
|
|
40745
|
+
summary: "Get the global console settings status.",
|
|
40746
40746
|
category: "Global Settings",
|
|
40747
40747
|
gate: "loopback"
|
|
40748
40748
|
},
|
|
40749
40749
|
{
|
|
40750
40750
|
method: "PUT",
|
|
40751
40751
|
path: "/global-settings",
|
|
40752
|
-
summary: "
|
|
40752
|
+
summary: "Save the global console settings.",
|
|
40753
40753
|
category: "Global Settings",
|
|
40754
40754
|
gate: "terminal-origin"
|
|
40755
40755
|
}
|
|
@@ -40830,21 +40830,21 @@ var MODEL_AUTH_API_CATALOG = [
|
|
|
40830
40830
|
{
|
|
40831
40831
|
method: "GET",
|
|
40832
40832
|
path: "/model-auth/state",
|
|
40833
|
-
summary: "
|
|
40833
|
+
summary: "Get the model login status.",
|
|
40834
40834
|
category: "Model Auth",
|
|
40835
40835
|
gate: "loopback"
|
|
40836
40836
|
},
|
|
40837
40837
|
{
|
|
40838
40838
|
method: "PUT",
|
|
40839
40839
|
path: "/model-auth/providers/:cli",
|
|
40840
|
-
summary: "
|
|
40840
|
+
summary: "Register a model provider API key.",
|
|
40841
40841
|
category: "Model Auth",
|
|
40842
40842
|
gate: "terminal-origin"
|
|
40843
40843
|
},
|
|
40844
40844
|
{
|
|
40845
40845
|
method: "DELETE",
|
|
40846
40846
|
path: "/model-auth/providers/:cli",
|
|
40847
|
-
summary: "
|
|
40847
|
+
summary: "Remove a model provider API key.",
|
|
40848
40848
|
category: "Model Auth",
|
|
40849
40849
|
gate: "terminal-origin"
|
|
40850
40850
|
}
|
|
@@ -42510,6 +42510,176 @@ function resolvedWorkspaceSnapshot(resolveWorkspace, tenantId) {
|
|
|
42510
42510
|
tenantLabel: tenantId
|
|
42511
42511
|
};
|
|
42512
42512
|
}
|
|
42513
|
+
|
|
42514
|
+
// src/release-notes/parser.ts
|
|
42515
|
+
var RELEASE_NOTE_HEADINGS = ["Added", "Changed", "Fixed", "Removed", "Breaking Changes"];
|
|
42516
|
+
var VERSION_HEADER_PATTERN = /^## \[([^\]]+)\](?: - ([0-9]{4}-[0-9]{2}-[0-9]{2}))?$/;
|
|
42517
|
+
var SECTION_HEADER_PATTERN = /^### (Added|Changed|Fixed|Removed|Breaking Changes)$/;
|
|
42518
|
+
var BULLET_PATTERN = /^- (.+)$/;
|
|
42519
|
+
var PACKAGE_TAG_PATTERN = /^\[([^\]]+)\]/;
|
|
42520
|
+
function parseConsoleReleaseNotes(changelog) {
|
|
42521
|
+
const lines = changelog.split(/\r?\n/);
|
|
42522
|
+
const notes = [];
|
|
42523
|
+
for (let index = 0; index < lines.length; index += 1) {
|
|
42524
|
+
const match = VERSION_HEADER_PATTERN.exec(lines[index] ?? "");
|
|
42525
|
+
if (match === null) continue;
|
|
42526
|
+
const block = [];
|
|
42527
|
+
for (let cursor = index + 1; cursor < lines.length; cursor += 1) {
|
|
42528
|
+
if ((lines[cursor] ?? "").startsWith("## ")) break;
|
|
42529
|
+
block.push(lines[cursor] ?? "");
|
|
42530
|
+
}
|
|
42531
|
+
const sections = collectSections(block);
|
|
42532
|
+
if (sections.length === 0) continue;
|
|
42533
|
+
notes.push({ version: match[1] ?? "", date: match[2] ?? null, sections });
|
|
42534
|
+
}
|
|
42535
|
+
return notes;
|
|
42536
|
+
}
|
|
42537
|
+
function collectSections(lines) {
|
|
42538
|
+
const sections = [];
|
|
42539
|
+
let current = null;
|
|
42540
|
+
for (const line of lines) {
|
|
42541
|
+
const sectionMatch = SECTION_HEADER_PATTERN.exec(line);
|
|
42542
|
+
if (sectionMatch !== null) {
|
|
42543
|
+
current = { heading: sectionMatch[1], items: [] };
|
|
42544
|
+
sections.push(current);
|
|
42545
|
+
continue;
|
|
42546
|
+
}
|
|
42547
|
+
if (current === null) continue;
|
|
42548
|
+
if (line.startsWith("### ")) {
|
|
42549
|
+
current = null;
|
|
42550
|
+
continue;
|
|
42551
|
+
}
|
|
42552
|
+
const bulletMatch = BULLET_PATTERN.exec(line);
|
|
42553
|
+
if (bulletMatch !== null) current.items.push(parseReleaseNoteItem(bulletMatch[1] ?? ""));
|
|
42554
|
+
}
|
|
42555
|
+
return RELEASE_NOTE_HEADINGS.map((heading) => sections.find((section2) => section2.heading === heading)).filter((section2) => Boolean(section2 && section2.items.length > 0));
|
|
42556
|
+
}
|
|
42557
|
+
function parseReleaseNoteItem(rawText) {
|
|
42558
|
+
const packageTags = [];
|
|
42559
|
+
let text = rawText.trim();
|
|
42560
|
+
while (true) {
|
|
42561
|
+
const match = PACKAGE_TAG_PATTERN.exec(text);
|
|
42562
|
+
if (match === null) break;
|
|
42563
|
+
packageTags.push(match[1] ?? "");
|
|
42564
|
+
text = text.slice(match[0].length).trimStart();
|
|
42565
|
+
}
|
|
42566
|
+
return { packageTags, text: text.trim() };
|
|
42567
|
+
}
|
|
42568
|
+
|
|
42569
|
+
// src/release-notes/types.ts
|
|
42570
|
+
var ConsoleReleaseNotesUnavailableError = class extends Error {
|
|
42571
|
+
reason;
|
|
42572
|
+
constructor(reason) {
|
|
42573
|
+
super("Console release notes are unavailable");
|
|
42574
|
+
this.name = "ConsoleReleaseNotesUnavailableError";
|
|
42575
|
+
this.reason = reason;
|
|
42576
|
+
}
|
|
42577
|
+
};
|
|
42578
|
+
|
|
42579
|
+
// src/release-notes/service.ts
|
|
42580
|
+
var RAW_CHANGELOG_URL = "https://raw.githubusercontent.com/sbluemin/fleet-harness/main/CHANGELOG.md";
|
|
42581
|
+
var SOURCE_REF = "main";
|
|
42582
|
+
var FETCH_TIMEOUT_MS = 3e3;
|
|
42583
|
+
var MAX_CHANGELOG_BYTES = 1024 * 1024;
|
|
42584
|
+
var SUCCESS_TTL_MS = 60 * 60 * 1e3;
|
|
42585
|
+
var NEGATIVE_TTL_MS = 30 * 1e3;
|
|
42586
|
+
function createConsoleReleaseNotesService(deps = {}) {
|
|
42587
|
+
const fetchImpl = deps.fetchImpl ?? fetch;
|
|
42588
|
+
const now = deps.now ?? (() => Date.now());
|
|
42589
|
+
const setTimer = deps.setTimeout ?? setTimeout;
|
|
42590
|
+
const clearTimer = deps.clearTimeout ?? clearTimeout;
|
|
42591
|
+
let lastSuccess = null;
|
|
42592
|
+
let lastFailureAt = 0;
|
|
42593
|
+
let inFlight = null;
|
|
42594
|
+
let forceInFlight = null;
|
|
42595
|
+
async function refresh(options = {}) {
|
|
42596
|
+
const currentTime = now();
|
|
42597
|
+
if (options.force) {
|
|
42598
|
+
if (forceInFlight) return forceInFlight;
|
|
42599
|
+
const pending2 = runFetch().finally(() => {
|
|
42600
|
+
if (forceInFlight === pending2) forceInFlight = null;
|
|
42601
|
+
});
|
|
42602
|
+
forceInFlight = pending2;
|
|
42603
|
+
return pending2;
|
|
42604
|
+
}
|
|
42605
|
+
if (lastSuccess && currentTime - lastSuccess.fetchedAt < SUCCESS_TTL_MS) return lastSuccess;
|
|
42606
|
+
if (lastFailureAt > 0 && currentTime - lastFailureAt < NEGATIVE_TTL_MS) {
|
|
42607
|
+
if (lastSuccess) return { ...lastSuccess, stale: true };
|
|
42608
|
+
throw new ConsoleReleaseNotesUnavailableError("negative_cache");
|
|
42609
|
+
}
|
|
42610
|
+
if (inFlight) return inFlight;
|
|
42611
|
+
const pending = runFetch().finally(() => {
|
|
42612
|
+
if (inFlight === pending) inFlight = null;
|
|
42613
|
+
});
|
|
42614
|
+
inFlight = pending;
|
|
42615
|
+
return pending;
|
|
42616
|
+
}
|
|
42617
|
+
function runFetch() {
|
|
42618
|
+
return fetchReleaseNotes().then((result) => {
|
|
42619
|
+
lastSuccess = result;
|
|
42620
|
+
lastFailureAt = 0;
|
|
42621
|
+
return result;
|
|
42622
|
+
}).catch((error51) => {
|
|
42623
|
+
lastFailureAt = now();
|
|
42624
|
+
if (lastSuccess) return { ...lastSuccess, stale: true };
|
|
42625
|
+
if (error51 instanceof ConsoleReleaseNotesUnavailableError) throw error51;
|
|
42626
|
+
throw new ConsoleReleaseNotesUnavailableError("cold_unavailable");
|
|
42627
|
+
});
|
|
42628
|
+
}
|
|
42629
|
+
async function fetchReleaseNotes() {
|
|
42630
|
+
const controller = new AbortController();
|
|
42631
|
+
const timer = setTimer(() => controller.abort(), FETCH_TIMEOUT_MS);
|
|
42632
|
+
timer.unref?.();
|
|
42633
|
+
try {
|
|
42634
|
+
const response = await fetchImpl(RAW_CHANGELOG_URL, {
|
|
42635
|
+
headers: { Accept: "text/plain; charset=utf-8" },
|
|
42636
|
+
signal: controller.signal
|
|
42637
|
+
});
|
|
42638
|
+
if (!response.ok) throw new ConsoleReleaseNotesUnavailableError("cold_unavailable");
|
|
42639
|
+
const text = await readTextWithByteLimit(response, controller);
|
|
42640
|
+
return {
|
|
42641
|
+
notes: parseConsoleReleaseNotes(text),
|
|
42642
|
+
sourceRef: SOURCE_REF,
|
|
42643
|
+
fetchedAt: now(),
|
|
42644
|
+
stale: false
|
|
42645
|
+
};
|
|
42646
|
+
} finally {
|
|
42647
|
+
clearTimer(timer);
|
|
42648
|
+
}
|
|
42649
|
+
}
|
|
42650
|
+
return { refresh };
|
|
42651
|
+
}
|
|
42652
|
+
async function readTextWithByteLimit(response, controller) {
|
|
42653
|
+
const body = response.body;
|
|
42654
|
+
if (body === null) return await response.text();
|
|
42655
|
+
const reader = body.getReader();
|
|
42656
|
+
const chunks = [];
|
|
42657
|
+
let totalBytes = 0;
|
|
42658
|
+
try {
|
|
42659
|
+
while (true) {
|
|
42660
|
+
const { done, value } = await reader.read();
|
|
42661
|
+
if (done) break;
|
|
42662
|
+
totalBytes += value.byteLength;
|
|
42663
|
+
if (totalBytes > MAX_CHANGELOG_BYTES) {
|
|
42664
|
+
controller.abort();
|
|
42665
|
+
throw new ConsoleReleaseNotesUnavailableError("cold_unavailable");
|
|
42666
|
+
}
|
|
42667
|
+
chunks.push(value);
|
|
42668
|
+
}
|
|
42669
|
+
return new TextDecoder().decode(joinChunks2(chunks, totalBytes));
|
|
42670
|
+
} finally {
|
|
42671
|
+
reader.releaseLock();
|
|
42672
|
+
}
|
|
42673
|
+
}
|
|
42674
|
+
function joinChunks2(chunks, totalBytes) {
|
|
42675
|
+
const joined = new Uint8Array(totalBytes);
|
|
42676
|
+
let offset = 0;
|
|
42677
|
+
for (const chunk of chunks) {
|
|
42678
|
+
joined.set(chunk, offset);
|
|
42679
|
+
offset += chunk.byteLength;
|
|
42680
|
+
}
|
|
42681
|
+
return joined;
|
|
42682
|
+
}
|
|
42513
42683
|
var TENANT_EVENT_LIMIT = 1e3;
|
|
42514
42684
|
var TENANT_FINALIZED_JOB_LIMIT = 100;
|
|
42515
42685
|
var TENANT_JOB_LIMIT = 200;
|
|
@@ -44438,6 +44608,13 @@ var SERVER_API_CATALOG = [
|
|
|
44438
44608
|
category: "Observer",
|
|
44439
44609
|
gate: "loopback"
|
|
44440
44610
|
},
|
|
44611
|
+
{
|
|
44612
|
+
method: "GET",
|
|
44613
|
+
path: "/observer/release-notes",
|
|
44614
|
+
summary: "Get the console release notes.",
|
|
44615
|
+
category: "Update",
|
|
44616
|
+
gate: "loopback"
|
|
44617
|
+
},
|
|
44441
44618
|
{
|
|
44442
44619
|
method: "GET",
|
|
44443
44620
|
path: "/observer/tenants",
|
|
@@ -44589,6 +44766,7 @@ function createConsoleServer(deps = {}) {
|
|
|
44589
44766
|
registerDefaultCarriers(carrierRegistry);
|
|
44590
44767
|
const lock = createConsoleLock({ hostname: () => host });
|
|
44591
44768
|
const observability = createConsoleObservabilityStore();
|
|
44769
|
+
const releaseNotes = deps.releaseNotes ?? createConsoleReleaseNotesService();
|
|
44592
44770
|
const updateCheck = deps.updateCheck ?? createConsoleUpdateCheckService();
|
|
44593
44771
|
const updateApply = deps.updateApply ?? createConsoleUpdateApplyService();
|
|
44594
44772
|
const theaters = new TheaterRegistry();
|
|
@@ -44783,6 +44961,10 @@ function createConsoleServer(deps = {}) {
|
|
|
44783
44961
|
handleObserverApiCatalog(req, res);
|
|
44784
44962
|
return;
|
|
44785
44963
|
}
|
|
44964
|
+
if (pathname === "/observer/release-notes") {
|
|
44965
|
+
runAsyncHandler(handleObserverReleaseNotes(req, res), res);
|
|
44966
|
+
return;
|
|
44967
|
+
}
|
|
44786
44968
|
if (pathname === "/update/apply") {
|
|
44787
44969
|
runAsyncHandler(handleUpdateApply(req, res), res);
|
|
44788
44970
|
return;
|
|
@@ -45233,6 +45415,22 @@ function createConsoleServer(deps = {}) {
|
|
|
45233
45415
|
function handleObserverApiCatalog(_req, res) {
|
|
45234
45416
|
writeJson(res, 200, { version: version2, routes: buildApiCatalog() });
|
|
45235
45417
|
}
|
|
45418
|
+
async function handleObserverReleaseNotes(req, res) {
|
|
45419
|
+
if (req.method !== "GET") {
|
|
45420
|
+
writeJson(res, 405, { error: "Method not allowed" });
|
|
45421
|
+
return;
|
|
45422
|
+
}
|
|
45423
|
+
try {
|
|
45424
|
+
const force = readUrl(req).searchParams.get("force") === "true";
|
|
45425
|
+
writeJson(res, 200, await releaseNotes.refresh({ force }));
|
|
45426
|
+
} catch (error51) {
|
|
45427
|
+
if (error51 instanceof ConsoleReleaseNotesUnavailableError) {
|
|
45428
|
+
writeJson(res, 503, { error: "release_notes_unavailable" });
|
|
45429
|
+
return;
|
|
45430
|
+
}
|
|
45431
|
+
throw error51;
|
|
45432
|
+
}
|
|
45433
|
+
}
|
|
45236
45434
|
async function handleUpdateApply(req, res) {
|
|
45237
45435
|
if (req.method !== "POST") {
|
|
45238
45436
|
writeJson(res, 405, { error: "Method not allowed" });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{aW as L,bs as ln,aG as A,aU as P,aF as W,bt as gn,bu as dn,bv as hn,bw as z,bx as pn,bn as An,by as m,aX as N,b0 as U,b3 as T,bz as _n,a_ as on,bA as wn,bq as On,aH as V,bo as vn,bB as I}from"./mermaid.core-
|
|
1
|
+
import{aW as L,bs as ln,aG as A,aU as P,aF as W,bt as gn,bu as dn,bv as hn,bw as z,bx as pn,bn as An,by as m,aX as N,b0 as U,b3 as T,bz as _n,a_ as on,bA as wn,bq as On,aH as V,bo as vn,bB as I}from"./mermaid.core-Bstsk9cs.js";var Pn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==Pn}function yn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=P?P.prototype:void 0,H=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return yn(n,k)+"";if(x(n))return H?H.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function bn(){}function En(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function Rn(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function In(n,r,e){return r===r?Rn(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&In(n,r,0)>-1}function M(n){return W(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Fn=/\\(\\)?/g,Gn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Fn,"$1"):i||e)}),r});function Dn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Gn(Dn(n))}function R(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[R(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var K=P?P.isConcatSpreadable:void 0;function Nn(n){return A(n)||z(n)||!!(K&&n&&n[K])}function Kr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Hn=Object.prototype,Kn=Hn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Kn.call(n,r)}))}:Bn;function Zn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Z(n){return Zn(n,M,qn)}var Xn="__lodash_hash_undefined__";function Yn(n){return this.__data__.set(n,Xn),this}function Jn(n){return this.__data__.has(n)}function y(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}y.prototype.add=y.prototype.push=Yn;y.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var Wn=1,zn=2;function fn(n,r,e,i,f,t){var s=e&Wn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&zn?new y:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,v){if(!tn(o,v)&&(p===O||f(p,O,e,i,t)))return o.push(v)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",X=P?P.prototype:void 0,S=X?X.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Z(n),a=u.length,h=Z(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],v=r[d];if(i)var D=s?i(v,O,d,r,n,t):i(O,v,d,n,r,t);if(!(D===void 0?O===v||f(O,v,e,i,t):D)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var b=n.constructor,E=r.constructor;b!=E&&"constructor"in n&&"constructor"in r&&!(typeof b=="function"&&b instanceof b&&typeof E=="function"&&E instanceof E)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,Y="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==Y?c:a,h=h==Y?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function F(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,F,f)}var vr=1,Pr=2;function yr(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?F(h,a,vr|Pr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function br(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function Er(n){var r=br(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||yr(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=R(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||z(n)))}function Rr(n,r){return n!=null&&Tr(n,r,cr)}var Ir=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(R(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Rr(e,n):F(r,i,Ir|Sr)}}function xr(n){return function(r){return r?.[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(R(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):Er(n):$r(n)}function Cr(n,r){return n&&vn(n,r,M)}function Fr(n,r){return function(e,i){if(e==null)return e;if(!W(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var G=Fr(Cr);function Gr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?En:G;return e(n,Gr(r))}function Dr(n,r){var e=[];return G(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Zr(n,r){var e=A(n)?en:Dr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Xr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,G)}var Nr=1/0,Ur=I&&1/C(new I([,-0]))[1]==Nr?function(n){return new I(n)}:bn,Br=200;function Yr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new y}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{G as a,Kr as b,an as c,yn as d,rn as e,Zn as f,qn as g,En as h,x as i,Z as j,M as k,Yr as l,Zr as m,qr as n,cn as o,Gr as p,Cr as q,Xr as r,Bn as s,Tr as t,j as u,R as v,nn as w,Rr as x,Dn as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as ln,a0 as an,a1 as G,a2 as q,a3 as z,a4 as un,a5 as y,a6 as tn,a7 as K,a8 as _,a9 as rn,aa as o,ab as on,ac as sn,ad as fn}from"./mermaid.core-
|
|
1
|
+
import{$ as ln,a0 as an,a1 as G,a2 as q,a3 as z,a4 as un,a5 as y,a6 as tn,a7 as K,a8 as _,a9 as rn,aa as o,ab as on,ac as sn,ad as fn}from"./mermaid.core-Bstsk9cs.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,B,a){var O=I-l,i=D-h,n=B-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function V(l,h,I,D,v,A,B){var a=l-I,O=h-D,i=(B?A:-A)/K(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,C=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*K(on(0,T*T*R-P*P)),$=(P*g-m*S)/R,j=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=$-C,e=j-t,r=w-C,F=p-t;return x*x+e*e>r*r+F*F&&($=w,j=p),{cx:$,cy:j,x01:-n,y01:-d,x11:$*(v/T-1),y11:j*(v/T-1)}}function hn(){var l=cn,h=yn,I=z(0),D=null,v=gn,A=dn,B=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,C=rn(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(C>tn-y)a.moveTo(s*G(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*G(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=C,S=C,$=B.apply(this,arguments)/2,j=$>y&&(D?+D.apply(this,arguments):K(u*u+s*s)),w=_(rn(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(j>y){var F=sn(j/u*q($)),L=sn(j/s*q($));(P-=F*2)>y?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(S-=L*2)>y?(L*=t?1:-1,m+=L,g-=L):(S=0,m=g=(f+c)/2)}var H=s*G(m),J=s*q(m),M=u*G(T),N=u*q(T);if(w>y){var Q=s*G(g),U=s*q(g),W=u*G(R),X=u*q(R),E;if(C<an)if(E=pn(H,J,W,X,Q,U,M,N)){var Y=H-E[0],Z=J-E[1],b=Q-E[0],k=U-E[1],nn=1/q(fn((Y*b+Z*k)/(K(Y*Y+Z*Z)*K(b*b+k*k)))/2),en=K(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=V(W,X,H,J,s,x,t),r=V(Q,U,M,N,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(H,J),a.arc(0,0,s,m,g,!t)):a.moveTo(H,J),!(u>y)||!(P>y)?a.lineTo(M,N):p>y?(e=V(M,N,Q,U,u,-p,t),r=V(H,J,W,X,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[G(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:z(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:z(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:z(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:z(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:z(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:z(+n),i):A},i.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:z(+n),i):B},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
|