atlarix 14.39.2 → 14.39.3
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.
|
@@ -121,6 +121,45 @@ var init_thinking_tags = __esm({
|
|
|
121
121
|
}
|
|
122
122
|
});
|
|
123
123
|
|
|
124
|
+
// src/lib/security/redact-secrets.ts
|
|
125
|
+
function redactSecretsInText(text3) {
|
|
126
|
+
if (!text3) return text3;
|
|
127
|
+
let out = text3;
|
|
128
|
+
for (const re2 of SECRET_PATTERNS) {
|
|
129
|
+
out = out.replace(re2, REDACTION);
|
|
130
|
+
}
|
|
131
|
+
return out;
|
|
132
|
+
}
|
|
133
|
+
function containsSecret(text3) {
|
|
134
|
+
return SECRET_PATTERNS.some((re2) => {
|
|
135
|
+
re2.lastIndex = 0;
|
|
136
|
+
return re2.test(text3);
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
var SECRET_PATTERNS, REDACTION;
|
|
140
|
+
var init_redact_secrets = __esm({
|
|
141
|
+
"src/lib/security/redact-secrets.ts"() {
|
|
142
|
+
SECRET_PATTERNS = [
|
|
143
|
+
// OpenAI (incl. project keys) + Anthropic
|
|
144
|
+
/\bsk-(?:ant-|proj-)?[A-Za-z0-9_-]{20,}\b/g,
|
|
145
|
+
// GitHub tokens (classic + fine-grained PAT)
|
|
146
|
+
/\bgh[pousr]_[A-Za-z0-9]{36,}\b/g,
|
|
147
|
+
/\bgithub_pat_[A-Za-z0-9_]{22,}\b/g,
|
|
148
|
+
// AWS access key id
|
|
149
|
+
/\bAKIA[0-9A-Z]{16}\b/g,
|
|
150
|
+
// Google API key
|
|
151
|
+
/\bAIza[0-9A-Za-z_-]{35}\b/g,
|
|
152
|
+
// Slack tokens
|
|
153
|
+
/\bxox[baprs]-[A-Za-z0-9-]{10,}\b/g,
|
|
154
|
+
// JSON Web Token (header.payload.signature)
|
|
155
|
+
/\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\b/g,
|
|
156
|
+
// PEM private key blocks
|
|
157
|
+
/-----BEGIN[A-Z ]*PRIVATE KEY-----[\s\S]*?-----END[A-Z ]*PRIVATE KEY-----/g
|
|
158
|
+
];
|
|
159
|
+
REDACTION = "[redacted secret]";
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
|
|
124
163
|
// src/headless/electron-stub.ts
|
|
125
164
|
var electron_stub_exports = {};
|
|
126
165
|
__export(electron_stub_exports, {
|
|
@@ -1559,7 +1598,7 @@ var init_sql = __esm({
|
|
|
1559
1598
|
function mapResultRow(columns, row, joinsNotNullableMap) {
|
|
1560
1599
|
const nullifyMap = {};
|
|
1561
1600
|
const result2 = columns.reduce(
|
|
1562
|
-
(result22, { path:
|
|
1601
|
+
(result22, { path: path50, field }, columnIndex) => {
|
|
1563
1602
|
let decoder;
|
|
1564
1603
|
if (is(field, Column)) {
|
|
1565
1604
|
decoder = field;
|
|
@@ -1571,8 +1610,8 @@ function mapResultRow(columns, row, joinsNotNullableMap) {
|
|
|
1571
1610
|
decoder = field.sql.decoder;
|
|
1572
1611
|
}
|
|
1573
1612
|
let node2 = result22;
|
|
1574
|
-
for (const [pathChunkIndex, pathChunk] of
|
|
1575
|
-
if (pathChunkIndex <
|
|
1613
|
+
for (const [pathChunkIndex, pathChunk] of path50.entries()) {
|
|
1614
|
+
if (pathChunkIndex < path50.length - 1) {
|
|
1576
1615
|
if (!(pathChunk in node2)) {
|
|
1577
1616
|
node2[pathChunk] = {};
|
|
1578
1617
|
}
|
|
@@ -1580,8 +1619,8 @@ function mapResultRow(columns, row, joinsNotNullableMap) {
|
|
|
1580
1619
|
} else {
|
|
1581
1620
|
const rawValue = row[columnIndex];
|
|
1582
1621
|
const value = node2[pathChunk] = rawValue === null ? null : decoder.mapFromDriverValue(rawValue);
|
|
1583
|
-
if (joinsNotNullableMap && is(field, Column) &&
|
|
1584
|
-
const objectName =
|
|
1622
|
+
if (joinsNotNullableMap && is(field, Column) && path50.length === 2) {
|
|
1623
|
+
const objectName = path50[0];
|
|
1585
1624
|
if (!(objectName in nullifyMap)) {
|
|
1586
1625
|
nullifyMap[objectName] = value === null ? getTableName(field.table) : false;
|
|
1587
1626
|
} else if (typeof nullifyMap[objectName] === "string" && nullifyMap[objectName] !== getTableName(field.table)) {
|
|
@@ -8343,7 +8382,7 @@ var require_packageJson = __commonJS({
|
|
|
8343
8382
|
"node_modules/electron-log/src/node/packageJson.js"(exports2, module2) {
|
|
8344
8383
|
"use strict";
|
|
8345
8384
|
var fs40 = __require("fs");
|
|
8346
|
-
var
|
|
8385
|
+
var path50 = __require("path");
|
|
8347
8386
|
module2.exports = {
|
|
8348
8387
|
findAndReadPackageJson,
|
|
8349
8388
|
tryReadJsonAt
|
|
@@ -8356,7 +8395,7 @@ var require_packageJson = __commonJS({
|
|
|
8356
8395
|
return void 0;
|
|
8357
8396
|
}
|
|
8358
8397
|
try {
|
|
8359
|
-
const searchPath =
|
|
8398
|
+
const searchPath = path50.join(...searchPaths);
|
|
8360
8399
|
const fileName = findUp("package.json", searchPath);
|
|
8361
8400
|
if (!fileName) {
|
|
8362
8401
|
return void 0;
|
|
@@ -8377,11 +8416,11 @@ var require_packageJson = __commonJS({
|
|
|
8377
8416
|
function findUp(fileName, cwd) {
|
|
8378
8417
|
let currentPath = cwd;
|
|
8379
8418
|
while (true) {
|
|
8380
|
-
const parsedPath =
|
|
8419
|
+
const parsedPath = path50.parse(currentPath);
|
|
8381
8420
|
const root2 = parsedPath.root;
|
|
8382
8421
|
const dir = parsedPath.dir;
|
|
8383
|
-
if (fs40.existsSync(
|
|
8384
|
-
return
|
|
8422
|
+
if (fs40.existsSync(path50.join(currentPath, fileName))) {
|
|
8423
|
+
return path50.resolve(path50.join(currentPath, fileName));
|
|
8385
8424
|
}
|
|
8386
8425
|
if (currentPath === root2) {
|
|
8387
8426
|
return null;
|
|
@@ -8415,7 +8454,7 @@ var require_NodeExternalApi = __commonJS({
|
|
|
8415
8454
|
"use strict";
|
|
8416
8455
|
var childProcess = __require("child_process");
|
|
8417
8456
|
var os12 = __require("os");
|
|
8418
|
-
var
|
|
8457
|
+
var path50 = __require("path");
|
|
8419
8458
|
var packageJson = require_packageJson();
|
|
8420
8459
|
var NodeExternalApi = class {
|
|
8421
8460
|
appName = void 0;
|
|
@@ -8423,9 +8462,9 @@ var require_NodeExternalApi = __commonJS({
|
|
|
8423
8462
|
platform = process.platform;
|
|
8424
8463
|
getAppLogPath(appName = this.getAppName()) {
|
|
8425
8464
|
if (this.platform === "darwin") {
|
|
8426
|
-
return
|
|
8465
|
+
return path50.join(this.getSystemPathHome(), "Library/Logs", appName);
|
|
8427
8466
|
}
|
|
8428
|
-
return
|
|
8467
|
+
return path50.join(this.getAppUserDataPath(appName), "logs");
|
|
8429
8468
|
}
|
|
8430
8469
|
getAppName() {
|
|
8431
8470
|
const appName = this.appName || this.getAppPackageJson()?.name;
|
|
@@ -8447,7 +8486,7 @@ var require_NodeExternalApi = __commonJS({
|
|
|
8447
8486
|
return this.appPackageJson;
|
|
8448
8487
|
}
|
|
8449
8488
|
getAppUserDataPath(appName = this.getAppName()) {
|
|
8450
|
-
return appName ?
|
|
8489
|
+
return appName ? path50.join(this.getSystemPathAppData(), appName) : void 0;
|
|
8451
8490
|
}
|
|
8452
8491
|
getAppVersion() {
|
|
8453
8492
|
return this.getAppPackageJson()?.version;
|
|
@@ -8500,13 +8539,13 @@ var require_NodeExternalApi = __commonJS({
|
|
|
8500
8539
|
const home = this.getSystemPathHome();
|
|
8501
8540
|
switch (this.platform) {
|
|
8502
8541
|
case "darwin": {
|
|
8503
|
-
return
|
|
8542
|
+
return path50.join(home, "Library/Application Support");
|
|
8504
8543
|
}
|
|
8505
8544
|
case "win32": {
|
|
8506
|
-
return process.env.APPDATA ||
|
|
8545
|
+
return process.env.APPDATA || path50.join(home, "AppData/Roaming");
|
|
8507
8546
|
}
|
|
8508
8547
|
default: {
|
|
8509
|
-
return process.env.XDG_CONFIG_HOME ||
|
|
8548
|
+
return process.env.XDG_CONFIG_HOME || path50.join(home, ".config");
|
|
8510
8549
|
}
|
|
8511
8550
|
}
|
|
8512
8551
|
}
|
|
@@ -8591,7 +8630,7 @@ var require_NodeExternalApi = __commonJS({
|
|
|
8591
8630
|
var require_ElectronExternalApi = __commonJS({
|
|
8592
8631
|
"node_modules/electron-log/src/main/ElectronExternalApi.js"(exports2, module2) {
|
|
8593
8632
|
"use strict";
|
|
8594
|
-
var
|
|
8633
|
+
var path50 = __require("path");
|
|
8595
8634
|
var NodeExternalApi = require_NodeExternalApi();
|
|
8596
8635
|
var ElectronExternalApi = class extends NodeExternalApi {
|
|
8597
8636
|
/**
|
|
@@ -8655,7 +8694,7 @@ var require_ElectronExternalApi = __commonJS({
|
|
|
8655
8694
|
return !this.electron.app.isPackaged;
|
|
8656
8695
|
}
|
|
8657
8696
|
if (typeof process.execPath === "string") {
|
|
8658
|
-
const execFileName =
|
|
8697
|
+
const execFileName = path50.basename(process.execPath).toLowerCase();
|
|
8659
8698
|
return execFileName.startsWith("electron");
|
|
8660
8699
|
}
|
|
8661
8700
|
return super.isDev();
|
|
@@ -8759,7 +8798,7 @@ var require_initialize = __commonJS({
|
|
|
8759
8798
|
"use strict";
|
|
8760
8799
|
var fs40 = __require("fs");
|
|
8761
8800
|
var os12 = __require("os");
|
|
8762
|
-
var
|
|
8801
|
+
var path50 = __require("path");
|
|
8763
8802
|
var preloadInitializeFn = require_electron_log_preload();
|
|
8764
8803
|
var preloadInitialized = false;
|
|
8765
8804
|
var spyConsoleInitialized = false;
|
|
@@ -8806,14 +8845,14 @@ var require_initialize = __commonJS({
|
|
|
8806
8845
|
}
|
|
8807
8846
|
preloadInitialized = true;
|
|
8808
8847
|
try {
|
|
8809
|
-
preloadPath =
|
|
8848
|
+
preloadPath = path50.resolve(
|
|
8810
8849
|
__dirname,
|
|
8811
8850
|
"../renderer/electron-log-preload.js"
|
|
8812
8851
|
);
|
|
8813
8852
|
} catch {
|
|
8814
8853
|
}
|
|
8815
8854
|
if (!preloadPath || !fs40.existsSync(preloadPath)) {
|
|
8816
|
-
preloadPath =
|
|
8855
|
+
preloadPath = path50.join(
|
|
8817
8856
|
externalApi.getAppUserDataPath() || os12.tmpdir(),
|
|
8818
8857
|
"electron-log-preload.js"
|
|
8819
8858
|
);
|
|
@@ -9591,12 +9630,12 @@ var require_File = __commonJS({
|
|
|
9591
9630
|
writeOptions = null;
|
|
9592
9631
|
writeAsync = false;
|
|
9593
9632
|
constructor({
|
|
9594
|
-
path:
|
|
9633
|
+
path: path50,
|
|
9595
9634
|
writeOptions = { encoding: "utf8", flag: "a", mode: 438 },
|
|
9596
9635
|
writeAsync = false
|
|
9597
9636
|
}) {
|
|
9598
9637
|
super();
|
|
9599
|
-
this.path =
|
|
9638
|
+
this.path = path50;
|
|
9600
9639
|
this.writeOptions = writeOptions;
|
|
9601
9640
|
this.writeAsync = writeAsync;
|
|
9602
9641
|
}
|
|
@@ -9740,7 +9779,7 @@ var require_FileRegistry = __commonJS({
|
|
|
9740
9779
|
"use strict";
|
|
9741
9780
|
var EventEmitter4 = __require("events");
|
|
9742
9781
|
var fs40 = __require("fs");
|
|
9743
|
-
var
|
|
9782
|
+
var path50 = __require("path");
|
|
9744
9783
|
var File4 = require_File();
|
|
9745
9784
|
var NullFile = require_NullFile();
|
|
9746
9785
|
var FileRegistry = class extends EventEmitter4 {
|
|
@@ -9759,7 +9798,7 @@ var require_FileRegistry = __commonJS({
|
|
|
9759
9798
|
provide({ filePath, writeOptions = {}, writeAsync = false }) {
|
|
9760
9799
|
let file2;
|
|
9761
9800
|
try {
|
|
9762
|
-
filePath =
|
|
9801
|
+
filePath = path50.resolve(filePath);
|
|
9763
9802
|
if (this.store[filePath]) {
|
|
9764
9803
|
return this.store[filePath];
|
|
9765
9804
|
}
|
|
@@ -9797,7 +9836,7 @@ var require_FileRegistry = __commonJS({
|
|
|
9797
9836
|
* @private
|
|
9798
9837
|
*/
|
|
9799
9838
|
testFileWriting({ filePath, writeOptions }) {
|
|
9800
|
-
fs40.mkdirSync(
|
|
9839
|
+
fs40.mkdirSync(path50.dirname(filePath), { recursive: true });
|
|
9801
9840
|
fs40.writeFileSync(filePath, "", { flag: "a", mode: writeOptions.mode });
|
|
9802
9841
|
}
|
|
9803
9842
|
};
|
|
@@ -9811,7 +9850,7 @@ var require_file = __commonJS({
|
|
|
9811
9850
|
"use strict";
|
|
9812
9851
|
var fs40 = __require("fs");
|
|
9813
9852
|
var os12 = __require("os");
|
|
9814
|
-
var
|
|
9853
|
+
var path50 = __require("path");
|
|
9815
9854
|
var FileRegistry = require_FileRegistry();
|
|
9816
9855
|
var { transform: transform2 } = require_transform();
|
|
9817
9856
|
var { removeStyles } = require_style();
|
|
@@ -9842,9 +9881,9 @@ var require_file = __commonJS({
|
|
|
9842
9881
|
writeOptions: { flag: "a", mode: 438, encoding: "utf8" },
|
|
9843
9882
|
archiveLogFn(file2) {
|
|
9844
9883
|
const oldPath = file2.toString();
|
|
9845
|
-
const inf =
|
|
9884
|
+
const inf = path50.parse(oldPath);
|
|
9846
9885
|
try {
|
|
9847
|
-
fs40.renameSync(oldPath,
|
|
9886
|
+
fs40.renameSync(oldPath, path50.join(inf.dir, `${inf.name}.old${inf.ext}`));
|
|
9848
9887
|
} catch (e3) {
|
|
9849
9888
|
logConsole("Could not rotate log", e3);
|
|
9850
9889
|
const quarterOfMaxSize = Math.round(transport.maxSize / 4);
|
|
@@ -9852,7 +9891,7 @@ var require_file = __commonJS({
|
|
|
9852
9891
|
}
|
|
9853
9892
|
},
|
|
9854
9893
|
resolvePathFn(vars) {
|
|
9855
|
-
return
|
|
9894
|
+
return path50.join(vars.libraryDefaultDir, vars.fileName);
|
|
9856
9895
|
},
|
|
9857
9896
|
setAppName(name29) {
|
|
9858
9897
|
logger93.dependencies.externalApi.setAppName(name29);
|
|
@@ -9913,11 +9952,11 @@ var require_file = __commonJS({
|
|
|
9913
9952
|
}
|
|
9914
9953
|
function readAllLogs({ fileFilter = (f5) => f5.endsWith(".log") } = {}) {
|
|
9915
9954
|
initializeOnFirstAccess();
|
|
9916
|
-
const logsPath =
|
|
9955
|
+
const logsPath = path50.dirname(transport.resolvePathFn(pathVariables));
|
|
9917
9956
|
if (!fs40.existsSync(logsPath)) {
|
|
9918
9957
|
return [];
|
|
9919
9958
|
}
|
|
9920
|
-
return fs40.readdirSync(logsPath).map((fileName) =>
|
|
9959
|
+
return fs40.readdirSync(logsPath).map((fileName) => path50.join(logsPath, fileName)).filter(fileFilter).map((logPath) => {
|
|
9921
9960
|
try {
|
|
9922
9961
|
return {
|
|
9923
9962
|
path: logPath,
|
|
@@ -10208,570 +10247,570 @@ var init_sentry_stub = __esm({
|
|
|
10208
10247
|
}
|
|
10209
10248
|
});
|
|
10210
10249
|
|
|
10211
|
-
// raw-file:/
|
|
10250
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0000_nebulous_proemial_gods.sql
|
|
10212
10251
|
var nebulous_proemial_gods_default;
|
|
10213
10252
|
var init_nebulous_proemial_gods = __esm({
|
|
10214
|
-
"raw-file:/
|
|
10253
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0000_nebulous_proemial_gods.sql"() {
|
|
10215
10254
|
nebulous_proemial_gods_default = "CREATE TABLE `apps` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `name` text NOT NULL,\n `path` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n `github_org` text,\n `github_repo` text\n);\n--> statement-breakpoint\nCREATE TABLE `chats` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `title` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE TABLE `messages` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `chat_id` integer NOT NULL,\n `role` text NOT NULL,\n `content` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`chat_id`) REFERENCES `chats`(`id`) ON UPDATE no action ON DELETE cascade\n);\n";
|
|
10216
10255
|
}
|
|
10217
10256
|
});
|
|
10218
10257
|
|
|
10219
|
-
// raw-file:/
|
|
10258
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0001_hesitant_roland_deschain.sql
|
|
10220
10259
|
var hesitant_roland_deschain_default;
|
|
10221
10260
|
var init_hesitant_roland_deschain = __esm({
|
|
10222
|
-
"raw-file:/
|
|
10261
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0001_hesitant_roland_deschain.sql"() {
|
|
10223
10262
|
hesitant_roland_deschain_default = "ALTER TABLE `messages` ADD `approval_state` text;";
|
|
10224
10263
|
}
|
|
10225
10264
|
});
|
|
10226
10265
|
|
|
10227
|
-
// raw-file:/
|
|
10266
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0002_unique_morlocks.sql
|
|
10228
10267
|
var unique_morlocks_default;
|
|
10229
10268
|
var init_unique_morlocks = __esm({
|
|
10230
|
-
"raw-file:/
|
|
10269
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0002_unique_morlocks.sql"() {
|
|
10231
10270
|
unique_morlocks_default = "ALTER TABLE `apps` ADD `supabase_project_id` text;";
|
|
10232
10271
|
}
|
|
10233
10272
|
});
|
|
10234
10273
|
|
|
10235
|
-
// raw-file:/
|
|
10274
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0003_open_bucky.sql
|
|
10236
10275
|
var open_bucky_default;
|
|
10237
10276
|
var init_open_bucky = __esm({
|
|
10238
|
-
"raw-file:/
|
|
10277
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0003_open_bucky.sql"() {
|
|
10239
10278
|
open_bucky_default = "ALTER TABLE `messages` ADD `commit_hash` text;";
|
|
10240
10279
|
}
|
|
10241
10280
|
});
|
|
10242
10281
|
|
|
10243
|
-
// raw-file:/
|
|
10282
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0004_flawless_jigsaw.sql
|
|
10244
10283
|
var flawless_jigsaw_default;
|
|
10245
10284
|
var init_flawless_jigsaw = __esm({
|
|
10246
|
-
"raw-file:/
|
|
10285
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0004_flawless_jigsaw.sql"() {
|
|
10247
10286
|
flawless_jigsaw_default = "ALTER TABLE `chats` ADD `initial_commit_hash` text;";
|
|
10248
10287
|
}
|
|
10249
10288
|
});
|
|
10250
10289
|
|
|
10251
|
-
// raw-file:/
|
|
10290
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0005_clumsy_namor.sql
|
|
10252
10291
|
var clumsy_namor_default;
|
|
10253
10292
|
var init_clumsy_namor = __esm({
|
|
10254
|
-
"raw-file:/
|
|
10293
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0005_clumsy_namor.sql"() {
|
|
10255
10294
|
clumsy_namor_default = "CREATE TABLE `language_model_providers` (\n `id` text PRIMARY KEY NOT NULL,\n `name` text NOT NULL,\n `api_base_url` text NOT NULL,\n `env_var_name` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE TABLE `language_models` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `display_name` text NOT NULL,\n `api_name` text NOT NULL,\n `builtin_provider_id` text,\n `custom_provider_id` text,\n `description` text,\n `max_output_tokens` integer,\n `context_window` integer,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`custom_provider_id`) REFERENCES `language_model_providers`(`id`) ON UPDATE no action ON DELETE cascade\n);\n";
|
|
10256
10295
|
}
|
|
10257
10296
|
});
|
|
10258
10297
|
|
|
10259
|
-
// raw-file:/
|
|
10298
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0006_mushy_squirrel_girl.sql
|
|
10260
10299
|
var mushy_squirrel_girl_default;
|
|
10261
10300
|
var init_mushy_squirrel_girl = __esm({
|
|
10262
|
-
"raw-file:/
|
|
10301
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0006_mushy_squirrel_girl.sql"() {
|
|
10263
10302
|
mushy_squirrel_girl_default = "ALTER TABLE `apps` ADD `chat_context` text;";
|
|
10264
10303
|
}
|
|
10265
10304
|
});
|
|
10266
10305
|
|
|
10267
|
-
// raw-file:/
|
|
10306
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0007_dapper_overlord.sql
|
|
10268
10307
|
var dapper_overlord_default;
|
|
10269
10308
|
var init_dapper_overlord = __esm({
|
|
10270
|
-
"raw-file:/
|
|
10309
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0007_dapper_overlord.sql"() {
|
|
10271
10310
|
dapper_overlord_default = "ALTER TABLE `apps` ADD `github_branch` text;";
|
|
10272
10311
|
}
|
|
10273
10312
|
});
|
|
10274
10313
|
|
|
10275
|
-
// raw-file:/
|
|
10314
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0008_medical_vulcan.sql
|
|
10276
10315
|
var medical_vulcan_default;
|
|
10277
10316
|
var init_medical_vulcan = __esm({
|
|
10278
|
-
"raw-file:/
|
|
10317
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0008_medical_vulcan.sql"() {
|
|
10279
10318
|
medical_vulcan_default = "ALTER TABLE `apps` ADD `vercel_project_id` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `vercel_project_name` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `vercel_team_id` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `vercel_deployment_url` text;";
|
|
10280
10319
|
}
|
|
10281
10320
|
});
|
|
10282
10321
|
|
|
10283
|
-
// raw-file:/
|
|
10322
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0009_previous_misty_knight.sql
|
|
10284
10323
|
var previous_misty_knight_default;
|
|
10285
10324
|
var init_previous_misty_knight = __esm({
|
|
10286
|
-
"raw-file:/
|
|
10325
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0009_previous_misty_knight.sql"() {
|
|
10287
10326
|
previous_misty_knight_default = "CREATE TABLE `versions` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `commit_hash` text NOT NULL,\n `neon_db_timestamp` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `versions_app_commit_unique` ON `versions` (`app_id`,`commit_hash`);--> statement-breakpoint\nALTER TABLE `apps` ADD `neon_project_id` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `neon_development_branch_id` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `neon_preview_branch_id` text;";
|
|
10288
10327
|
}
|
|
10289
10328
|
});
|
|
10290
10329
|
|
|
10291
|
-
// raw-file:/
|
|
10330
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0010_nappy_fat_cobra.sql
|
|
10292
10331
|
var nappy_fat_cobra_default;
|
|
10293
10332
|
var init_nappy_fat_cobra = __esm({
|
|
10294
|
-
"raw-file:/
|
|
10333
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0010_nappy_fat_cobra.sql"() {
|
|
10295
10334
|
nappy_fat_cobra_default = "ALTER TABLE `apps` ADD `install_command` text;--> statement-breakpoint\nALTER TABLE `apps` ADD `start_command` text;\n";
|
|
10296
10335
|
}
|
|
10297
10336
|
});
|
|
10298
10337
|
|
|
10299
|
-
// raw-file:/
|
|
10338
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0011_light_zeigeist.sql
|
|
10300
10339
|
var light_zeigeist_default;
|
|
10301
10340
|
var init_light_zeigeist = __esm({
|
|
10302
|
-
"raw-file:/
|
|
10341
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0011_light_zeigeist.sql"() {
|
|
10303
10342
|
light_zeigeist_default = "CREATE TABLE `prompts` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `title` text NOT NULL,\n `description` text,\n `content` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n";
|
|
10304
10343
|
}
|
|
10305
10344
|
});
|
|
10306
10345
|
|
|
10307
|
-
// raw-file:/
|
|
10346
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0012_bouncy_fenris.sql
|
|
10308
10347
|
var bouncy_fenris_default;
|
|
10309
10348
|
var init_bouncy_fenris = __esm({
|
|
10310
|
-
"raw-file:/
|
|
10349
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0012_bouncy_fenris.sql"() {
|
|
10311
10350
|
bouncy_fenris_default = "CREATE TABLE `mcp_servers` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `name` text NOT NULL,\n `transport` text NOT NULL,\n `command` text,\n `args` text,\n `env_json` text,\n `url` text,\n `enabled` integer DEFAULT 0 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE TABLE `mcp_tool_consents` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `server_id` integer NOT NULL,\n `tool_name` text NOT NULL,\n `consent` text DEFAULT 'ask' NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`server_id`) REFERENCES `mcp_servers`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `uniq_mcp_consent` ON `mcp_tool_consents` (`server_id`,`tool_name`);";
|
|
10312
10351
|
}
|
|
10313
10352
|
});
|
|
10314
10353
|
|
|
10315
|
-
// raw-file:/
|
|
10354
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0013_damp_mephistopheles.sql
|
|
10316
10355
|
var damp_mephistopheles_default;
|
|
10317
10356
|
var init_damp_mephistopheles = __esm({
|
|
10318
|
-
"raw-file:/
|
|
10357
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0013_damp_mephistopheles.sql"() {
|
|
10319
10358
|
damp_mephistopheles_default = "ALTER TABLE `apps` ADD `is_favorite` integer DEFAULT 0 NOT NULL;";
|
|
10320
10359
|
}
|
|
10321
10360
|
});
|
|
10322
10361
|
|
|
10323
|
-
// raw-file:/
|
|
10362
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0014_needy_vertigo.sql
|
|
10324
10363
|
var needy_vertigo_default;
|
|
10325
10364
|
var init_needy_vertigo = __esm({
|
|
10326
|
-
"raw-file:/
|
|
10365
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0014_needy_vertigo.sql"() {
|
|
10327
10366
|
needy_vertigo_default = "ALTER TABLE `messages` ADD `request_id` text;";
|
|
10328
10367
|
}
|
|
10329
10368
|
});
|
|
10330
10369
|
|
|
10331
|
-
// raw-file:/
|
|
10370
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0015_complete_old_lace.sql
|
|
10332
10371
|
var complete_old_lace_default;
|
|
10333
10372
|
var init_complete_old_lace = __esm({
|
|
10334
|
-
"raw-file:/
|
|
10373
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0015_complete_old_lace.sql"() {
|
|
10335
10374
|
complete_old_lace_default = "ALTER TABLE `apps` ADD `supabase_parent_project_id` text;";
|
|
10336
10375
|
}
|
|
10337
10376
|
});
|
|
10338
10377
|
|
|
10339
|
-
// raw-file:/
|
|
10378
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0016_petite_thanos.sql
|
|
10340
10379
|
var petite_thanos_default;
|
|
10341
10380
|
var init_petite_thanos = __esm({
|
|
10342
|
-
"raw-file:/
|
|
10381
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0016_petite_thanos.sql"() {
|
|
10343
10382
|
petite_thanos_default = "ALTER TABLE `messages` ADD `source_commit_hash` text;";
|
|
10344
10383
|
}
|
|
10345
10384
|
});
|
|
10346
10385
|
|
|
10347
|
-
// raw-file:/
|
|
10386
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0017_sharp_corsair.sql
|
|
10348
10387
|
var sharp_corsair_default;
|
|
10349
10388
|
var init_sharp_corsair = __esm({
|
|
10350
|
-
"raw-file:/
|
|
10389
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0017_sharp_corsair.sql"() {
|
|
10351
10390
|
sharp_corsair_default = "ALTER TABLE `messages` ADD `max_tokens_used` integer;";
|
|
10352
10391
|
}
|
|
10353
10392
|
});
|
|
10354
10393
|
|
|
10355
|
-
// raw-file:/
|
|
10394
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0018_slim_rictor.sql
|
|
10356
10395
|
var slim_rictor_default;
|
|
10357
10396
|
var init_slim_rictor = __esm({
|
|
10358
|
-
"raw-file:/
|
|
10397
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0018_slim_rictor.sql"() {
|
|
10359
10398
|
slim_rictor_default = "CREATE TABLE `provider_api_keys` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `provider_id` text NOT NULL,\n `api_key` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `provider_api_keys_provider_id_unique` ON `provider_api_keys` (`provider_id`);";
|
|
10360
10399
|
}
|
|
10361
10400
|
});
|
|
10362
10401
|
|
|
10363
|
-
// raw-file:/
|
|
10402
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0019_pale_aqueduct.sql
|
|
10364
10403
|
var pale_aqueduct_default;
|
|
10365
10404
|
var init_pale_aqueduct = __esm({
|
|
10366
|
-
"raw-file:/
|
|
10405
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0019_pale_aqueduct.sql"() {
|
|
10367
10406
|
pale_aqueduct_default = "CREATE TABLE `openrouter_favorites` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `model_id` text NOT NULL,\n `display_order` integer NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `openrouter_favorites_model_id_unique` ON `openrouter_favorites` (`model_id`);";
|
|
10368
10407
|
}
|
|
10369
10408
|
});
|
|
10370
10409
|
|
|
10371
|
-
// raw-file:/
|
|
10410
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0020_luxuriant_exiles.sql
|
|
10372
10411
|
var luxuriant_exiles_default;
|
|
10373
10412
|
var init_luxuriant_exiles = __esm({
|
|
10374
|
-
"raw-file:/
|
|
10413
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0020_luxuriant_exiles.sql"() {
|
|
10375
10414
|
luxuriant_exiles_default = "CREATE TABLE `cleanup_log` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `cleanup_date` integer DEFAULT (unixepoch()) NOT NULL,\n `sessions_deleted` integer DEFAULT 0 NOT NULL,\n `modifications_summarized` integer DEFAULT 0 NOT NULL\n);\n--> statement-breakpoint\nCREATE TABLE `workspace_modifications` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_path` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `last_used_at` integer DEFAULT (unixepoch()) NOT NULL,\n `is_summary` integer DEFAULT 0 NOT NULL,\n `summary_of_period` text,\n `todo_reference` text,\n `files_modified` text,\n `changes_description` text,\n `ai_summary` text\n);\n--> statement-breakpoint\nALTER TABLE `chats` ADD `last_used_at` integer DEFAULT (unixepoch()) NOT NULL;";
|
|
10376
10415
|
}
|
|
10377
10416
|
});
|
|
10378
10417
|
|
|
10379
|
-
// raw-file:/
|
|
10418
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0021_search_providers.sql
|
|
10380
10419
|
var search_providers_default;
|
|
10381
10420
|
var init_search_providers = __esm({
|
|
10382
|
-
"raw-file:/
|
|
10421
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0021_search_providers.sql"() {
|
|
10383
10422
|
search_providers_default = "CREATE TABLE `search_providers` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `provider` text NOT NULL,\n `enabled` integer DEFAULT 0 NOT NULL,\n `config` text,\n `priority` integer DEFAULT 0 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `search_providers_provider_unique` ON `search_providers` (`provider`);\n";
|
|
10384
10423
|
}
|
|
10385
10424
|
});
|
|
10386
10425
|
|
|
10387
|
-
// raw-file:/
|
|
10426
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0022_add_diagrams.sql
|
|
10388
10427
|
var add_diagrams_default;
|
|
10389
10428
|
var init_add_diagrams = __esm({
|
|
10390
|
-
"raw-file:/
|
|
10429
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0022_add_diagrams.sql"() {
|
|
10391
10430
|
add_diagrams_default = '-- Create diagrams table FIRST (diagram_versions references it)\nCREATE TABLE IF NOT EXISTS `diagrams` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer,\n `chat_id` integer,\n `type` text NOT NULL,\n `title` text NOT NULL,\n `content` text NOT NULL,\n `metadata` text,\n `fingerprint_hash` text,\n `fingerprint_data` text,\n `created_from_file_count` integer,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`workspace_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade,\n FOREIGN KEY (`chat_id`) REFERENCES `chats`(`id`) ON UPDATE no action ON DELETE set null\n);\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `diagram_versions` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `diagram_id` integer NOT NULL,\n `content` text NOT NULL,\n `change_description` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`diagram_id`) REFERENCES `diagrams`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `search_providers` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `provider` text NOT NULL,\n `enabled` integer DEFAULT 0 NOT NULL,\n `config` text,\n `priority` integer DEFAULT 0 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX IF NOT EXISTS `search_providers_provider_unique` ON `search_providers` (`provider`);--> statement-breakpoint\nPRAGMA foreign_keys=OFF;--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `__new_chats` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer,\n `title` text,\n `initial_commit_hash` text,\n `last_used_at` integer DEFAULT (unixepoch()) NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nINSERT OR IGNORE INTO `__new_chats`("id", "app_id", "title", "initial_commit_hash", "last_used_at", "created_at") SELECT "id", "app_id", "title", "initial_commit_hash", "last_used_at", "created_at" FROM `chats`;--> statement-breakpoint\nDROP TABLE IF EXISTS `chats`;--> statement-breakpoint\nALTER TABLE `__new_chats` RENAME TO `chats`;--> statement-breakpoint\nPRAGMA foreign_keys=ON;';
|
|
10392
10431
|
}
|
|
10393
10432
|
});
|
|
10394
10433
|
|
|
10395
|
-
// raw-file:/
|
|
10434
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0023_faulty_diamondback.sql
|
|
10396
10435
|
var faulty_diamondback_default;
|
|
10397
10436
|
var init_faulty_diamondback = __esm({
|
|
10398
|
-
"raw-file:/
|
|
10437
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0023_faulty_diamondback.sql"() {
|
|
10399
10438
|
faulty_diamondback_default = "CREATE TABLE `daily_logs` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL,\n `date` integer DEFAULT (unixepoch()) NOT NULL,\n `micro_changes` text,\n `significant_actions` text,\n `files_touched` text,\n `diagram_changed` integer DEFAULT 0 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`workspace_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE TABLE `workspace_diagrams` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `architecture` text NOT NULL,\n `dependencies` text,\n `flows` text,\n `trigger` text NOT NULL,\n `summary` text,\n `annotation` text,\n `files_changed` text,\n `hash` text NOT NULL,\n `protected` integer DEFAULT 0 NOT NULL,\n `compressed` integer DEFAULT 0 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE INDEX `workspace_diagrams_app_id_created_at_idx` ON `workspace_diagrams` (`app_id`,`created_at`);--> statement-breakpoint\nALTER TABLE `apps` ADD `preferred_diagram_type` text DEFAULT 'architecture';--> statement-breakpoint\nALTER TABLE `diagram_versions` ADD `trigger` text;--> statement-breakpoint\nALTER TABLE `diagram_versions` ADD `summary` text;";
|
|
10400
10439
|
}
|
|
10401
10440
|
});
|
|
10402
10441
|
|
|
10403
|
-
// raw-file:/
|
|
10442
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0024_workspace_snapshots.sql
|
|
10404
10443
|
var workspace_snapshots_default;
|
|
10405
10444
|
var init_workspace_snapshots = __esm({
|
|
10406
|
-
"raw-file:/
|
|
10445
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0024_workspace_snapshots.sql"() {
|
|
10407
10446
|
workspace_snapshots_default = "CREATE TABLE `workspace_snapshots` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `name` text NOT NULL,\n `files_json` text NOT NULL,\n `prompt_content` text,\n `diagram_content` text,\n `chat_messages_json` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE INDEX `workspace_snapshots_app_id_idx` ON `workspace_snapshots` (`app_id`);\n";
|
|
10408
10447
|
}
|
|
10409
10448
|
});
|
|
10410
10449
|
|
|
10411
|
-
// raw-file:/
|
|
10450
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0025_chat_context_summaries.sql
|
|
10412
10451
|
var chat_context_summaries_default;
|
|
10413
10452
|
var init_chat_context_summaries = __esm({
|
|
10414
|
-
"raw-file:/
|
|
10453
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0025_chat_context_summaries.sql"() {
|
|
10415
10454
|
chat_context_summaries_default = "CREATE TABLE `chat_context_summaries` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `chat_id` integer NOT NULL UNIQUE,\n `summary_text` text NOT NULL,\n `last_message_id` integer NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`chat_id`) REFERENCES `chats`(`id`) ON UPDATE no action ON DELETE cascade\n);\n";
|
|
10416
10455
|
}
|
|
10417
10456
|
});
|
|
10418
10457
|
|
|
10419
|
-
// raw-file:/
|
|
10458
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0026_mcp_workspace_scope.sql
|
|
10420
10459
|
var mcp_workspace_scope_default;
|
|
10421
10460
|
var init_mcp_workspace_scope = __esm({
|
|
10422
|
-
"raw-file:/
|
|
10461
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0026_mcp_workspace_scope.sql"() {
|
|
10423
10462
|
mcp_workspace_scope_default = "-- MCP workspace scope: global vs per-workspace (5 max global, 5 max per workspace)\nALTER TABLE mcp_servers ADD COLUMN scope TEXT NOT NULL DEFAULT 'global';\nALTER TABLE mcp_servers ADD COLUMN app_id INTEGER;\n";
|
|
10424
10463
|
}
|
|
10425
10464
|
});
|
|
10426
10465
|
|
|
10427
|
-
// raw-file:/
|
|
10466
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0027_workflow_templates.sql
|
|
10428
10467
|
var workflow_templates_default;
|
|
10429
10468
|
var init_workflow_templates = __esm({
|
|
10430
|
-
"raw-file:/
|
|
10469
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0027_workflow_templates.sql"() {
|
|
10431
10470
|
workflow_templates_default = "-- Atlaflow template library: save/load named workflow templates\nCREATE TABLE IF NOT EXISTS `workflow_templates` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `name` text NOT NULL,\n `description` text,\n `workflow` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n";
|
|
10432
10471
|
}
|
|
10433
10472
|
});
|
|
10434
10473
|
|
|
10435
|
-
// raw-file:/
|
|
10474
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0028_blueprints.sql
|
|
10436
10475
|
var blueprints_default;
|
|
10437
10476
|
var init_blueprints = __esm({
|
|
10438
|
-
"raw-file:/
|
|
10477
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0028_blueprints.sql"() {
|
|
10439
10478
|
blueprints_default = "-- Phase 7 Additive Blueprint: one blueprint per workspace (rooms, edges, functions)\nCREATE TABLE IF NOT EXISTS `blueprints` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES apps(id) ON DELETE CASCADE,\n `content` text NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\nCREATE UNIQUE INDEX IF NOT EXISTS `blueprints_workspace_unique` ON `blueprints` (`workspace_id`);\n";
|
|
10440
10479
|
}
|
|
10441
10480
|
});
|
|
10442
10481
|
|
|
10443
|
-
// raw-file:/
|
|
10482
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0029_v39_clarify_revert.sql
|
|
10444
10483
|
var v39_clarify_revert_default;
|
|
10445
10484
|
var init_v39_clarify_revert = __esm({
|
|
10446
|
-
"raw-file:/
|
|
10485
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0029_v39_clarify_revert.sql"() {
|
|
10447
10486
|
v39_clarify_revert_default = "-- v3.9: clarifying questions, conversation revert, message edit, stream tools\nALTER TABLE `chats` ADD `has_answered_questions` integer NOT NULL DEFAULT 0;\n--> statement-breakpoint\nALTER TABLE `messages` ADD `exchange_index` integer DEFAULT 0;\n--> statement-breakpoint\nALTER TABLE `messages` ADD `snapshot_id` integer;\n--> statement-breakpoint\nALTER TABLE `messages` ADD `files_written` text;\n";
|
|
10448
10487
|
}
|
|
10449
10488
|
});
|
|
10450
10489
|
|
|
10451
|
-
// raw-file:/
|
|
10490
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0030_v40_tool_session_loads.sql
|
|
10452
10491
|
var v40_tool_session_loads_default;
|
|
10453
10492
|
var init_v40_tool_session_loads = __esm({
|
|
10454
|
-
"raw-file:/
|
|
10493
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0030_v40_tool_session_loads.sql"() {
|
|
10455
10494
|
v40_tool_session_loads_default = "-- v4.0: Tool session tracking (analytics - which tools get discovered and used)\nCREATE TABLE IF NOT EXISTS `tool_session_loads` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `chat_id` integer NOT NULL REFERENCES chats(id) ON DELETE CASCADE,\n `tool_name` text NOT NULL,\n `first_called_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `tool_session_loads_chat_id_idx` ON `tool_session_loads` (`chat_id`);\n";
|
|
10456
10495
|
}
|
|
10457
10496
|
});
|
|
10458
10497
|
|
|
10459
|
-
// raw-file:/
|
|
10498
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0031_project_memory.sql
|
|
10460
10499
|
var project_memory_default;
|
|
10461
10500
|
var init_project_memory = __esm({
|
|
10462
|
-
"raw-file:/
|
|
10501
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0031_project_memory.sql"() {
|
|
10463
10502
|
project_memory_default = "-- v5.0 Section 2: Project memory\nCREATE TABLE IF NOT EXISTS `project_snapshots` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES apps(id) ON DELETE CASCADE,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `blueprint_json` text NOT NULL,\n `plan_md` text,\n `diagram_mermaid` text,\n `git_commit_hash` text,\n `session_summary` text,\n `trigger` text NOT NULL\n);\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `project_snapshots_workspace_created_idx` ON `project_snapshots` (`workspace_id`, `created_at`);\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `project_memory` (\n `workspace_id` integer NOT NULL REFERENCES apps(id) ON DELETE CASCADE,\n `key` text NOT NULL,\n `value` text NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n PRIMARY KEY (`workspace_id`, `key`)\n);\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `project_memory_workspace_idx` ON `project_memory` (`workspace_id`);\n";
|
|
10464
10503
|
}
|
|
10465
10504
|
});
|
|
10466
10505
|
|
|
10467
|
-
// raw-file:/
|
|
10506
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0032_pivot_tables.sql
|
|
10468
10507
|
var pivot_tables_default;
|
|
10469
10508
|
var init_pivot_tables = __esm({
|
|
10470
|
-
"raw-file:/
|
|
10509
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0032_pivot_tables.sql"() {
|
|
10471
10510
|
pivot_tables_default = "CREATE TABLE IF NOT EXISTS `pivot_nodes` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES `apps`(`id`) ON DELETE CASCADE,\n `external_id` text NOT NULL,\n `type` text NOT NULL,\n `label` text NOT NULL,\n `file_path` text NOT NULL,\n `range_start` integer,\n `range_end` integer,\n `metadata` text\n);\n\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `pivot_nodes_workspace_idx` ON `pivot_nodes` (`workspace_id`);\n\n--> statement-breakpoint\nCREATE UNIQUE INDEX IF NOT EXISTS `pivot_nodes_workspace_external_unique` ON `pivot_nodes` (`workspace_id`, `external_id`);\n\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `pivot_edges` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES `apps`(`id`) ON DELETE CASCADE,\n `from_id` text NOT NULL,\n `to_id` text NOT NULL,\n `type` text NOT NULL,\n `metadata` text\n);\n\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `pivot_edges_workspace_idx` ON `pivot_edges` (`workspace_id`);\n\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `pivot_containers` (\n `id` text PRIMARY KEY NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES `apps`(`id`) ON DELETE CASCADE,\n `label` text NOT NULL,\n `intent` text,\n `position` text,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `pivot_beacons` (\n `id` text PRIMARY KEY NOT NULL,\n `container_id` text NOT NULL REFERENCES `pivot_containers`(`id`) ON DELETE CASCADE,\n `label` text NOT NULL,\n `kind` text NOT NULL,\n `description` text,\n `file_path` text,\n `position` text\n);\n\n--> statement-breakpoint\nCREATE TABLE IF NOT EXISTS `blueprint_snapshots` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL REFERENCES `apps`(`id`) ON DELETE CASCADE,\n `snapshot_at` integer DEFAULT (unixepoch()) NOT NULL,\n `blueprint_json` text NOT NULL,\n `source` text NOT NULL\n);\n\n--> statement-breakpoint\nCREATE INDEX IF NOT EXISTS `blueprint_snapshots_workspace_idx` ON `blueprint_snapshots` (`workspace_id`);\n";
|
|
10472
10511
|
}
|
|
10473
10512
|
});
|
|
10474
10513
|
|
|
10475
|
-
// raw-file:/
|
|
10514
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0033_rename_type_columns.sql
|
|
10476
10515
|
var rename_type_columns_default;
|
|
10477
10516
|
var init_rename_type_columns = __esm({
|
|
10478
|
-
"raw-file:/
|
|
10517
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0033_rename_type_columns.sql"() {
|
|
10479
10518
|
rename_type_columns_default = "-- pivot_nodes: type -> node_type\nALTER TABLE pivot_nodes RENAME COLUMN type TO node_type;\n\n--> statement-breakpoint\n\n-- pivot_edges: type -> edge_type\nALTER TABLE pivot_edges RENAME COLUMN type TO edge_type;\n\n--> statement-breakpoint\n\n-- diagrams: type -> diagram_type\nALTER TABLE diagrams RENAME COLUMN type TO diagram_type;\n";
|
|
10480
10519
|
}
|
|
10481
10520
|
});
|
|
10482
10521
|
|
|
10483
|
-
// raw-file:/
|
|
10522
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0034_prompts_new_schema.sql
|
|
10484
10523
|
var prompts_new_schema_default;
|
|
10485
10524
|
var init_prompts_new_schema = __esm({
|
|
10486
|
-
"raw-file:/
|
|
10525
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0034_prompts_new_schema.sql"() {
|
|
10487
10526
|
prompts_new_schema_default = "-- Migrate prompts table from old schema (title, description) to new schema (type, workspace_id)\nCREATE TABLE `prompts_new` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `type` text NOT NULL DEFAULT 'global',\n `workspace_id` integer,\n `content` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n\n--> statement-breakpoint\n\nINSERT INTO `prompts_new` (`id`, `type`, `workspace_id`, `content`, `created_at`, `updated_at`)\nSELECT `id`, 'global', NULL, `content`, `created_at`, `updated_at`\nFROM `prompts`;\n\n--> statement-breakpoint\n\nDROP TABLE `prompts`;\n\n--> statement-breakpoint\n\nALTER TABLE `prompts_new` RENAME TO `prompts`;\n\n--> statement-breakpoint\n\nCREATE UNIQUE INDEX IF NOT EXISTS `prompts_workspace_unique` ON `prompts` (`workspace_id`);\n";
|
|
10488
10527
|
}
|
|
10489
10528
|
});
|
|
10490
10529
|
|
|
10491
|
-
// raw-file:/
|
|
10530
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0035_unified_snapshots_revert.sql
|
|
10492
10531
|
var unified_snapshots_revert_default;
|
|
10493
10532
|
var init_unified_snapshots_revert = __esm({
|
|
10494
|
-
"raw-file:/
|
|
10533
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0035_unified_snapshots_revert.sql"() {
|
|
10495
10534
|
unified_snapshots_revert_default = "-- Unified snapshots: diagram version turn linkage, workspace file-hash manifest, message revert UI flag\nALTER TABLE `diagram_versions` ADD COLUMN `chat_turn_id` text;\n\n--> statement-breakpoint\n\nALTER TABLE `diagrams` ADD COLUMN `last_snapshot_hashes` text;\n\n--> statement-breakpoint\n\nALTER TABLE `messages` ADD COLUMN `is_reverted` integer DEFAULT 0 NOT NULL;\n";
|
|
10496
10535
|
}
|
|
10497
10536
|
});
|
|
10498
10537
|
|
|
10499
|
-
// raw-file:/
|
|
10538
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0036_auto_routed_tier.sql
|
|
10500
10539
|
var auto_routed_tier_default;
|
|
10501
10540
|
var init_auto_routed_tier = __esm({
|
|
10502
|
-
"raw-file:/
|
|
10541
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0036_auto_routed_tier.sql"() {
|
|
10503
10542
|
auto_routed_tier_default = "ALTER TABLE `messages` ADD COLUMN `auto_routed_tier` text;\n";
|
|
10504
10543
|
}
|
|
10505
10544
|
});
|
|
10506
10545
|
|
|
10507
|
-
// raw-file:/
|
|
10546
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0037_compaction_nested_and_synthetic.sql
|
|
10508
10547
|
var compaction_nested_and_synthetic_default;
|
|
10509
10548
|
var init_compaction_nested_and_synthetic = __esm({
|
|
10510
|
-
"raw-file:/
|
|
10549
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0037_compaction_nested_and_synthetic.sql"() {
|
|
10511
10550
|
compaction_nested_and_synthetic_default = "ALTER TABLE `chat_context_summaries` ADD COLUMN `compaction_generation` integer DEFAULT 0 NOT NULL;\nALTER TABLE `messages` ADD COLUMN `is_synthetic` integer DEFAULT 0 NOT NULL;\n";
|
|
10512
10551
|
}
|
|
10513
10552
|
});
|
|
10514
10553
|
|
|
10515
|
-
// raw-file:/
|
|
10554
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0038_counsel_sessions.sql
|
|
10516
10555
|
var counsel_sessions_default;
|
|
10517
10556
|
var init_counsel_sessions = __esm({
|
|
10518
|
-
"raw-file:/
|
|
10557
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0038_counsel_sessions.sql"() {
|
|
10519
10558
|
counsel_sessions_default = "CREATE TABLE `counsel_sessions` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `session_id` text NOT NULL,\n `chat_id` integer NOT NULL,\n `turn_id` text NOT NULL,\n `trigger` text NOT NULL,\n `mode` text NOT NULL,\n `question` text NOT NULL,\n `fast_response` text,\n `balanced_response` text,\n `thinking_response` text,\n `synthesis` text,\n `status` text NOT NULL,\n `created_at` integer NOT NULL,\n `completed_at` integer\n);\n";
|
|
10520
10559
|
}
|
|
10521
10560
|
});
|
|
10522
10561
|
|
|
10523
|
-
// raw-file:/
|
|
10562
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0039_atlarix_hooks.sql
|
|
10524
10563
|
var atlarix_hooks_default;
|
|
10525
10564
|
var init_atlarix_hooks = __esm({
|
|
10526
|
-
"raw-file:/
|
|
10565
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0039_atlarix_hooks.sql"() {
|
|
10527
10566
|
atlarix_hooks_default = "CREATE TABLE `atlarix_hooks` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `name` text NOT NULL,\n `trigger` text NOT NULL,\n `command` text NOT NULL,\n `args_json` text,\n `workspace_id` integer,\n `enabled` integer DEFAULT 1 NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n";
|
|
10528
10567
|
}
|
|
10529
10568
|
});
|
|
10530
10569
|
|
|
10531
|
-
// raw-file:/
|
|
10570
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0040_custom_commands.sql
|
|
10532
10571
|
var custom_commands_default;
|
|
10533
10572
|
var init_custom_commands = __esm({
|
|
10534
|
-
"raw-file:/
|
|
10573
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0040_custom_commands.sql"() {
|
|
10535
10574
|
custom_commands_default = "CREATE TABLE `custom_commands` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `name` text NOT NULL,\n `prompt_template` text NOT NULL,\n `mode_override` text,\n `workspace_id` integer,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL\n);\n\nCREATE UNIQUE INDEX `custom_commands_name_workspace` ON `custom_commands` (`name`, COALESCE(`workspace_id`, -1));\n";
|
|
10536
10575
|
}
|
|
10537
10576
|
});
|
|
10538
10577
|
|
|
10539
|
-
// raw-file:/
|
|
10578
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0041_drop_diagram_versions.sql
|
|
10540
10579
|
var drop_diagram_versions_default;
|
|
10541
10580
|
var init_drop_diagram_versions = __esm({
|
|
10542
|
-
"raw-file:/
|
|
10581
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0041_drop_diagram_versions.sql"() {
|
|
10543
10582
|
drop_diagram_versions_default = "DROP TABLE IF EXISTS diagram_versions;\n";
|
|
10544
10583
|
}
|
|
10545
10584
|
});
|
|
10546
10585
|
|
|
10547
|
-
// raw-file:/
|
|
10586
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0042_installed_skills.sql
|
|
10548
10587
|
var installed_skills_default;
|
|
10549
10588
|
var init_installed_skills = __esm({
|
|
10550
|
-
"raw-file:/
|
|
10589
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0042_installed_skills.sql"() {
|
|
10551
10590
|
installed_skills_default = "-- Custom SQL migration file, put your code below! --\n\nCREATE TABLE `installed_skills` (\n `id` text NOT NULL,\n `name` text NOT NULL,\n `version` text NOT NULL,\n `author` text NOT NULL,\n `description` text NOT NULL,\n `tags` text NOT NULL,\n `compatible_modes` text NOT NULL,\n `installed_at` integer NOT NULL,\n `scope` text NOT NULL,\n `workspace_path` text,\n `cached_files` text NOT NULL,\n PRIMARY KEY(`id`, `scope`, `workspace_path`)\n);\n";
|
|
10552
10591
|
}
|
|
10553
10592
|
});
|
|
10554
10593
|
|
|
10555
|
-
// raw-file:/
|
|
10594
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0043_mcp_registry_columns.sql
|
|
10556
10595
|
var mcp_registry_columns_default;
|
|
10557
10596
|
var init_mcp_registry_columns = __esm({
|
|
10558
|
-
"raw-file:/
|
|
10597
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0043_mcp_registry_columns.sql"() {
|
|
10559
10598
|
mcp_registry_columns_default = '-- Pass 7 \u2014 MCP marketplace: track entries that were installed from the\n-- registry so the UI can show a "from marketplace" badge and offer one-click\n-- removal / reconfigure.\n\nALTER TABLE `mcp_servers` ADD COLUMN `from_registry` integer NOT NULL DEFAULT 0;--> statement-breakpoint\nALTER TABLE `mcp_servers` ADD COLUMN `registry_id` text;\n';
|
|
10560
10599
|
}
|
|
10561
10600
|
});
|
|
10562
10601
|
|
|
10563
|
-
// raw-file:/
|
|
10602
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0044_messages_work_mode.sql
|
|
10564
10603
|
var messages_work_mode_default;
|
|
10565
10604
|
var init_messages_work_mode = __esm({
|
|
10566
|
-
"raw-file:/
|
|
10605
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0044_messages_work_mode.sql"() {
|
|
10567
10606
|
messages_work_mode_default = "ALTER TABLE `messages` ADD `work_mode` text;\n";
|
|
10568
10607
|
}
|
|
10569
10608
|
});
|
|
10570
10609
|
|
|
10571
|
-
// raw-file:/
|
|
10610
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0045_chat_sessions.sql
|
|
10572
10611
|
var chat_sessions_default;
|
|
10573
10612
|
var init_chat_sessions = __esm({
|
|
10574
|
-
"raw-file:/
|
|
10613
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0045_chat_sessions.sql"() {
|
|
10575
10614
|
chat_sessions_default = "CREATE TABLE `chat_sessions` (\n `id` text PRIMARY KEY NOT NULL,\n `workspace_id` integer NOT NULL,\n `title` text DEFAULT 'New session' NOT NULL,\n `created_at` integer NOT NULL,\n `updated_at` integer NOT NULL,\n FOREIGN KEY (`workspace_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE TABLE `session_messages` (\n `id` text PRIMARY KEY NOT NULL,\n `session_id` text NOT NULL,\n `role` text NOT NULL,\n `content` text NOT NULL,\n `created_at` integer NOT NULL,\n FOREIGN KEY (`session_id`) REFERENCES `chat_sessions`(`id`) ON UPDATE no action ON DELETE cascade\n);\n";
|
|
10576
10615
|
}
|
|
10577
10616
|
});
|
|
10578
10617
|
|
|
10579
|
-
// raw-file:/
|
|
10618
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0046_mcp_api_key.sql
|
|
10580
10619
|
var mcp_api_key_default;
|
|
10581
10620
|
var init_mcp_api_key = __esm({
|
|
10582
|
-
"raw-file:/
|
|
10621
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0046_mcp_api_key.sql"() {
|
|
10583
10622
|
mcp_api_key_default = "ALTER TABLE `mcp_servers` ADD `api_key` text;\n";
|
|
10584
10623
|
}
|
|
10585
10624
|
});
|
|
10586
10625
|
|
|
10587
|
-
// raw-file:/
|
|
10626
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0047_drop_blueprints_table.sql
|
|
10588
10627
|
var drop_blueprints_table_default;
|
|
10589
10628
|
var init_drop_blueprints_table = __esm({
|
|
10590
|
-
"raw-file:/
|
|
10629
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0047_drop_blueprints_table.sql"() {
|
|
10591
10630
|
drop_blueprints_table_default = "-- Unused legacy table: blueprint state lives in ~/.atlarix/blueprints/ cache + user_blueprint.json\nDROP TABLE IF EXISTS `blueprints`;\n";
|
|
10592
10631
|
}
|
|
10593
10632
|
});
|
|
10594
10633
|
|
|
10595
|
-
// raw-file:/
|
|
10634
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0048_session_plan_artifacts.sql
|
|
10596
10635
|
var session_plan_artifacts_default;
|
|
10597
10636
|
var init_session_plan_artifacts = __esm({
|
|
10598
|
-
"raw-file:/
|
|
10637
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0048_session_plan_artifacts.sql"() {
|
|
10599
10638
|
session_plan_artifacts_default = "ALTER TABLE `session_messages` ADD COLUMN `kind` text NOT NULL DEFAULT 'message';\nALTER TABLE `session_messages` ADD COLUMN `plan_status` text;\n";
|
|
10600
10639
|
}
|
|
10601
10640
|
});
|
|
10602
10641
|
|
|
10603
|
-
// raw-file:/
|
|
10642
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0049_workspace_only_remote.sql
|
|
10604
10643
|
var workspace_only_remote_default;
|
|
10605
10644
|
var init_workspace_only_remote = __esm({
|
|
10606
|
-
"raw-file:/
|
|
10645
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0049_workspace_only_remote.sql"() {
|
|
10607
10646
|
workspace_only_remote_default = "DELETE FROM mcp_servers WHERE scope = 'global';\n--> statement-breakpoint\nDELETE FROM installed_skills WHERE scope = 'global';\n--> statement-breakpoint\nDELETE FROM prompts WHERE type = 'global';\n--> statement-breakpoint\nALTER TABLE apps ADD COLUMN last_opened_at INTEGER;\n--> statement-breakpoint\nALTER TABLE apps ADD COLUMN workspace_kind TEXT NOT NULL DEFAULT 'local';\n--> statement-breakpoint\nALTER TABLE apps ADD COLUMN remote_connection TEXT;\n";
|
|
10608
10647
|
}
|
|
10609
10648
|
});
|
|
10610
10649
|
|
|
10611
|
-
// raw-file:/
|
|
10650
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0050_drop_prompts_table.sql
|
|
10612
10651
|
var drop_prompts_table_default;
|
|
10613
10652
|
var init_drop_prompts_table = __esm({
|
|
10614
|
-
"raw-file:/
|
|
10653
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0050_drop_prompts_table.sql"() {
|
|
10615
10654
|
drop_prompts_table_default = "DROP TABLE IF EXISTS prompts;\n";
|
|
10616
10655
|
}
|
|
10617
10656
|
});
|
|
10618
10657
|
|
|
10619
|
-
// raw-file:/
|
|
10658
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0051_display_snapshot.sql
|
|
10620
10659
|
var display_snapshot_default;
|
|
10621
10660
|
var init_display_snapshot = __esm({
|
|
10622
|
-
"raw-file:/
|
|
10661
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0051_display_snapshot.sql"() {
|
|
10623
10662
|
display_snapshot_default = "ALTER TABLE `messages` ADD COLUMN `display_snapshot` text;\n--> statement-breakpoint\nALTER TABLE `session_messages` ADD COLUMN `display_snapshot` text;\n";
|
|
10624
10663
|
}
|
|
10625
10664
|
});
|
|
10626
10665
|
|
|
10627
|
-
// raw-file:/
|
|
10666
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0052_message_model_content.sql
|
|
10628
10667
|
var message_model_content_default;
|
|
10629
10668
|
var init_message_model_content = __esm({
|
|
10630
|
-
"raw-file:/
|
|
10669
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0052_message_model_content.sql"() {
|
|
10631
10670
|
message_model_content_default = "ALTER TABLE `messages` ADD COLUMN `model_content` text;\n";
|
|
10632
10671
|
}
|
|
10633
10672
|
});
|
|
10634
10673
|
|
|
10635
|
-
// raw-file:/
|
|
10674
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0053_message_paste_attachments.sql
|
|
10636
10675
|
var message_paste_attachments_default;
|
|
10637
10676
|
var init_message_paste_attachments = __esm({
|
|
10638
|
-
"raw-file:/
|
|
10677
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0053_message_paste_attachments.sql"() {
|
|
10639
10678
|
message_paste_attachments_default = "ALTER TABLE `messages` ADD COLUMN `paste_attachments` text;\n";
|
|
10640
10679
|
}
|
|
10641
10680
|
});
|
|
10642
10681
|
|
|
10643
|
-
// raw-file:/
|
|
10682
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0054_message_file_attachments.sql
|
|
10644
10683
|
var message_file_attachments_default;
|
|
10645
10684
|
var init_message_file_attachments = __esm({
|
|
10646
|
-
"raw-file:/
|
|
10685
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0054_message_file_attachments.sql"() {
|
|
10647
10686
|
message_file_attachments_default = "ALTER TABLE `messages` ADD COLUMN `file_attachments` text;\n";
|
|
10648
10687
|
}
|
|
10649
10688
|
});
|
|
10650
10689
|
|
|
10651
|
-
// raw-file:/
|
|
10690
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0055_session_message_attachments.sql
|
|
10652
10691
|
var session_message_attachments_default;
|
|
10653
10692
|
var init_session_message_attachments = __esm({
|
|
10654
|
-
"raw-file:/
|
|
10693
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0055_session_message_attachments.sql"() {
|
|
10655
10694
|
session_message_attachments_default = "ALTER TABLE `session_messages` ADD COLUMN `model_content` text;\nALTER TABLE `session_messages` ADD COLUMN `paste_attachments` text;\nALTER TABLE `session_messages` ADD COLUMN `file_attachments` text;\n";
|
|
10656
10695
|
}
|
|
10657
10696
|
});
|
|
10658
10697
|
|
|
10659
|
-
// raw-file:/
|
|
10698
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0056_workspace_command_permissions.sql
|
|
10660
10699
|
var workspace_command_permissions_default;
|
|
10661
10700
|
var init_workspace_command_permissions = __esm({
|
|
10662
|
-
"raw-file:/
|
|
10701
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0056_workspace_command_permissions.sql"() {
|
|
10663
10702
|
workspace_command_permissions_default = "CREATE TABLE `workspace_command_permissions` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `category` text NOT NULL,\n `decision` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `workspace_command_permissions_app_category` ON `workspace_command_permissions` (`app_id`,`category`);--> statement-breakpoint\nCREATE INDEX `workspace_command_permissions_app_id_idx` ON `workspace_command_permissions` (`app_id`);\n";
|
|
10664
10703
|
}
|
|
10665
10704
|
});
|
|
10666
10705
|
|
|
10667
|
-
// raw-file:/
|
|
10706
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0057_workspace_file_permissions.sql
|
|
10668
10707
|
var workspace_file_permissions_default;
|
|
10669
10708
|
var init_workspace_file_permissions = __esm({
|
|
10670
|
-
"raw-file:/
|
|
10709
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0057_workspace_file_permissions.sql"() {
|
|
10671
10710
|
workspace_file_permissions_default = "CREATE TABLE `workspace_file_permissions` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `app_id` integer NOT NULL,\n `scope_type` text NOT NULL,\n `scope_value` text NOT NULL,\n `decision` text NOT NULL,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`app_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `workspace_file_permissions_app_scope` ON `workspace_file_permissions` (`app_id`,`scope_type`,`scope_value`);--> statement-breakpoint\nCREATE INDEX `workspace_file_permissions_app_id_idx` ON `workspace_file_permissions` (`app_id`);\n";
|
|
10672
10711
|
}
|
|
10673
10712
|
});
|
|
10674
10713
|
|
|
10675
|
-
// raw-file:/
|
|
10714
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0058_session_stream_and_drop_legacy_chats.sql
|
|
10676
10715
|
var session_stream_and_drop_legacy_chats_default;
|
|
10677
10716
|
var init_session_stream_and_drop_legacy_chats = __esm({
|
|
10678
|
-
"raw-file:/
|
|
10717
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0058_session_stream_and_drop_legacy_chats.sql"() {
|
|
10679
10718
|
session_stream_and_drop_legacy_chats_default = "-- Workspace sessions: persist stream transport id; remove legacy chats/messages tables.\nDROP TABLE IF EXISTS `messages`;\n--> statement-breakpoint\nDROP TABLE IF EXISTS `chat_context_summaries`;\n--> statement-breakpoint\nDROP TABLE IF EXISTS `tool_session_loads`;\n--> statement-breakpoint\nDROP TABLE IF EXISTS `chats`;\n--> statement-breakpoint\nALTER TABLE `chat_sessions` ADD COLUMN `stream_chat_id` integer;\n";
|
|
10680
10719
|
}
|
|
10681
10720
|
});
|
|
10682
10721
|
|
|
10683
|
-
// raw-file:/
|
|
10722
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0059_mcp_oauth_columns.sql
|
|
10684
10723
|
var mcp_oauth_columns_default;
|
|
10685
10724
|
var init_mcp_oauth_columns = __esm({
|
|
10686
|
-
"raw-file:/
|
|
10725
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0059_mcp_oauth_columns.sql"() {
|
|
10687
10726
|
mcp_oauth_columns_default = "ALTER TABLE `mcp_servers` ADD COLUMN `auth_type` text DEFAULT 'none' NOT NULL;\n--> statement-breakpoint\nALTER TABLE `mcp_servers` ADD COLUMN `oauth_tokens_json` text;\n--> statement-breakpoint\nALTER TABLE `mcp_servers` ADD COLUMN `oauth_client_json` text;\n--> statement-breakpoint\nALTER TABLE `mcp_servers` ADD COLUMN `oauth_discovery_json` text;\n";
|
|
10688
10727
|
}
|
|
10689
10728
|
});
|
|
10690
10729
|
|
|
10691
|
-
// raw-file:/
|
|
10730
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0060_background_agent_session_status.sql
|
|
10692
10731
|
var background_agent_session_status_default;
|
|
10693
10732
|
var init_background_agent_session_status = __esm({
|
|
10694
|
-
"raw-file:/
|
|
10733
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0060_background_agent_session_status.sql"() {
|
|
10695
10734
|
background_agent_session_status_default = "ALTER TABLE `chat_sessions` ADD COLUMN `kind` text DEFAULT 'normal' NOT NULL;\n--> statement-breakpoint\nALTER TABLE `chat_sessions` ADD COLUMN `status` text;\n--> statement-breakpoint\nALTER TABLE `chat_sessions` ADD COLUMN `status_error` text;\n";
|
|
10696
10735
|
}
|
|
10697
10736
|
});
|
|
10698
10737
|
|
|
10699
|
-
// raw-file:/
|
|
10738
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0061_background_agent_meta.sql
|
|
10700
10739
|
var background_agent_meta_default;
|
|
10701
10740
|
var init_background_agent_meta = __esm({
|
|
10702
|
-
"raw-file:/
|
|
10741
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0061_background_agent_meta.sql"() {
|
|
10703
10742
|
background_agent_meta_default = "ALTER TABLE `chat_sessions` ADD COLUMN `agent_meta` text;\n";
|
|
10704
10743
|
}
|
|
10705
10744
|
});
|
|
10706
10745
|
|
|
10707
|
-
// raw-file:/
|
|
10746
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0062_drop_legacy_diagram_tables.sql
|
|
10708
10747
|
var drop_legacy_diagram_tables_default;
|
|
10709
10748
|
var init_drop_legacy_diagram_tables = __esm({
|
|
10710
|
-
"raw-file:/
|
|
10749
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0062_drop_legacy_diagram_tables.sql"() {
|
|
10711
10750
|
drop_legacy_diagram_tables_default = '-- v12 S22 hotfix: the legacy `diagrams` table still carried\n-- `FOREIGN KEY (chat_id) REFERENCES chats(id)` after 0058 dropped `chats`.\n-- With foreign_keys ON, SQLite then fails to PREPARE any `DELETE FROM apps`\n-- (it must compile the diagrams cascade and can\'t resolve the dead chats ref):\n-- "Failed to delete workspace from database: no such table: main.chats".\n-- Both tables are dead since the diagram-subsystem removal (nothing reads or\n-- writes them; 0041 already dropped their sibling `diagram_versions`).\nDROP TABLE IF EXISTS `diagrams`;\n--> statement-breakpoint\nDROP TABLE IF EXISTS `workspace_diagrams`;\n';
|
|
10712
10751
|
}
|
|
10713
10752
|
});
|
|
10714
10753
|
|
|
10715
|
-
// raw-file:/
|
|
10754
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0063_session_message_snapshot_turn.sql
|
|
10716
10755
|
var session_message_snapshot_turn_default;
|
|
10717
10756
|
var init_session_message_snapshot_turn = __esm({
|
|
10718
|
-
"raw-file:/
|
|
10757
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0063_session_message_snapshot_turn.sql"() {
|
|
10719
10758
|
session_message_snapshot_turn_default = "ALTER TABLE `session_messages` ADD COLUMN `snapshot_turn_id` text;";
|
|
10720
10759
|
}
|
|
10721
10760
|
});
|
|
10722
10761
|
|
|
10723
|
-
// raw-file:/
|
|
10762
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0064_drop_deploy_connector_columns.sql
|
|
10724
10763
|
var drop_deploy_connector_columns_default;
|
|
10725
10764
|
var init_drop_deploy_connector_columns = __esm({
|
|
10726
|
-
"raw-file:/
|
|
10765
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0064_drop_deploy_connector_columns.sql"() {
|
|
10727
10766
|
drop_deploy_connector_columns_default = "-- v13.6: user-facing Supabase/Neon/Vercel deploy connectors removed.\n-- Drop the now-unused per-app connector columns (LOCAL sqlite only \u2014 this does\n-- NOT touch Atlarix's own prod Supabase). Atlarix auth + Core token metering are\n-- unaffected (they live in Supabase, not this table).\nALTER TABLE `apps` DROP COLUMN `supabase_project_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `supabase_parent_project_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `neon_project_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `neon_development_branch_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `neon_preview_branch_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `vercel_project_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `vercel_project_name`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `vercel_team_id`;--> statement-breakpoint\nALTER TABLE `apps` DROP COLUMN `vercel_deployment_url`;--> statement-breakpoint\nALTER TABLE `versions` DROP COLUMN `neon_db_timestamp`;\n";
|
|
10728
10767
|
}
|
|
10729
10768
|
});
|
|
10730
10769
|
|
|
10731
|
-
// raw-file:/
|
|
10770
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0065_drop_custom_commands.sql
|
|
10732
10771
|
var drop_custom_commands_default;
|
|
10733
10772
|
var init_drop_custom_commands = __esm({
|
|
10734
|
-
"raw-file:/
|
|
10773
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0065_drop_custom_commands.sql"() {
|
|
10735
10774
|
drop_custom_commands_default = "-- v13.6: `/` slash-command system removed (prompt-templates duplicated the work-mode\n-- picker; the editor was never surfaced). Drop the now-unused local table.\nDROP TABLE IF EXISTS `custom_commands`;\n";
|
|
10736
10775
|
}
|
|
10737
10776
|
});
|
|
10738
10777
|
|
|
10739
|
-
// raw-file:/
|
|
10778
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0066_automations.sql
|
|
10740
10779
|
var automations_default;
|
|
10741
10780
|
var init_automations = __esm({
|
|
10742
|
-
"raw-file:/
|
|
10781
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0066_automations.sql"() {
|
|
10743
10782
|
automations_default = "-- Automations: persisted locally-executed recurring agent runs (definitions)\n-- and their triage-feed run history (transcripts live in chat_sessions\n-- kind=\"background\" rows; session_id links them).\nCREATE TABLE `automations` (\n `id` text PRIMARY KEY NOT NULL,\n `workspace_id` integer,\n `name` text NOT NULL,\n `enabled` integer DEFAULT true NOT NULL,\n `trigger` text NOT NULL,\n `prompt` text NOT NULL,\n `run_mode` text DEFAULT 'read-only' NOT NULL,\n `model` text,\n `cursor` text,\n `last_run_at` integer,\n `created_at` integer DEFAULT (unixepoch()) NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`workspace_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE TABLE `automation_runs` (\n `id` text PRIMARY KEY NOT NULL,\n `automation_id` text NOT NULL,\n `session_id` text,\n `status` text NOT NULL,\n `summary` text,\n `error` text,\n `unread` integer DEFAULT true NOT NULL,\n `archived` integer DEFAULT false NOT NULL,\n `proposal_diff` text,\n `proposal_files` text,\n `proposal_applied_at` integer,\n `started_at` integer DEFAULT (unixepoch()) NOT NULL,\n `finished_at` integer,\n FOREIGN KEY (`automation_id`) REFERENCES `automations`(`id`) ON UPDATE no action ON DELETE cascade,\n FOREIGN KEY (`session_id`) REFERENCES `chat_sessions`(`id`) ON UPDATE no action ON DELETE set null\n);\n--> statement-breakpoint\nCREATE INDEX `automation_runs_automation_id_idx` ON `automation_runs` (`automation_id`);\n";
|
|
10744
10783
|
}
|
|
10745
10784
|
});
|
|
10746
10785
|
|
|
10747
|
-
// raw-file:/
|
|
10786
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0067_automation_run_context.sql
|
|
10748
10787
|
var automation_run_context_default;
|
|
10749
10788
|
var init_automation_run_context = __esm({
|
|
10750
|
-
"raw-file:/
|
|
10789
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0067_automation_run_context.sql"() {
|
|
10751
10790
|
automation_run_context_default = "-- Notify-only automations: persist the fired trigger's context on the run so\n-- the feed's \"Send to chat\" can present the event to the model on demand.\nALTER TABLE `automation_runs` ADD COLUMN `trigger_context` text;\n";
|
|
10752
10791
|
}
|
|
10753
10792
|
});
|
|
10754
10793
|
|
|
10755
|
-
// raw-file:/
|
|
10794
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0068_session_title_source.sql
|
|
10756
10795
|
var session_title_source_default;
|
|
10757
10796
|
var init_session_title_source = __esm({
|
|
10758
|
-
"raw-file:/
|
|
10797
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0068_session_title_source.sql"() {
|
|
10759
10798
|
session_title_source_default = '-- Track whether a session\'s title was generated for it or typed by the user.\n--\n-- Re-titling was gated on the title still being a DEFAULT ("Untitled" / "New\n-- chat"), so once a session had any name \u2014 including one we generated from its\n-- first exchange \u2014 editing that first prompt could never update it. With this\n-- column an "auto" title follows the prompt it came from, while a hand-typed one\n-- is never overwritten.\n--\n-- Existing rows default to "auto". That is deliberate: a title we generated is\n-- by far the common case, and the cost of being wrong is a re-titled session\n-- rather than a lost name, which the user can always rename back.\nALTER TABLE `chat_sessions` ADD COLUMN `title_source` text DEFAULT \'auto\' NOT NULL;\n';
|
|
10760
10799
|
}
|
|
10761
10800
|
});
|
|
10762
10801
|
|
|
10763
|
-
// raw-file:/
|
|
10802
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0069_session_message_token_usage.sql
|
|
10764
10803
|
var session_message_token_usage_default;
|
|
10765
10804
|
var init_session_message_token_usage = __esm({
|
|
10766
|
-
"raw-file:/
|
|
10805
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0069_session_message_token_usage.sql"() {
|
|
10767
10806
|
session_message_token_usage_default = "-- Persist the provider's real token total for an assistant turn.\n--\n-- The token meter prefers this over its own estimate, and the in-memory stream\n-- transport already carried it \u2014 but with nowhere to store it, a restart lost it\n-- and the meter fell back to the client-side estimate. That estimate counts only\n-- the flat persisted messages, with no system prompt and none of the native tool\n-- history that dominates an agentic session, so it under-reports by roughly half:\n-- one measured session read 417k while streaming and 211k after reopening.\n-- Nothing had been summarised \u2014 the meter had simply switched rulers.\n--\n-- Existing rows stay NULL, which the meter already handles by falling back to the\n-- estimate exactly as it does today. New turns record the real figure.\nALTER TABLE `session_messages` ADD COLUMN `max_tokens_used` integer;\n";
|
|
10768
10807
|
}
|
|
10769
10808
|
});
|
|
10770
10809
|
|
|
10771
|
-
// raw-file:/
|
|
10810
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0070_drop_worktree_run_mode.sql
|
|
10772
10811
|
var drop_worktree_run_mode_default;
|
|
10773
10812
|
var init_drop_worktree_run_mode = __esm({
|
|
10774
|
-
"raw-file:/
|
|
10813
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0070_drop_worktree_run_mode.sql"() {
|
|
10775
10814
|
drop_worktree_run_mode_default = `-- v14.21.0 removed the "worktree-write" automation run mode along with the
|
|
10776
10815
|
-- sub-agent git worktree it depended on. Any automation still set to it would
|
|
10777
10816
|
-- otherwise load with a run_mode the zod schema no longer accepts, so downgrade
|
|
@@ -10785,42 +10824,42 @@ UPDATE automations SET run_mode = 'read-only' WHERE run_mode = 'worktree-write';
|
|
|
10785
10824
|
}
|
|
10786
10825
|
});
|
|
10787
10826
|
|
|
10788
|
-
// raw-file:/
|
|
10827
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0071_automation_notify_agent.sql
|
|
10789
10828
|
var automation_notify_agent_default;
|
|
10790
10829
|
var init_automation_notify_agent = __esm({
|
|
10791
|
-
"raw-file:/
|
|
10830
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0071_automation_notify_agent.sql"() {
|
|
10792
10831
|
automation_notify_agent_default = '-- v14.27.0: every automation declares whether its outcome reaches the AGENT.\n--\n-- `run_mode` already says whether a fired trigger runs the model unattended.\n-- `notify_agent` is the other half, and the one that governs interactive spend:\n-- whether a finished run is delivered into the user\'s chat session for the agent\n-- to see and act on.\n--\n-- notify_agent = 1 \u2192 CI passed/failed, tests: things worth acting on.\n-- notify_agent = 0 \u2192 Slack via MCP and similar inbox-shaped noise. The run\n-- feed and the OS notification still fire; the agent is\n-- never woken, so this automation can never cost tokens.\n--\n-- Existing rows default to 0, deliberately. Every automation on disk predates\n-- the field, so nobody chose a value for them \u2014 and the safe reading of "not\n-- chosen" is "do not spend". A user who wants one to reach the agent flips it in\n-- the Automations tab, which is one click and now the only way it happens.\n--\n-- New automations must state it explicitly (the zod schema requires it); the\n-- column default exists only for these pre-existing rows.\nALTER TABLE automations ADD COLUMN notify_agent integer DEFAULT 0 NOT NULL;\n';
|
|
10793
10832
|
}
|
|
10794
10833
|
});
|
|
10795
10834
|
|
|
10796
|
-
// raw-file:/
|
|
10835
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0072_automation_pipeline_trigger.sql
|
|
10797
10836
|
var automation_pipeline_trigger_default;
|
|
10798
10837
|
var init_automation_pipeline_trigger = __esm({
|
|
10799
|
-
"raw-file:/
|
|
10838
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0072_automation_pipeline_trigger.sql"() {
|
|
10800
10839
|
automation_pipeline_trigger_default = "-- v14.27.0: `kind:\"github\"` triggers become `kind:\"pipeline\"` with `host:\"github\"`.\n--\n-- The vendor was the trigger KIND, which made it a schema branch, a poller call\n-- and a form tab all named after one service \u2014 so adding GitLab meant repeating\n-- every one of them. The kind is now `pipeline` and the vendor is a field\n-- resolved through a poller registry (`lib/automations/pipeline-hosts.ts`).\n--\n-- Rewritten in place rather than left to the runtime alias, so exactly one shape\n-- exists on disk. `AutomationTriggerSchema` still ACCEPTS the old shape and\n-- normalises it \u2014 that covers a row written by an older build between this\n-- migration and the next launch, not the rows already here.\n--\n-- json_set/json_remove are used rather than string surgery so a trigger with\n-- unusual whitespace or key order migrates correctly; SQLite has shipped JSON1\n-- by default since 3.38 and better-sqlite3 bundles a far newer build.\nUPDATE automations\nSET trigger = json_set(\n json_set(trigger, '$.kind', 'pipeline'),\n '$.host', 'github'\n )\nWHERE json_valid(trigger)\n AND json_extract(trigger, '$.kind') = 'github';\n";
|
|
10801
10840
|
}
|
|
10802
10841
|
});
|
|
10803
10842
|
|
|
10804
|
-
// raw-file:/
|
|
10843
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0073_session_message_plan_title.sql
|
|
10805
10844
|
var session_message_plan_title_default;
|
|
10806
10845
|
var init_session_message_plan_title = __esm({
|
|
10807
|
-
"raw-file:/
|
|
10846
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0073_session_message_plan_title.sql"() {
|
|
10808
10847
|
session_message_plan_title_default = '-- Give a plan artifact a real title column instead of a scraped substring.\n--\n-- A plan had no title of its own. `createPlanArtifact` prepended the model\'s\n-- supplied title into the markdown body as an H1, and every reader scraped it\n-- back out with `planArtifactTitleFromContent` (first non-empty line, `#`s\n-- stripped). The prepend was guarded on `!content.trim().startsWith("#")` \u2014 true\n-- for a `## Goal` section heading exactly as much as for a real `# Title` \u2014 so a\n-- model that opened its plan with a section heading had its title thrown away on\n-- write, with no warning and no return signal. The scraper then handed back the\n-- first line it found, which is why plans in the wild are so often named "Goal".\n--\n-- Nothing in the prompts ever asked for a `## Goal` section; models write it\n-- because it is the natural shape of a plan document. The old behaviour punished\n-- good structure.\n--\n-- Existing rows stay NULL and keep rendering through the scraper, which is\n-- retained solely as their fallback. New plans read the column and never touch\n-- the markdown for their name.\nALTER TABLE `session_messages` ADD COLUMN `title` text;\n';
|
|
10809
10848
|
}
|
|
10810
10849
|
});
|
|
10811
10850
|
|
|
10812
|
-
// raw-file:/
|
|
10851
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0074_chat_session_work_mode.sql
|
|
10813
10852
|
var chat_session_work_mode_default;
|
|
10814
10853
|
var init_chat_session_work_mode = __esm({
|
|
10815
|
-
"raw-file:/
|
|
10854
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0074_chat_session_work_mode.sql"() {
|
|
10816
10855
|
chat_session_work_mode_default = "-- Give a session its own work mode, instead of borrowing the global preference.\n--\n-- The mode (Explore / Plan / Build / Debug / Review) lived only in settings, so\n-- it belonged to the APP rather than to the conversation. Reopening a session you\n-- had been planning in, from a window whose global preference was Build, silently\n-- made the next turn a Build turn \u2014 writes allowed on a thread you were only\n-- exploring, with nothing on screen having changed. Two sessions open at once\n-- could not disagree about their mode at all.\n--\n-- This is the same global-vs-scoped confusion behind the v14.32.0 and v14.34.0\n-- bugs (a global decision made from per-window state, then its exact mirror). The\n-- session is the honest owner: it is what the user thinks they are picking a mode\n-- FOR. Reading it per turn also means the stream handler stops re-reading a\n-- global for a per-session decision, which is what closes the class rather than\n-- one more instance of it.\n--\n-- Existing rows stay NULL and keep resolving from the global preference exactly\n-- as they do today; the first deliberate mode pick inside a session stamps it\n-- here. Stamping every old session on open instead would hand each of them a mode\n-- it was never actually given.\nALTER TABLE `chat_sessions` ADD COLUMN `work_mode` text;\n";
|
|
10817
10856
|
}
|
|
10818
10857
|
});
|
|
10819
10858
|
|
|
10820
|
-
// raw-file:/
|
|
10859
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0075_edit_stats.sql
|
|
10821
10860
|
var edit_stats_default;
|
|
10822
10861
|
var init_edit_stats = __esm({
|
|
10823
|
-
"raw-file:/
|
|
10862
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/drizzle/0075_edit_stats.sql"() {
|
|
10824
10863
|
edit_stats_default = '-- How much the agent has actually written, per workspace and per model.\n--\n-- Nothing recorded this. `workspace_modifications` and `daily_logs` look like they\n-- might, but both are dyad-era: the current write path has never inserted into\n-- either, and the only code left touching `workspace_modifications` is the cleanup\n-- job that summarises rows nobody creates. So this is a new table rather than a\n-- revival \u2014 reviving one would have meant inheriting a shape built for a different\n-- question.\n--\n-- A daily ROLLUP, not a row per edit. The counts are gross by decision (reverting a\n-- turn does not subtract, the same way "lines written" works in every editor that\n-- shows it), so the table only ever accumulates and a sum over these rows answers\n-- every question a per-edit history would. In exchange it stays bounded for the life\n-- of the install with no pruning job, and it never puts a file path on disk.\n--\n-- The bucket is (workspace, day, provider, model) and the unique index is what makes\n-- the write an UPSERT rather than a read-modify-write, so concurrent edits in two\n-- windows cannot lose a count between them.\n--\n-- `provider` is kept beside `model_id` because it is the only thing that separates\n-- the same model reached two ways: `compass` means the turn went through Atlarix\n-- Core, anything else means the user\'s own key. That is the difference the profile\n-- card exists to show, and it cannot be recovered from the model id alone.\nCREATE TABLE `edit_stats` (\n `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,\n `workspace_id` integer NOT NULL,\n `day` text NOT NULL,\n `provider` text NOT NULL,\n `model_id` text NOT NULL,\n `lines_added` integer DEFAULT 0 NOT NULL,\n `lines_removed` integer DEFAULT 0 NOT NULL,\n `edits` integer DEFAULT 0 NOT NULL,\n `updated_at` integer DEFAULT (unixepoch()) NOT NULL,\n FOREIGN KEY (`workspace_id`) REFERENCES `apps`(`id`) ON UPDATE no action ON DELETE cascade\n);\n--> statement-breakpoint\nCREATE UNIQUE INDEX `edit_stats_bucket_unique` ON `edit_stats` (`workspace_id`,`day`,`provider`,`model_id`);--> statement-breakpoint\nCREATE INDEX `edit_stats_workspace_idx` ON `edit_stats` (`workspace_id`);\n';
|
|
10825
10864
|
}
|
|
10826
10865
|
});
|
|
@@ -11632,10 +11671,10 @@ function mergeDefs(...defs) {
|
|
|
11632
11671
|
function cloneDef(schema) {
|
|
11633
11672
|
return mergeDefs(schema._zod.def);
|
|
11634
11673
|
}
|
|
11635
|
-
function getElementAtPath(obj2,
|
|
11636
|
-
if (!
|
|
11674
|
+
function getElementAtPath(obj2, path50) {
|
|
11675
|
+
if (!path50)
|
|
11637
11676
|
return obj2;
|
|
11638
|
-
return
|
|
11677
|
+
return path50.reduce((acc, key) => acc?.[key], obj2);
|
|
11639
11678
|
}
|
|
11640
11679
|
function promiseAllObject(promisesObj) {
|
|
11641
11680
|
const keys2 = Object.keys(promisesObj);
|
|
@@ -11963,11 +12002,11 @@ function explicitlyAborted(x4, startIndex = 0) {
|
|
|
11963
12002
|
}
|
|
11964
12003
|
return false;
|
|
11965
12004
|
}
|
|
11966
|
-
function prefixIssues(
|
|
12005
|
+
function prefixIssues(path50, issues) {
|
|
11967
12006
|
return issues.map((iss) => {
|
|
11968
12007
|
var _a30;
|
|
11969
12008
|
(_a30 = iss).path ?? (_a30.path = []);
|
|
11970
|
-
iss.path.unshift(
|
|
12009
|
+
iss.path.unshift(path50);
|
|
11971
12010
|
return iss;
|
|
11972
12011
|
});
|
|
11973
12012
|
}
|
|
@@ -12184,16 +12223,16 @@ function flattenError(error51, mapper = (issue2) => issue2.message) {
|
|
|
12184
12223
|
}
|
|
12185
12224
|
function formatError(error51, mapper = (issue2) => issue2.message) {
|
|
12186
12225
|
const fieldErrors = { _errors: [] };
|
|
12187
|
-
const processError = (error52,
|
|
12226
|
+
const processError = (error52, path50 = []) => {
|
|
12188
12227
|
for (const issue2 of error52.issues) {
|
|
12189
12228
|
if (issue2.code === "invalid_union" && issue2.errors.length) {
|
|
12190
|
-
issue2.errors.map((issues) => processError({ issues }, [...
|
|
12229
|
+
issue2.errors.map((issues) => processError({ issues }, [...path50, ...issue2.path]));
|
|
12191
12230
|
} else if (issue2.code === "invalid_key") {
|
|
12192
|
-
processError({ issues: issue2.issues }, [...
|
|
12231
|
+
processError({ issues: issue2.issues }, [...path50, ...issue2.path]);
|
|
12193
12232
|
} else if (issue2.code === "invalid_element") {
|
|
12194
|
-
processError({ issues: issue2.issues }, [...
|
|
12233
|
+
processError({ issues: issue2.issues }, [...path50, ...issue2.path]);
|
|
12195
12234
|
} else {
|
|
12196
|
-
const fullpath = [...
|
|
12235
|
+
const fullpath = [...path50, ...issue2.path];
|
|
12197
12236
|
if (fullpath.length === 0) {
|
|
12198
12237
|
fieldErrors._errors.push(mapper(issue2));
|
|
12199
12238
|
} else {
|
|
@@ -12220,17 +12259,17 @@ function formatError(error51, mapper = (issue2) => issue2.message) {
|
|
|
12220
12259
|
}
|
|
12221
12260
|
function treeifyError(error51, mapper = (issue2) => issue2.message) {
|
|
12222
12261
|
const result2 = { errors: [] };
|
|
12223
|
-
const processError = (error52,
|
|
12262
|
+
const processError = (error52, path50 = []) => {
|
|
12224
12263
|
var _a30, _b21;
|
|
12225
12264
|
for (const issue2 of error52.issues) {
|
|
12226
12265
|
if (issue2.code === "invalid_union" && issue2.errors.length) {
|
|
12227
|
-
issue2.errors.map((issues) => processError({ issues }, [...
|
|
12266
|
+
issue2.errors.map((issues) => processError({ issues }, [...path50, ...issue2.path]));
|
|
12228
12267
|
} else if (issue2.code === "invalid_key") {
|
|
12229
|
-
processError({ issues: issue2.issues }, [...
|
|
12268
|
+
processError({ issues: issue2.issues }, [...path50, ...issue2.path]);
|
|
12230
12269
|
} else if (issue2.code === "invalid_element") {
|
|
12231
|
-
processError({ issues: issue2.issues }, [...
|
|
12270
|
+
processError({ issues: issue2.issues }, [...path50, ...issue2.path]);
|
|
12232
12271
|
} else {
|
|
12233
|
-
const fullpath = [...
|
|
12272
|
+
const fullpath = [...path50, ...issue2.path];
|
|
12234
12273
|
if (fullpath.length === 0) {
|
|
12235
12274
|
result2.errors.push(mapper(issue2));
|
|
12236
12275
|
continue;
|
|
@@ -12262,8 +12301,8 @@ function treeifyError(error51, mapper = (issue2) => issue2.message) {
|
|
|
12262
12301
|
}
|
|
12263
12302
|
function toDotPath(_path) {
|
|
12264
12303
|
const segs = [];
|
|
12265
|
-
const
|
|
12266
|
-
for (const seg of
|
|
12304
|
+
const path50 = _path.map((seg) => typeof seg === "object" ? seg.key : seg);
|
|
12305
|
+
for (const seg of path50) {
|
|
12267
12306
|
if (typeof seg === "number")
|
|
12268
12307
|
segs.push(`[${seg}]`);
|
|
12269
12308
|
else if (typeof seg === "symbol")
|
|
@@ -25693,13 +25732,13 @@ function resolveRef(ref, ctx) {
|
|
|
25693
25732
|
if (!ref.startsWith("#")) {
|
|
25694
25733
|
throw new Error("External $ref is not supported, only local refs (#/...) are allowed");
|
|
25695
25734
|
}
|
|
25696
|
-
const
|
|
25697
|
-
if (
|
|
25735
|
+
const path50 = ref.slice(1).split("/").filter(Boolean);
|
|
25736
|
+
if (path50.length === 0) {
|
|
25698
25737
|
return ctx.rootSchema;
|
|
25699
25738
|
}
|
|
25700
25739
|
const defsKey = ctx.version === "draft-2020-12" ? "$defs" : "definitions";
|
|
25701
|
-
if (
|
|
25702
|
-
const key =
|
|
25740
|
+
if (path50[0] === defsKey) {
|
|
25741
|
+
const key = path50[1];
|
|
25703
25742
|
if (!key || !ctx.defs[key]) {
|
|
25704
25743
|
throw new Error(`Reference not found: ${ref}`);
|
|
25705
25744
|
}
|
|
@@ -37271,45 +37310,45 @@ function createOpenAI(options = {}) {
|
|
|
37271
37310
|
);
|
|
37272
37311
|
const createChatModel = (modelId) => new OpenAIChatLanguageModel(modelId, {
|
|
37273
37312
|
provider: `${providerName}.chat`,
|
|
37274
|
-
url: ({ path:
|
|
37313
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37275
37314
|
headers: getHeaders,
|
|
37276
37315
|
fetch: options.fetch
|
|
37277
37316
|
});
|
|
37278
37317
|
const createCompletionModel = (modelId) => new OpenAICompletionLanguageModel(modelId, {
|
|
37279
37318
|
provider: `${providerName}.completion`,
|
|
37280
|
-
url: ({ path:
|
|
37319
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37281
37320
|
headers: getHeaders,
|
|
37282
37321
|
fetch: options.fetch
|
|
37283
37322
|
});
|
|
37284
37323
|
const createEmbeddingModel = (modelId) => new OpenAIEmbeddingModel(modelId, {
|
|
37285
37324
|
provider: `${providerName}.embedding`,
|
|
37286
|
-
url: ({ path:
|
|
37325
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37287
37326
|
headers: getHeaders,
|
|
37288
37327
|
fetch: options.fetch
|
|
37289
37328
|
});
|
|
37290
37329
|
const createImageModel = (modelId) => new OpenAIImageModel(modelId, {
|
|
37291
37330
|
provider: `${providerName}.image`,
|
|
37292
|
-
url: ({ path:
|
|
37331
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37293
37332
|
headers: getHeaders,
|
|
37294
37333
|
fetch: options.fetch
|
|
37295
37334
|
});
|
|
37296
37335
|
const createTranscriptionModel = (modelId) => new OpenAITranscriptionModel(modelId, {
|
|
37297
37336
|
provider: `${providerName}.transcription`,
|
|
37298
|
-
url: ({ path:
|
|
37337
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37299
37338
|
headers: getHeaders,
|
|
37300
37339
|
fetch: options.fetch,
|
|
37301
37340
|
webSocket: options.webSocket
|
|
37302
37341
|
});
|
|
37303
37342
|
const createSpeechTranslationModel = (modelId) => new OpenAISpeechTranslationModel(modelId, {
|
|
37304
37343
|
provider: `${providerName}.speech-translation`,
|
|
37305
|
-
url: ({ path:
|
|
37344
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37306
37345
|
headers: getHeaders,
|
|
37307
37346
|
fetch: options.fetch,
|
|
37308
37347
|
webSocket: options.webSocket
|
|
37309
37348
|
});
|
|
37310
37349
|
const createSpeechModel = (modelId) => new OpenAISpeechModel(modelId, {
|
|
37311
37350
|
provider: `${providerName}.speech`,
|
|
37312
|
-
url: ({ path:
|
|
37351
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37313
37352
|
headers: getHeaders,
|
|
37314
37353
|
fetch: options.fetch
|
|
37315
37354
|
});
|
|
@@ -37321,7 +37360,7 @@ function createOpenAI(options = {}) {
|
|
|
37321
37360
|
});
|
|
37322
37361
|
const createSkills = () => new OpenAISkills({
|
|
37323
37362
|
provider: `${providerName}.skills`,
|
|
37324
|
-
url: ({ path:
|
|
37363
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37325
37364
|
headers: getHeaders,
|
|
37326
37365
|
fetch: options.fetch
|
|
37327
37366
|
});
|
|
@@ -37336,7 +37375,7 @@ function createOpenAI(options = {}) {
|
|
|
37336
37375
|
const createResponsesModel = (modelId) => {
|
|
37337
37376
|
return new OpenAIResponsesBatchLanguageModel(modelId, {
|
|
37338
37377
|
provider: `${providerName}.responses`,
|
|
37339
|
-
url: ({ path:
|
|
37378
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
37340
37379
|
headers: getHeaders,
|
|
37341
37380
|
fetch: options.fetch,
|
|
37342
37381
|
// Soft-deprecated. TODO: remove in v8
|
|
@@ -43190,10 +43229,10 @@ var init_dist5 = __esm({
|
|
|
43190
43229
|
result: conversion.result
|
|
43191
43230
|
};
|
|
43192
43231
|
}
|
|
43193
|
-
getUrl(
|
|
43232
|
+
getUrl(path50) {
|
|
43194
43233
|
return this.options.config.url({
|
|
43195
43234
|
modelId: this.options.modelId,
|
|
43196
|
-
path:
|
|
43235
|
+
path: path50
|
|
43197
43236
|
});
|
|
43198
43237
|
}
|
|
43199
43238
|
};
|
|
@@ -50219,8 +50258,8 @@ var init_dist6 = __esm({
|
|
|
50219
50258
|
yield await convertAnthropicBatchResult(line);
|
|
50220
50259
|
}
|
|
50221
50260
|
}
|
|
50222
|
-
getBatchUrl(
|
|
50223
|
-
return `${this.config.baseURL}/messages/batches${
|
|
50261
|
+
getBatchUrl(path50) {
|
|
50262
|
+
return `${this.config.baseURL}/messages/batches${path50}`;
|
|
50224
50263
|
}
|
|
50225
50264
|
async getStartBatchHeaders({
|
|
50226
50265
|
betas,
|
|
@@ -64058,8 +64097,8 @@ function createOpenAICompatible(options) {
|
|
|
64058
64097
|
const getHeaders = () => withUserAgentSuffix(headers, `ai-sdk/openai-compatible/${VERSION6}`);
|
|
64059
64098
|
const getCommonModelConfig = (modelType) => ({
|
|
64060
64099
|
provider: `${providerName}.${modelType}`,
|
|
64061
|
-
url: ({ path:
|
|
64062
|
-
const url2 = new URL(`${baseURL}${
|
|
64100
|
+
url: ({ path: path50 }) => {
|
|
64101
|
+
const url2 = new URL(`${baseURL}${path50}`);
|
|
64063
64102
|
if (options.queryParams) {
|
|
64064
64103
|
url2.search = new URLSearchParams(options.queryParams).toString();
|
|
64065
64104
|
}
|
|
@@ -65918,6 +65957,8 @@ async function saveToCache(data) {
|
|
|
65918
65957
|
}
|
|
65919
65958
|
}
|
|
65920
65959
|
function resolveSnapshotPath() {
|
|
65960
|
+
const override = process.env.ATLARIX_MODELS_SNAPSHOT;
|
|
65961
|
+
if (override) return override;
|
|
65921
65962
|
try {
|
|
65922
65963
|
if (app.isPackaged) {
|
|
65923
65964
|
return path12.join(process.resourcesPath, "models-snapshot.json.gz");
|
|
@@ -66277,7 +66318,7 @@ var require_windows = __commonJS({
|
|
|
66277
66318
|
module2.exports = isexe;
|
|
66278
66319
|
isexe.sync = sync;
|
|
66279
66320
|
var fs40 = __require("fs");
|
|
66280
|
-
function checkPathExt(
|
|
66321
|
+
function checkPathExt(path50, options) {
|
|
66281
66322
|
var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT;
|
|
66282
66323
|
if (!pathext) {
|
|
66283
66324
|
return true;
|
|
@@ -66288,25 +66329,25 @@ var require_windows = __commonJS({
|
|
|
66288
66329
|
}
|
|
66289
66330
|
for (var i4 = 0; i4 < pathext.length; i4++) {
|
|
66290
66331
|
var p2 = pathext[i4].toLowerCase();
|
|
66291
|
-
if (p2 &&
|
|
66332
|
+
if (p2 && path50.substr(-p2.length).toLowerCase() === p2) {
|
|
66292
66333
|
return true;
|
|
66293
66334
|
}
|
|
66294
66335
|
}
|
|
66295
66336
|
return false;
|
|
66296
66337
|
}
|
|
66297
|
-
function checkStat(stat6,
|
|
66338
|
+
function checkStat(stat6, path50, options) {
|
|
66298
66339
|
if (!stat6.isSymbolicLink() && !stat6.isFile()) {
|
|
66299
66340
|
return false;
|
|
66300
66341
|
}
|
|
66301
|
-
return checkPathExt(
|
|
66342
|
+
return checkPathExt(path50, options);
|
|
66302
66343
|
}
|
|
66303
|
-
function isexe(
|
|
66304
|
-
fs40.stat(
|
|
66305
|
-
cb2(er2, er2 ? false : checkStat(stat6,
|
|
66344
|
+
function isexe(path50, options, cb2) {
|
|
66345
|
+
fs40.stat(path50, function(er2, stat6) {
|
|
66346
|
+
cb2(er2, er2 ? false : checkStat(stat6, path50, options));
|
|
66306
66347
|
});
|
|
66307
66348
|
}
|
|
66308
|
-
function sync(
|
|
66309
|
-
return checkStat(fs40.statSync(
|
|
66349
|
+
function sync(path50, options) {
|
|
66350
|
+
return checkStat(fs40.statSync(path50), path50, options);
|
|
66310
66351
|
}
|
|
66311
66352
|
}
|
|
66312
66353
|
});
|
|
@@ -66317,13 +66358,13 @@ var require_mode = __commonJS({
|
|
|
66317
66358
|
module2.exports = isexe;
|
|
66318
66359
|
isexe.sync = sync;
|
|
66319
66360
|
var fs40 = __require("fs");
|
|
66320
|
-
function isexe(
|
|
66321
|
-
fs40.stat(
|
|
66361
|
+
function isexe(path50, options, cb2) {
|
|
66362
|
+
fs40.stat(path50, function(er2, stat6) {
|
|
66322
66363
|
cb2(er2, er2 ? false : checkStat(stat6, options));
|
|
66323
66364
|
});
|
|
66324
66365
|
}
|
|
66325
|
-
function sync(
|
|
66326
|
-
return checkStat(fs40.statSync(
|
|
66366
|
+
function sync(path50, options) {
|
|
66367
|
+
return checkStat(fs40.statSync(path50), options);
|
|
66327
66368
|
}
|
|
66328
66369
|
function checkStat(stat6, options) {
|
|
66329
66370
|
return stat6.isFile() && checkMode(stat6, options);
|
|
@@ -66356,7 +66397,7 @@ var require_isexe = __commonJS({
|
|
|
66356
66397
|
}
|
|
66357
66398
|
module2.exports = isexe;
|
|
66358
66399
|
isexe.sync = sync;
|
|
66359
|
-
function isexe(
|
|
66400
|
+
function isexe(path50, options, cb2) {
|
|
66360
66401
|
if (typeof options === "function") {
|
|
66361
66402
|
cb2 = options;
|
|
66362
66403
|
options = {};
|
|
@@ -66366,7 +66407,7 @@ var require_isexe = __commonJS({
|
|
|
66366
66407
|
throw new TypeError("callback not provided");
|
|
66367
66408
|
}
|
|
66368
66409
|
return new Promise(function(resolve12, reject2) {
|
|
66369
|
-
isexe(
|
|
66410
|
+
isexe(path50, options || {}, function(er2, is3) {
|
|
66370
66411
|
if (er2) {
|
|
66371
66412
|
reject2(er2);
|
|
66372
66413
|
} else {
|
|
@@ -66375,7 +66416,7 @@ var require_isexe = __commonJS({
|
|
|
66375
66416
|
});
|
|
66376
66417
|
});
|
|
66377
66418
|
}
|
|
66378
|
-
core(
|
|
66419
|
+
core(path50, options || {}, function(er2, is3) {
|
|
66379
66420
|
if (er2) {
|
|
66380
66421
|
if (er2.code === "EACCES" || options && options.ignoreErrors) {
|
|
66381
66422
|
er2 = null;
|
|
@@ -66385,9 +66426,9 @@ var require_isexe = __commonJS({
|
|
|
66385
66426
|
cb2(er2, is3);
|
|
66386
66427
|
});
|
|
66387
66428
|
}
|
|
66388
|
-
function sync(
|
|
66429
|
+
function sync(path50, options) {
|
|
66389
66430
|
try {
|
|
66390
|
-
return core.sync(
|
|
66431
|
+
return core.sync(path50, options || {});
|
|
66391
66432
|
} catch (er2) {
|
|
66392
66433
|
if (options && options.ignoreErrors || er2.code === "EACCES") {
|
|
66393
66434
|
return false;
|
|
@@ -66403,7 +66444,7 @@ var require_isexe = __commonJS({
|
|
|
66403
66444
|
var require_which = __commonJS({
|
|
66404
66445
|
"node_modules/which/which.js"(exports2, module2) {
|
|
66405
66446
|
var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
|
|
66406
|
-
var
|
|
66447
|
+
var path50 = __require("path");
|
|
66407
66448
|
var COLON2 = isWindows ? ";" : ":";
|
|
66408
66449
|
var isexe = require_isexe();
|
|
66409
66450
|
var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
|
|
@@ -66441,7 +66482,7 @@ var require_which = __commonJS({
|
|
|
66441
66482
|
return opt.all && found.length ? resolve12(found) : reject2(getNotFoundError(cmd));
|
|
66442
66483
|
const ppRaw = pathEnv[i4];
|
|
66443
66484
|
const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
|
|
66444
|
-
const pCmd =
|
|
66485
|
+
const pCmd = path50.join(pathPart, cmd);
|
|
66445
66486
|
const p2 = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
|
|
66446
66487
|
resolve12(subStep(p2, i4, 0));
|
|
66447
66488
|
});
|
|
@@ -66468,7 +66509,7 @@ var require_which = __commonJS({
|
|
|
66468
66509
|
for (let i4 = 0; i4 < pathEnv.length; i4++) {
|
|
66469
66510
|
const ppRaw = pathEnv[i4];
|
|
66470
66511
|
const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
|
|
66471
|
-
const pCmd =
|
|
66512
|
+
const pCmd = path50.join(pathPart, cmd);
|
|
66472
66513
|
const p2 = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
|
|
66473
66514
|
for (let j2 = 0; j2 < pathExt.length; j2++) {
|
|
66474
66515
|
const cur = p2 + pathExt[j2];
|
|
@@ -66516,7 +66557,7 @@ var require_path_key = __commonJS({
|
|
|
66516
66557
|
var require_resolveCommand = __commonJS({
|
|
66517
66558
|
"node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) {
|
|
66518
66559
|
"use strict";
|
|
66519
|
-
var
|
|
66560
|
+
var path50 = __require("path");
|
|
66520
66561
|
var which = require_which();
|
|
66521
66562
|
var getPathKey = require_path_key();
|
|
66522
66563
|
function resolveCommandAttempt(parsed, withoutPathExt) {
|
|
@@ -66534,7 +66575,7 @@ var require_resolveCommand = __commonJS({
|
|
|
66534
66575
|
try {
|
|
66535
66576
|
resolved2 = which.sync(parsed.command, {
|
|
66536
66577
|
path: env3[getPathKey({ env: env3 })],
|
|
66537
|
-
pathExt: withoutPathExt ?
|
|
66578
|
+
pathExt: withoutPathExt ? path50.delimiter : void 0
|
|
66538
66579
|
});
|
|
66539
66580
|
} catch (e3) {
|
|
66540
66581
|
} finally {
|
|
@@ -66543,7 +66584,7 @@ var require_resolveCommand = __commonJS({
|
|
|
66543
66584
|
}
|
|
66544
66585
|
}
|
|
66545
66586
|
if (resolved2) {
|
|
66546
|
-
resolved2 =
|
|
66587
|
+
resolved2 = path50.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved2);
|
|
66547
66588
|
}
|
|
66548
66589
|
return resolved2;
|
|
66549
66590
|
}
|
|
@@ -66597,8 +66638,8 @@ var require_shebang_command = __commonJS({
|
|
|
66597
66638
|
if (!match) {
|
|
66598
66639
|
return null;
|
|
66599
66640
|
}
|
|
66600
|
-
const [
|
|
66601
|
-
const binary =
|
|
66641
|
+
const [path50, argument] = match[0].replace(/#! ?/, "").split(" ");
|
|
66642
|
+
const binary = path50.split("/").pop();
|
|
66602
66643
|
if (binary === "env") {
|
|
66603
66644
|
return argument;
|
|
66604
66645
|
}
|
|
@@ -66633,7 +66674,7 @@ var require_readShebang = __commonJS({
|
|
|
66633
66674
|
var require_parse = __commonJS({
|
|
66634
66675
|
"node_modules/cross-spawn/lib/parse.js"(exports2, module2) {
|
|
66635
66676
|
"use strict";
|
|
66636
|
-
var
|
|
66677
|
+
var path50 = __require("path");
|
|
66637
66678
|
var resolveCommand = require_resolveCommand();
|
|
66638
66679
|
var escape2 = require_escape();
|
|
66639
66680
|
var readShebang = require_readShebang();
|
|
@@ -66658,7 +66699,7 @@ var require_parse = __commonJS({
|
|
|
66658
66699
|
const needsShell = !isExecutableRegExp.test(commandFile);
|
|
66659
66700
|
if (parsed.options.forceShell || needsShell) {
|
|
66660
66701
|
const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile);
|
|
66661
|
-
parsed.command =
|
|
66702
|
+
parsed.command = path50.normalize(parsed.command);
|
|
66662
66703
|
parsed.command = escape2.command(parsed.command);
|
|
66663
66704
|
parsed.args = parsed.args.map((arg2) => escape2.argument(arg2, needsDoubleEscapeMetaChars));
|
|
66664
66705
|
const shellCommand = [parsed.command].concat(parsed.args).join(" ");
|
|
@@ -66790,7 +66831,7 @@ var require_strip_final_newline = __commonJS({
|
|
|
66790
66831
|
var require_npm_run_path = __commonJS({
|
|
66791
66832
|
"node_modules/shell-env/node_modules/npm-run-path/index.js"(exports2, module2) {
|
|
66792
66833
|
"use strict";
|
|
66793
|
-
var
|
|
66834
|
+
var path50 = __require("path");
|
|
66794
66835
|
var pathKey2 = require_path_key();
|
|
66795
66836
|
var npmRunPath = (options) => {
|
|
66796
66837
|
options = {
|
|
@@ -66800,16 +66841,16 @@ var require_npm_run_path = __commonJS({
|
|
|
66800
66841
|
...options
|
|
66801
66842
|
};
|
|
66802
66843
|
let previous;
|
|
66803
|
-
let cwdPath =
|
|
66844
|
+
let cwdPath = path50.resolve(options.cwd);
|
|
66804
66845
|
const result2 = [];
|
|
66805
66846
|
while (previous !== cwdPath) {
|
|
66806
|
-
result2.push(
|
|
66847
|
+
result2.push(path50.join(cwdPath, "node_modules/.bin"));
|
|
66807
66848
|
previous = cwdPath;
|
|
66808
|
-
cwdPath =
|
|
66849
|
+
cwdPath = path50.resolve(cwdPath, "..");
|
|
66809
66850
|
}
|
|
66810
|
-
const execPathDir =
|
|
66851
|
+
const execPathDir = path50.resolve(options.cwd, options.execPath, "..");
|
|
66811
66852
|
result2.push(execPathDir);
|
|
66812
|
-
return result2.concat(options.path).join(
|
|
66853
|
+
return result2.concat(options.path).join(path50.delimiter);
|
|
66813
66854
|
};
|
|
66814
66855
|
module2.exports = npmRunPath;
|
|
66815
66856
|
module2.exports.default = npmRunPath;
|
|
@@ -66819,9 +66860,9 @@ var require_npm_run_path = __commonJS({
|
|
|
66819
66860
|
...options
|
|
66820
66861
|
};
|
|
66821
66862
|
const env3 = { ...options.env };
|
|
66822
|
-
const
|
|
66823
|
-
options.path = env3[
|
|
66824
|
-
env3[
|
|
66863
|
+
const path51 = pathKey2({ env: env3 });
|
|
66864
|
+
options.path = env3[path51];
|
|
66865
|
+
env3[path51] = module2.exports(options);
|
|
66825
66866
|
return env3;
|
|
66826
66867
|
};
|
|
66827
66868
|
}
|
|
@@ -68003,7 +68044,7 @@ var require_command = __commonJS({
|
|
|
68003
68044
|
var require_execa = __commonJS({
|
|
68004
68045
|
"node_modules/shell-env/node_modules/execa/index.js"(exports2, module2) {
|
|
68005
68046
|
"use strict";
|
|
68006
|
-
var
|
|
68047
|
+
var path50 = __require("path");
|
|
68007
68048
|
var childProcess = __require("child_process");
|
|
68008
68049
|
var crossSpawn = require_cross_spawn();
|
|
68009
68050
|
var stripFinalNewline = require_strip_final_newline();
|
|
@@ -68045,7 +68086,7 @@ var require_execa = __commonJS({
|
|
|
68045
68086
|
};
|
|
68046
68087
|
options.env = getEnv(options);
|
|
68047
68088
|
options.stdio = normalizeStdio(options);
|
|
68048
|
-
if (process.platform === "win32" &&
|
|
68089
|
+
if (process.platform === "win32" && path50.basename(file2, ".exe") === "cmd") {
|
|
68049
68090
|
args2.unshift("/q");
|
|
68050
68091
|
}
|
|
68051
68092
|
return { file: file2, args: args2, options, parsed };
|
|
@@ -69577,13 +69618,13 @@ var require_tiktoken = __commonJS({
|
|
|
69577
69618
|
var wasm = require_tiktoken_bg();
|
|
69578
69619
|
var imports = {};
|
|
69579
69620
|
imports["./tiktoken_bg.js"] = wasm;
|
|
69580
|
-
var
|
|
69621
|
+
var path50 = __require("path");
|
|
69581
69622
|
var fs40 = __require("fs");
|
|
69582
|
-
var candidates = __dirname.split(
|
|
69583
|
-
const prefix = array3.slice(0, index2 + 1).join(
|
|
69584
|
-
if (!prefix.includes("node_modules" +
|
|
69623
|
+
var candidates = __dirname.split(path50.sep).reduce((memo, _4, index2, array3) => {
|
|
69624
|
+
const prefix = array3.slice(0, index2 + 1).join(path50.sep) + path50.sep;
|
|
69625
|
+
if (!prefix.includes("node_modules" + path50.sep)) {
|
|
69585
69626
|
memo.unshift(
|
|
69586
|
-
|
|
69627
|
+
path50.join(
|
|
69587
69628
|
prefix,
|
|
69588
69629
|
"node_modules",
|
|
69589
69630
|
"tiktoken",
|
|
@@ -69594,7 +69635,7 @@ var require_tiktoken = __commonJS({
|
|
|
69594
69635
|
}
|
|
69595
69636
|
return memo;
|
|
69596
69637
|
}, []);
|
|
69597
|
-
candidates.unshift(
|
|
69638
|
+
candidates.unshift(path50.join(__dirname, "./tiktoken_bg.wasm"));
|
|
69598
69639
|
var bytes = null;
|
|
69599
69640
|
for (const candidate of candidates) {
|
|
69600
69641
|
try {
|
|
@@ -69815,45 +69856,6 @@ var init_token_utils = __esm({
|
|
|
69815
69856
|
}
|
|
69816
69857
|
});
|
|
69817
69858
|
|
|
69818
|
-
// src/lib/security/redact-secrets.ts
|
|
69819
|
-
function redactSecretsInText(text3) {
|
|
69820
|
-
if (!text3) return text3;
|
|
69821
|
-
let out = text3;
|
|
69822
|
-
for (const re2 of SECRET_PATTERNS) {
|
|
69823
|
-
out = out.replace(re2, REDACTION);
|
|
69824
|
-
}
|
|
69825
|
-
return out;
|
|
69826
|
-
}
|
|
69827
|
-
function containsSecret(text3) {
|
|
69828
|
-
return SECRET_PATTERNS.some((re2) => {
|
|
69829
|
-
re2.lastIndex = 0;
|
|
69830
|
-
return re2.test(text3);
|
|
69831
|
-
});
|
|
69832
|
-
}
|
|
69833
|
-
var SECRET_PATTERNS, REDACTION;
|
|
69834
|
-
var init_redact_secrets = __esm({
|
|
69835
|
-
"src/lib/security/redact-secrets.ts"() {
|
|
69836
|
-
SECRET_PATTERNS = [
|
|
69837
|
-
// OpenAI (incl. project keys) + Anthropic
|
|
69838
|
-
/\bsk-(?:ant-|proj-)?[A-Za-z0-9_-]{20,}\b/g,
|
|
69839
|
-
// GitHub tokens (classic + fine-grained PAT)
|
|
69840
|
-
/\bgh[pousr]_[A-Za-z0-9]{36,}\b/g,
|
|
69841
|
-
/\bgithub_pat_[A-Za-z0-9_]{22,}\b/g,
|
|
69842
|
-
// AWS access key id
|
|
69843
|
-
/\bAKIA[0-9A-Z]{16}\b/g,
|
|
69844
|
-
// Google API key
|
|
69845
|
-
/\bAIza[0-9A-Za-z_-]{35}\b/g,
|
|
69846
|
-
// Slack tokens
|
|
69847
|
-
/\bxox[baprs]-[A-Za-z0-9-]{10,}\b/g,
|
|
69848
|
-
// JSON Web Token (header.payload.signature)
|
|
69849
|
-
/\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\b/g,
|
|
69850
|
-
// PEM private key blocks
|
|
69851
|
-
/-----BEGIN[A-Z ]*PRIVATE KEY-----[\s\S]*?-----END[A-Z ]*PRIVATE KEY-----/g
|
|
69852
|
-
];
|
|
69853
|
-
REDACTION = "[redacted secret]";
|
|
69854
|
-
}
|
|
69855
|
-
});
|
|
69856
|
-
|
|
69857
69859
|
// src/lib/ai/tool-model-output.ts
|
|
69858
69860
|
function extractImageMedia(output) {
|
|
69859
69861
|
if (!output || typeof output !== "object") return null;
|
|
@@ -117216,22 +117218,22 @@ var init_from = __esm({
|
|
|
117216
117218
|
init_file();
|
|
117217
117219
|
init_fetch_blob();
|
|
117218
117220
|
({ stat: stat2 } = fs13);
|
|
117219
|
-
blobFromSync = (
|
|
117220
|
-
blobFrom = (
|
|
117221
|
-
fileFrom = (
|
|
117222
|
-
fileFromSync = (
|
|
117223
|
-
fromBlob = (stat6,
|
|
117224
|
-
path:
|
|
117221
|
+
blobFromSync = (path50, type2) => fromBlob(statSync(path50), path50, type2);
|
|
117222
|
+
blobFrom = (path50, type2) => stat2(path50).then((stat6) => fromBlob(stat6, path50, type2));
|
|
117223
|
+
fileFrom = (path50, type2) => stat2(path50).then((stat6) => fromFile(stat6, path50, type2));
|
|
117224
|
+
fileFromSync = (path50, type2) => fromFile(statSync(path50), path50, type2);
|
|
117225
|
+
fromBlob = (stat6, path50, type2 = "") => new fetch_blob_default([new BlobDataItem({
|
|
117226
|
+
path: path50,
|
|
117225
117227
|
size: stat6.size,
|
|
117226
117228
|
lastModified: stat6.mtimeMs,
|
|
117227
117229
|
start: 0
|
|
117228
117230
|
})], { type: type2 });
|
|
117229
|
-
fromFile = (stat6,
|
|
117230
|
-
path:
|
|
117231
|
+
fromFile = (stat6, path50, type2 = "") => new file_default([new BlobDataItem({
|
|
117232
|
+
path: path50,
|
|
117231
117233
|
size: stat6.size,
|
|
117232
117234
|
lastModified: stat6.mtimeMs,
|
|
117233
117235
|
start: 0
|
|
117234
|
-
})], basename2(
|
|
117236
|
+
})], basename2(path50), { type: type2, lastModified: stat6.mtimeMs });
|
|
117235
117237
|
BlobDataItem = class _BlobDataItem {
|
|
117236
117238
|
#path;
|
|
117237
117239
|
#start;
|
|
@@ -122412,7 +122414,7 @@ var require_util2 = __commonJS({
|
|
|
122412
122414
|
exports2.getWellKnownCertificateConfigFileLocation = getWellKnownCertificateConfigFileLocation;
|
|
122413
122415
|
var fs40 = __require("fs");
|
|
122414
122416
|
var os12 = __require("os");
|
|
122415
|
-
var
|
|
122417
|
+
var path50 = __require("path");
|
|
122416
122418
|
var WELL_KNOWN_CERTIFICATE_CONFIG_FILE = "certificate_config.json";
|
|
122417
122419
|
var CLOUDSDK_CONFIG_DIRECTORY = "gcloud";
|
|
122418
122420
|
function snakeToCamel(str) {
|
|
@@ -122505,8 +122507,8 @@ var require_util2 = __commonJS({
|
|
|
122505
122507
|
}
|
|
122506
122508
|
}
|
|
122507
122509
|
function getWellKnownCertificateConfigFileLocation() {
|
|
122508
|
-
const configDir = process.env.CLOUDSDK_CONFIG || (_isWindows() ?
|
|
122509
|
-
return
|
|
122510
|
+
const configDir = process.env.CLOUDSDK_CONFIG || (_isWindows() ? path50.join(process.env.APPDATA || "", CLOUDSDK_CONFIG_DIRECTORY) : path50.join(process.env.HOME || "", ".config", CLOUDSDK_CONFIG_DIRECTORY));
|
|
122511
|
+
return path50.join(configDir, WELL_KNOWN_CERTIFICATE_CONFIG_FILE);
|
|
122510
122512
|
}
|
|
122511
122513
|
function _isWindows() {
|
|
122512
122514
|
return os12.platform().startsWith("win");
|
|
@@ -124452,7 +124454,7 @@ var require_getCredentials = __commonJS({
|
|
|
124452
124454
|
"use strict";
|
|
124453
124455
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
124454
124456
|
exports2.getCredentials = getCredentials;
|
|
124455
|
-
var
|
|
124457
|
+
var path50 = __require("path");
|
|
124456
124458
|
var fs40 = __require("fs");
|
|
124457
124459
|
var util_1 = __require("util");
|
|
124458
124460
|
var errorWithCode_1 = require_errorWithCode();
|
|
@@ -124524,7 +124526,7 @@ var require_getCredentials = __commonJS({
|
|
|
124524
124526
|
* @returns An instance of a class that implements ICredentialsProvider.
|
|
124525
124527
|
*/
|
|
124526
124528
|
static create(keyFilePath) {
|
|
124527
|
-
const keyFileExtension =
|
|
124529
|
+
const keyFileExtension = path50.extname(keyFilePath);
|
|
124528
124530
|
switch (keyFileExtension) {
|
|
124529
124531
|
case ExtensionFiles.JSON:
|
|
124530
124532
|
return new JsonCredentialsProvider(keyFilePath);
|
|
@@ -127893,7 +127895,7 @@ var require_googleauth = __commonJS({
|
|
|
127893
127895
|
var gaxios_1 = require_src3();
|
|
127894
127896
|
var gcpMetadata = require_src5();
|
|
127895
127897
|
var os12 = __require("os");
|
|
127896
|
-
var
|
|
127898
|
+
var path50 = __require("path");
|
|
127897
127899
|
var crypto_1 = require_crypto3();
|
|
127898
127900
|
var computeclient_1 = require_computeclient();
|
|
127899
127901
|
var idtokenclient_1 = require_idtokenclient();
|
|
@@ -128178,19 +128180,19 @@ var require_googleauth = __commonJS({
|
|
|
128178
128180
|
if (!configDir) {
|
|
128179
128181
|
if (this._isWindows()) {
|
|
128180
128182
|
if (process.env["APPDATA"]) {
|
|
128181
|
-
configDir =
|
|
128183
|
+
configDir = path50.join(process.env["APPDATA"], "gcloud");
|
|
128182
128184
|
}
|
|
128183
128185
|
} else {
|
|
128184
128186
|
const home = process.env["HOME"];
|
|
128185
128187
|
if (home) {
|
|
128186
|
-
configDir =
|
|
128188
|
+
configDir = path50.join(home, ".config", "gcloud");
|
|
128187
128189
|
}
|
|
128188
128190
|
}
|
|
128189
128191
|
}
|
|
128190
128192
|
if (!configDir) {
|
|
128191
128193
|
return null;
|
|
128192
128194
|
}
|
|
128193
|
-
const location2 =
|
|
128195
|
+
const location2 = path50.join(configDir, "application_default_credentials.json");
|
|
128194
128196
|
if (!fs40.existsSync(location2)) {
|
|
128195
128197
|
return null;
|
|
128196
128198
|
}
|
|
@@ -128545,7 +128547,7 @@ var require_googleauth = __commonJS({
|
|
|
128545
128547
|
if (this.jsonContent) {
|
|
128546
128548
|
return this._cacheClientFromJSON(this.jsonContent, this.clientOptions);
|
|
128547
128549
|
} else if (this.keyFilename) {
|
|
128548
|
-
const filePath =
|
|
128550
|
+
const filePath = path50.resolve(this.keyFilename);
|
|
128549
128551
|
const stream2 = fs40.createReadStream(filePath);
|
|
128550
128552
|
return await this.fromStreamAsync(stream2, this.clientOptions);
|
|
128551
128553
|
} else if (this.apiKey) {
|
|
@@ -145323,18 +145325,18 @@ function createAzure(options = {}) {
|
|
|
145323
145325
|
});
|
|
145324
145326
|
const apiVersion = (_a30 = options.apiVersion) != null ? _a30 : "v1";
|
|
145325
145327
|
const useAzureOpenAIEndpoint = isAzureOpenAIBaseURL(options.baseURL);
|
|
145326
|
-
const url2 = ({ path:
|
|
145328
|
+
const url2 = ({ path: path50, modelId }) => {
|
|
145327
145329
|
var _a210;
|
|
145328
145330
|
const baseUrlPrefix = withoutTrailingSlash(
|
|
145329
145331
|
(_a210 = options.baseURL) != null ? _a210 : `https://${getResourceName()}.openai.azure.com/openai`
|
|
145330
145332
|
);
|
|
145331
145333
|
let fullUrl;
|
|
145332
145334
|
if (options.useDeploymentBasedUrls) {
|
|
145333
|
-
fullUrl = new URL(`${baseUrlPrefix}/deployments/${modelId}${
|
|
145335
|
+
fullUrl = new URL(`${baseUrlPrefix}/deployments/${modelId}${path50}`);
|
|
145334
145336
|
} else if (!useAzureOpenAIEndpoint) {
|
|
145335
|
-
fullUrl = new URL(`${baseUrlPrefix}${
|
|
145337
|
+
fullUrl = new URL(`${baseUrlPrefix}${path50}`);
|
|
145336
145338
|
} else {
|
|
145337
|
-
fullUrl = new URL(`${baseUrlPrefix}/v1${
|
|
145339
|
+
fullUrl = new URL(`${baseUrlPrefix}/v1${path50}`);
|
|
145338
145340
|
}
|
|
145339
145341
|
if (useAzureOpenAIEndpoint || options.useDeploymentBasedUrls) {
|
|
145340
145342
|
fullUrl.searchParams.set("api-version", apiVersion);
|
|
@@ -145844,8 +145846,8 @@ var init_parseUtil = __esm({
|
|
|
145844
145846
|
init_errors4();
|
|
145845
145847
|
init_en2();
|
|
145846
145848
|
makeIssue = (params) => {
|
|
145847
|
-
const { data, path:
|
|
145848
|
-
const fullPath = [...
|
|
145849
|
+
const { data, path: path50, errorMaps, issueData } = params;
|
|
145850
|
+
const fullPath = [...path50, ...issueData.path || []];
|
|
145849
145851
|
const fullIssue = {
|
|
145850
145852
|
...issueData,
|
|
145851
145853
|
path: fullPath
|
|
@@ -146125,11 +146127,11 @@ var init_types = __esm({
|
|
|
146125
146127
|
init_parseUtil();
|
|
146126
146128
|
init_util2();
|
|
146127
146129
|
ParseInputLazyPath = class {
|
|
146128
|
-
constructor(parent, value,
|
|
146130
|
+
constructor(parent, value, path50, key) {
|
|
146129
146131
|
this._cachedPath = [];
|
|
146130
146132
|
this.parent = parent;
|
|
146131
146133
|
this.data = value;
|
|
146132
|
-
this._path =
|
|
146134
|
+
this._path = path50;
|
|
146133
146135
|
this._key = key;
|
|
146134
146136
|
}
|
|
146135
146137
|
get path() {
|
|
@@ -151625,7 +151627,7 @@ function createOpenRouter(options = {}) {
|
|
|
151625
151627
|
);
|
|
151626
151628
|
const createChatModel = (modelId, settings = {}) => new OpenRouterChatLanguageModel(modelId, settings, {
|
|
151627
151629
|
provider: "openrouter.chat",
|
|
151628
|
-
url: ({ path:
|
|
151630
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
151629
151631
|
headers: getHeaders,
|
|
151630
151632
|
compatibility,
|
|
151631
151633
|
fetch: options.fetch,
|
|
@@ -151633,7 +151635,7 @@ function createOpenRouter(options = {}) {
|
|
|
151633
151635
|
});
|
|
151634
151636
|
const createCompletionModel = (modelId, settings = {}) => new OpenRouterCompletionLanguageModel(modelId, settings, {
|
|
151635
151637
|
provider: "openrouter.completion",
|
|
151636
|
-
url: ({ path:
|
|
151638
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
151637
151639
|
headers: getHeaders,
|
|
151638
151640
|
compatibility,
|
|
151639
151641
|
fetch: options.fetch,
|
|
@@ -151641,21 +151643,21 @@ function createOpenRouter(options = {}) {
|
|
|
151641
151643
|
});
|
|
151642
151644
|
const createEmbeddingModel = (modelId, settings = {}) => new OpenRouterEmbeddingModel(modelId, settings, {
|
|
151643
151645
|
provider: "openrouter.embedding",
|
|
151644
|
-
url: ({ path:
|
|
151646
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
151645
151647
|
headers: getHeaders,
|
|
151646
151648
|
fetch: options.fetch,
|
|
151647
151649
|
extraBody: options.extraBody
|
|
151648
151650
|
});
|
|
151649
151651
|
const createImageModel = (modelId, settings = {}) => new OpenRouterImageModel(modelId, settings, {
|
|
151650
151652
|
provider: "openrouter.image",
|
|
151651
|
-
url: ({ path:
|
|
151653
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
151652
151654
|
headers: getHeaders,
|
|
151653
151655
|
fetch: options.fetch,
|
|
151654
151656
|
extraBody: options.extraBody
|
|
151655
151657
|
});
|
|
151656
151658
|
const createVideoModel = (modelId, settings = {}) => new OpenRouterVideoModel(modelId, settings, {
|
|
151657
151659
|
provider: "openrouter.video",
|
|
151658
|
-
url: ({ path:
|
|
151660
|
+
url: ({ path: path50 }) => `${baseURL}${path50}`,
|
|
151659
151661
|
headers: getHeaders,
|
|
151660
151662
|
fetch: options.fetch,
|
|
151661
151663
|
extraBody: options.extraBody
|
|
@@ -162373,14 +162375,14 @@ var init_readFile = __esm({
|
|
|
162373
162375
|
"node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/readFile.js"() {
|
|
162374
162376
|
filePromises = {};
|
|
162375
162377
|
fileIntercept = {};
|
|
162376
|
-
readFile2 = (
|
|
162377
|
-
if (fileIntercept[
|
|
162378
|
-
return fileIntercept[
|
|
162378
|
+
readFile2 = (path50, options) => {
|
|
162379
|
+
if (fileIntercept[path50] !== void 0) {
|
|
162380
|
+
return fileIntercept[path50];
|
|
162379
162381
|
}
|
|
162380
|
-
if (!filePromises[
|
|
162381
|
-
filePromises[
|
|
162382
|
+
if (!filePromises[path50] || options?.ignoreCache) {
|
|
162383
|
+
filePromises[path50] = fsReadFile(path50, "utf8");
|
|
162382
162384
|
}
|
|
162383
|
-
return filePromises[
|
|
162385
|
+
return filePromises[path50];
|
|
162384
162386
|
};
|
|
162385
162387
|
}
|
|
162386
162388
|
});
|
|
@@ -162803,8 +162805,8 @@ var init_createConfigValueProvider = __esm({
|
|
|
162803
162805
|
return endpoint.url.href;
|
|
162804
162806
|
}
|
|
162805
162807
|
if ("hostname" in endpoint) {
|
|
162806
|
-
const { protocol, hostname: hostname3, port, path:
|
|
162807
|
-
return `${protocol}//${hostname3}${port ? ":" + port : ""}${
|
|
162808
|
+
const { protocol, hostname: hostname3, port, path: path50 } = endpoint;
|
|
162809
|
+
return `${protocol}//${hostname3}${port ? ":" + port : ""}${path50}`;
|
|
162808
162810
|
}
|
|
162809
162811
|
}
|
|
162810
162812
|
return endpoint;
|
|
@@ -168790,13 +168792,13 @@ function __disposeResources(env3) {
|
|
|
168790
168792
|
}
|
|
168791
168793
|
return next();
|
|
168792
168794
|
}
|
|
168793
|
-
function __rewriteRelativeImportExtension(
|
|
168794
|
-
if (typeof
|
|
168795
|
-
return
|
|
168795
|
+
function __rewriteRelativeImportExtension(path50, preserveJsx) {
|
|
168796
|
+
if (typeof path50 === "string" && /^\.\.?\//.test(path50)) {
|
|
168797
|
+
return path50.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m3, tsx, d2, ext, cm) {
|
|
168796
168798
|
return tsx ? preserveJsx ? ".jsx" : ".js" : d2 && (!ext || !cm) ? m3 : d2 + ext + "." + cm.toLowerCase() + "js";
|
|
168797
168799
|
});
|
|
168798
168800
|
}
|
|
168799
|
-
return
|
|
168801
|
+
return path50;
|
|
168800
168802
|
}
|
|
168801
168803
|
var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
|
|
168802
168804
|
var init_tslib_es6 = __esm({
|
|
@@ -177399,8 +177401,8 @@ var require_main4 = __commonJS({
|
|
|
177399
177401
|
});
|
|
177400
177402
|
|
|
177401
177403
|
// node_modules/iceberg-js/dist/index.mjs
|
|
177402
|
-
function buildUrl(baseUrl,
|
|
177403
|
-
const url2 = new URL(
|
|
177404
|
+
function buildUrl(baseUrl, path50, query) {
|
|
177405
|
+
const url2 = new URL(path50, baseUrl);
|
|
177404
177406
|
if (query) {
|
|
177405
177407
|
for (const [key, value] of Object.entries(query)) {
|
|
177406
177408
|
if (value !== void 0) {
|
|
@@ -177430,12 +177432,12 @@ function createFetchClient(options) {
|
|
|
177430
177432
|
return {
|
|
177431
177433
|
async request({
|
|
177432
177434
|
method,
|
|
177433
|
-
path:
|
|
177435
|
+
path: path50,
|
|
177434
177436
|
query,
|
|
177435
177437
|
body,
|
|
177436
177438
|
headers
|
|
177437
177439
|
}) {
|
|
177438
|
-
const url2 = buildUrl(options.baseUrl,
|
|
177440
|
+
const url2 = buildUrl(options.baseUrl, path50, query);
|
|
177439
177441
|
const authHeaders = await buildAuthHeaders(options.auth);
|
|
177440
177442
|
const res = await fetchFn(url2, {
|
|
177441
177443
|
method,
|
|
@@ -178103,7 +178105,7 @@ var init_dist18 = __esm({
|
|
|
178103
178105
|
if (bucketName.includes("/") || bucketName.includes("\\")) return false;
|
|
178104
178106
|
return /^[\w!.\*'() &$@=;:+,?-]+$/.test(bucketName);
|
|
178105
178107
|
};
|
|
178106
|
-
encodeStoragePath = (
|
|
178108
|
+
encodeStoragePath = (path50) => path50.split("/").map(encodeURIComponent).join("/");
|
|
178107
178109
|
_getErrorMessage = (err2) => {
|
|
178108
178110
|
if (typeof err2 === "object" && err2 !== null) {
|
|
178109
178111
|
const e3 = err2;
|
|
@@ -178335,7 +178337,7 @@ var init_dist18 = __esm({
|
|
|
178335
178337
|
* @param path The relative file path. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload.
|
|
178336
178338
|
* @param fileBody The body of the file to be stored in the bucket.
|
|
178337
178339
|
*/
|
|
178338
|
-
async uploadOrUpdate(method,
|
|
178340
|
+
async uploadOrUpdate(method, path50, fileBody, fileOptions) {
|
|
178339
178341
|
var _this = this;
|
|
178340
178342
|
return _this.handleOperation(async () => {
|
|
178341
178343
|
let body;
|
|
@@ -178359,7 +178361,7 @@ var init_dist18 = __esm({
|
|
|
178359
178361
|
if ((typeof ReadableStream !== "undefined" && body instanceof ReadableStream || body && typeof body === "object" && "pipe" in body && typeof body.pipe === "function") && !options.duplex) options.duplex = "half";
|
|
178360
178362
|
}
|
|
178361
178363
|
if (fileOptions === null || fileOptions === void 0 ? void 0 : fileOptions.headers) for (const [key, value] of Object.entries(fileOptions.headers)) headers = setHeader(headers, key, value);
|
|
178362
|
-
const cleanPath = _this._removeEmptyFolders(
|
|
178364
|
+
const cleanPath = _this._removeEmptyFolders(path50);
|
|
178363
178365
|
const _path = _this._getFinalPath(cleanPath);
|
|
178364
178366
|
const data = await (method == "PUT" ? put : post)(_this.fetch, `${_this.url}/object/${_path}`, body, _objectSpread22({ headers }, (options === null || options === void 0 ? void 0 : options.duplex) ? { duplex: options.duplex } : {}));
|
|
178365
178367
|
return {
|
|
@@ -178436,8 +178438,8 @@ var init_dist18 = __esm({
|
|
|
178436
178438
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178437
178439
|
* - For React Native, using either `Blob`, `File` or `FormData` does not work as intended. Upload file using `ArrayBuffer` from base64 file data instead, see example below.
|
|
178438
178440
|
*/
|
|
178439
|
-
async upload(
|
|
178440
|
-
return this.uploadOrUpdate("POST",
|
|
178441
|
+
async upload(path50, fileBody, fileOptions) {
|
|
178442
|
+
return this.uploadOrUpdate("POST", path50, fileBody, fileOptions);
|
|
178441
178443
|
}
|
|
178442
178444
|
/**
|
|
178443
178445
|
* Upload a file with a token generated from `createSignedUploadUrl`.
|
|
@@ -178477,9 +178479,9 @@ var init_dist18 = __esm({
|
|
|
178477
178479
|
* - `objects` table permissions: none
|
|
178478
178480
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178479
178481
|
*/
|
|
178480
|
-
async uploadToSignedUrl(
|
|
178482
|
+
async uploadToSignedUrl(path50, token, fileBody, fileOptions) {
|
|
178481
178483
|
var _this3 = this;
|
|
178482
|
-
const cleanPath = _this3._removeEmptyFolders(
|
|
178484
|
+
const cleanPath = _this3._removeEmptyFolders(path50);
|
|
178483
178485
|
const _path = _this3._getFinalPath(cleanPath);
|
|
178484
178486
|
const url2 = new URL(_this3.url + `/object/upload/sign/${_path}`);
|
|
178485
178487
|
url2.searchParams.set("token", token);
|
|
@@ -178548,10 +178550,10 @@ var init_dist18 = __esm({
|
|
|
178548
178550
|
* - `objects` table permissions: `insert`
|
|
178549
178551
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178550
178552
|
*/
|
|
178551
|
-
async createSignedUploadUrl(
|
|
178553
|
+
async createSignedUploadUrl(path50, options) {
|
|
178552
178554
|
var _this4 = this;
|
|
178553
178555
|
return _this4.handleOperation(async () => {
|
|
178554
|
-
let _path = _this4._getFinalPath(
|
|
178556
|
+
let _path = _this4._getFinalPath(path50);
|
|
178555
178557
|
const headers = _objectSpread22({}, _this4.headers);
|
|
178556
178558
|
if (options === null || options === void 0 ? void 0 : options.upsert) headers["x-upsert"] = "true";
|
|
178557
178559
|
const data = await post(_this4.fetch, `${_this4.url}/object/upload/sign/${_path}`, {}, { headers });
|
|
@@ -178560,7 +178562,7 @@ var init_dist18 = __esm({
|
|
|
178560
178562
|
if (!token) throw new StorageError("No token returned by API");
|
|
178561
178563
|
return {
|
|
178562
178564
|
signedUrl: url2.toString(),
|
|
178563
|
-
path:
|
|
178565
|
+
path: path50,
|
|
178564
178566
|
token
|
|
178565
178567
|
};
|
|
178566
178568
|
});
|
|
@@ -178620,8 +178622,8 @@ var init_dist18 = __esm({
|
|
|
178620
178622
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178621
178623
|
* - For React Native, using either `Blob`, `File` or `FormData` does not work as intended. Update file using `ArrayBuffer` from base64 file data instead, see example below.
|
|
178622
178624
|
*/
|
|
178623
|
-
async update(
|
|
178624
|
-
return this.uploadOrUpdate("PUT",
|
|
178625
|
+
async update(path50, fileBody, fileOptions) {
|
|
178626
|
+
return this.uploadOrUpdate("PUT", path50, fileBody, fileOptions);
|
|
178625
178627
|
}
|
|
178626
178628
|
/**
|
|
178627
178629
|
* Moves an existing file to a new path in the same bucket.
|
|
@@ -178772,10 +178774,10 @@ var init_dist18 = __esm({
|
|
|
178772
178774
|
* - `objects` table permissions: `select`
|
|
178773
178775
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178774
178776
|
*/
|
|
178775
|
-
async createSignedUrl(
|
|
178777
|
+
async createSignedUrl(path50, expiresIn, options) {
|
|
178776
178778
|
var _this8 = this;
|
|
178777
178779
|
return _this8.handleOperation(async () => {
|
|
178778
|
-
let _path = _this8._getFinalPath(
|
|
178780
|
+
let _path = _this8._getFinalPath(path50);
|
|
178779
178781
|
const hasTransform = typeof (options === null || options === void 0 ? void 0 : options.transform) === "object" && options.transform !== null && Object.keys(options.transform).length > 0;
|
|
178780
178782
|
let data = await post(_this8.fetch, `${_this8.url}/object/sign/${_path}`, _objectSpread22({ expiresIn }, hasTransform ? { transform: options.transform } : {}), { headers: _this8.headers });
|
|
178781
178783
|
const query = new URLSearchParams();
|
|
@@ -178910,13 +178912,13 @@ var init_dist18 = __esm({
|
|
|
178910
178912
|
* - `objects` table permissions: `select`
|
|
178911
178913
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
178912
178914
|
*/
|
|
178913
|
-
download(
|
|
178915
|
+
download(path50, options, parameters) {
|
|
178914
178916
|
const renderPath = typeof (options === null || options === void 0 ? void 0 : options.transform) === "object" && options.transform !== null && Object.keys(options.transform).length > 0 ? "render/image/authenticated" : "object";
|
|
178915
178917
|
const query = new URLSearchParams();
|
|
178916
178918
|
if (options === null || options === void 0 ? void 0 : options.transform) this.applyTransformOptsToQuery(query, options.transform);
|
|
178917
178919
|
if ((options === null || options === void 0 ? void 0 : options.cacheNonce) != null) query.set("cacheNonce", String(options.cacheNonce));
|
|
178918
178920
|
const queryString = query.toString();
|
|
178919
|
-
const _path = this._getFinalPath(
|
|
178921
|
+
const _path = this._getFinalPath(path50);
|
|
178920
178922
|
const downloadFn = () => get(this.fetch, `${this.url}/${renderPath}/${_path}${queryString ? `?${queryString}` : ""}`, {
|
|
178921
178923
|
headers: this.headers,
|
|
178922
178924
|
noResolveJson: true
|
|
@@ -178947,9 +178949,9 @@ var init_dist18 = __esm({
|
|
|
178947
178949
|
* }
|
|
178948
178950
|
* ```
|
|
178949
178951
|
*/
|
|
178950
|
-
async info(
|
|
178952
|
+
async info(path50) {
|
|
178951
178953
|
var _this10 = this;
|
|
178952
|
-
const _path = _this10._getFinalPath(
|
|
178954
|
+
const _path = _this10._getFinalPath(path50);
|
|
178953
178955
|
return _this10.handleOperation(async () => {
|
|
178954
178956
|
return recursiveToCamel(await get(_this10.fetch, `${_this10.url}/object/info/${_path}`, { headers: _this10.headers }));
|
|
178955
178957
|
});
|
|
@@ -178970,9 +178972,9 @@ var init_dist18 = __esm({
|
|
|
178970
178972
|
* .exists('folder/avatar1.png')
|
|
178971
178973
|
* ```
|
|
178972
178974
|
*/
|
|
178973
|
-
async exists(
|
|
178975
|
+
async exists(path50) {
|
|
178974
178976
|
var _this11 = this;
|
|
178975
|
-
const _path = _this11._getFinalPath(
|
|
178977
|
+
const _path = _this11._getFinalPath(path50);
|
|
178976
178978
|
try {
|
|
178977
178979
|
await head(_this11.fetch, `${_this11.url}/object/${_path}`, { headers: _this11.headers });
|
|
178978
178980
|
return {
|
|
@@ -179051,8 +179053,8 @@ var init_dist18 = __esm({
|
|
|
179051
179053
|
* - `objects` table permissions: none
|
|
179052
179054
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
179053
179055
|
*/
|
|
179054
|
-
getPublicUrl(
|
|
179055
|
-
const _path = this._getFinalPath(
|
|
179056
|
+
getPublicUrl(path50, options) {
|
|
179057
|
+
const _path = this._getFinalPath(path50);
|
|
179056
179058
|
const query = new URLSearchParams();
|
|
179057
179059
|
if (options === null || options === void 0 ? void 0 : options.download) query.set("download", options.download === true ? "" : options.download);
|
|
179058
179060
|
if (options === null || options === void 0 ? void 0 : options.transform) this.applyTransformOptsToQuery(query, options.transform);
|
|
@@ -179141,10 +179143,10 @@ var init_dist18 = __esm({
|
|
|
179141
179143
|
* .purgeCache('folder/avatar1.png', { transformations: true })
|
|
179142
179144
|
* ```
|
|
179143
179145
|
*/
|
|
179144
|
-
async purgeCache(
|
|
179146
|
+
async purgeCache(path50, options, parameters) {
|
|
179145
179147
|
var _this13 = this;
|
|
179146
179148
|
return _this13.handleOperation(async () => {
|
|
179147
|
-
const _path = encodeStoragePath(_this13._getFinalPath(
|
|
179149
|
+
const _path = encodeStoragePath(_this13._getFinalPath(path50));
|
|
179148
179150
|
const query = new URLSearchParams();
|
|
179149
179151
|
if (options === null || options === void 0 ? void 0 : options.transformations) query.set("transformations", "true");
|
|
179150
179152
|
const queryString = query.toString();
|
|
@@ -179242,13 +179244,13 @@ var init_dist18 = __esm({
|
|
|
179242
179244
|
* - `objects` table permissions: `select`
|
|
179243
179245
|
* - Refer to the [Storage guide](/docs/guides/storage/security/access-control) on how access control works
|
|
179244
179246
|
*/
|
|
179245
|
-
async list(
|
|
179247
|
+
async list(path50, options, parameters) {
|
|
179246
179248
|
var _this14 = this;
|
|
179247
179249
|
return _this14.handleOperation(async () => {
|
|
179248
179250
|
const sortBy2 = (options === null || options === void 0 ? void 0 : options.sortBy) ? _objectSpread22(_objectSpread22({}, DEFAULT_SEARCH_OPTIONS.sortBy), options.sortBy) : DEFAULT_SEARCH_OPTIONS.sortBy;
|
|
179249
179251
|
const body = _objectSpread22(_objectSpread22(_objectSpread22({}, DEFAULT_SEARCH_OPTIONS), options), {}, {
|
|
179250
179252
|
sortBy: sortBy2,
|
|
179251
|
-
prefix:
|
|
179253
|
+
prefix: path50 || ""
|
|
179252
179254
|
});
|
|
179253
179255
|
return await post(_this14.fetch, `${_this14.url}/object/list/${_this14.bucketId}`, body, { headers: _this14.headers }, parameters);
|
|
179254
179256
|
});
|
|
@@ -179314,11 +179316,11 @@ var init_dist18 = __esm({
|
|
|
179314
179316
|
if (typeof Buffer !== "undefined") return Buffer.from(data).toString("base64");
|
|
179315
179317
|
return btoa(data);
|
|
179316
179318
|
}
|
|
179317
|
-
_getFinalPath(
|
|
179318
|
-
return `${this.bucketId}/${
|
|
179319
|
+
_getFinalPath(path50) {
|
|
179320
|
+
return `${this.bucketId}/${path50.replace(/^\/+/, "")}`;
|
|
179319
179321
|
}
|
|
179320
|
-
_removeEmptyFolders(
|
|
179321
|
-
return
|
|
179322
|
+
_removeEmptyFolders(path50) {
|
|
179323
|
+
return path50.replace(/^\/|\/$/g, "").replace(/\/+/g, "/");
|
|
179322
179324
|
}
|
|
179323
179325
|
/** Modifies the `query`, appending values the from `transform` */
|
|
179324
179326
|
applyTransformOptsToQuery(query, transform2) {
|
|
@@ -181420,9 +181422,9 @@ var require_helpers2 = __commonJS({
|
|
|
181420
181422
|
const fragment = hashIndex === -1 ? "" : redirectTo.slice(hashIndex);
|
|
181421
181423
|
const queryIndex = base.indexOf("?");
|
|
181422
181424
|
if (queryIndex !== -1) {
|
|
181423
|
-
const
|
|
181425
|
+
const path50 = base.slice(0, queryIndex);
|
|
181424
181426
|
const remaining = base.slice(queryIndex + 1).split("&").filter((pair) => pair !== "" && pair !== constants_1.PKCE_FLOW_ID_PARAM && !pair.startsWith(`${constants_1.PKCE_FLOW_ID_PARAM}=`));
|
|
181425
|
-
base = remaining.length > 0 ? `${
|
|
181427
|
+
base = remaining.length > 0 ? `${path50}?${remaining.join("&")}` : path50;
|
|
181426
181428
|
}
|
|
181427
181429
|
const separator = base.includes("?") ? "&" : "?";
|
|
181428
181430
|
return `${base}${separator}${constants_1.PKCE_FLOW_ID_PARAM}=${encodeURIComponent(flowId)}${fragment}`;
|
|
@@ -199482,11 +199484,11 @@ var require_mime_types = __commonJS({
|
|
|
199482
199484
|
}
|
|
199483
199485
|
return exts[0];
|
|
199484
199486
|
}
|
|
199485
|
-
function lookup2(
|
|
199486
|
-
if (!
|
|
199487
|
+
function lookup2(path50) {
|
|
199488
|
+
if (!path50 || typeof path50 !== "string") {
|
|
199487
199489
|
return false;
|
|
199488
199490
|
}
|
|
199489
|
-
var extension2 = extname2("x." +
|
|
199491
|
+
var extension2 = extname2("x." + path50).toLowerCase().substr(1);
|
|
199490
199492
|
if (!extension2) {
|
|
199491
199493
|
return false;
|
|
199492
199494
|
}
|
|
@@ -200591,7 +200593,7 @@ var require_form_data = __commonJS({
|
|
|
200591
200593
|
"use strict";
|
|
200592
200594
|
var CombinedStream = require_combined_stream();
|
|
200593
200595
|
var util2 = __require("util");
|
|
200594
|
-
var
|
|
200596
|
+
var path50 = __require("path");
|
|
200595
200597
|
var http3 = __require("http");
|
|
200596
200598
|
var https2 = __require("https");
|
|
200597
200599
|
var parseUrl2 = __require("url").parse;
|
|
@@ -200722,11 +200724,11 @@ var require_form_data = __commonJS({
|
|
|
200722
200724
|
FormData4.prototype._getContentDisposition = function(value, options) {
|
|
200723
200725
|
var filename;
|
|
200724
200726
|
if (typeof options.filepath === "string") {
|
|
200725
|
-
filename =
|
|
200727
|
+
filename = path50.normalize(options.filepath).replace(/\\/g, "/");
|
|
200726
200728
|
} else if (options.filename || value && (value.name || value.path)) {
|
|
200727
|
-
filename =
|
|
200729
|
+
filename = path50.basename(options.filename || value && (value.name || value.path));
|
|
200728
200730
|
} else if (value && value.readable && hasOwn3(value, "httpVersion")) {
|
|
200729
|
-
filename =
|
|
200731
|
+
filename = path50.basename(value.client._httpMessage.path || "");
|
|
200730
200732
|
}
|
|
200731
200733
|
if (filename) {
|
|
200732
200734
|
return 'filename="' + escapeHeaderParam(filename) + '"';
|
|
@@ -201900,7 +201902,7 @@ var require_axios = __commonJS({
|
|
|
201900
201902
|
var https2 = __require("https");
|
|
201901
201903
|
var http22 = __require("http2");
|
|
201902
201904
|
var util2 = __require("util");
|
|
201903
|
-
var
|
|
201905
|
+
var path50 = __require("path");
|
|
201904
201906
|
var followRedirects = require_follow_redirects();
|
|
201905
201907
|
var zlib4 = __require("zlib");
|
|
201906
201908
|
var stream2 = __require("stream");
|
|
@@ -202968,9 +202970,9 @@ var require_axios = __commonJS({
|
|
|
202968
202970
|
function removeBrackets(key) {
|
|
202969
202971
|
return utils$1.endsWith(key, "[]") ? key.slice(0, -2) : key;
|
|
202970
202972
|
}
|
|
202971
|
-
function renderKey(
|
|
202972
|
-
if (!
|
|
202973
|
-
return
|
|
202973
|
+
function renderKey(path51, key, dots) {
|
|
202974
|
+
if (!path51) return key;
|
|
202975
|
+
return path51.concat(key).map(function each2(token, i4) {
|
|
202974
202976
|
token = removeBrackets(token);
|
|
202975
202977
|
return !dots && i4 ? "[" + token + "]" : token;
|
|
202976
202978
|
}).join(dots ? "." : "");
|
|
@@ -203048,13 +203050,13 @@ var require_axios = __commonJS({
|
|
|
203048
203050
|
return currentValue;
|
|
203049
203051
|
});
|
|
203050
203052
|
}
|
|
203051
|
-
function defaultVisitor(value, key,
|
|
203053
|
+
function defaultVisitor(value, key, path51) {
|
|
203052
203054
|
let arr = value;
|
|
203053
203055
|
if (utils$1.isReactNative(formData) && utils$1.isReactNativeBlob(value)) {
|
|
203054
|
-
formData.append(renderKey(
|
|
203056
|
+
formData.append(renderKey(path51, key, dots), convertValue(value));
|
|
203055
203057
|
return false;
|
|
203056
203058
|
}
|
|
203057
|
-
if (value && !
|
|
203059
|
+
if (value && !path51 && typeof value === "object") {
|
|
203058
203060
|
if (utils$1.endsWith(key, "{}")) {
|
|
203059
203061
|
key = metaTokens ? key : key.slice(0, -2);
|
|
203060
203062
|
value = stringifyWithDepthLimit(value, 1);
|
|
@@ -203073,7 +203075,7 @@ var require_axios = __commonJS({
|
|
|
203073
203075
|
if (isVisitable(value)) {
|
|
203074
203076
|
return true;
|
|
203075
203077
|
}
|
|
203076
|
-
formData.append(renderKey(
|
|
203078
|
+
formData.append(renderKey(path51, key, dots), convertValue(value));
|
|
203077
203079
|
return false;
|
|
203078
203080
|
}
|
|
203079
203081
|
const exposedHelpers = Object.assign(predicates, {
|
|
@@ -203081,17 +203083,17 @@ var require_axios = __commonJS({
|
|
|
203081
203083
|
convertValue,
|
|
203082
203084
|
isVisitable
|
|
203083
203085
|
});
|
|
203084
|
-
function build(value,
|
|
203086
|
+
function build(value, path51, depth = 0) {
|
|
203085
203087
|
if (utils$1.isUndefined(value)) return;
|
|
203086
203088
|
throwIfMaxDepthExceeded(depth);
|
|
203087
203089
|
if (stack.indexOf(value) !== -1) {
|
|
203088
|
-
throw new Error("Circular reference detected in " +
|
|
203090
|
+
throw new Error("Circular reference detected in " + path51.join("."));
|
|
203089
203091
|
}
|
|
203090
203092
|
stack.push(value);
|
|
203091
203093
|
utils$1.forEach(value, function each2(el, key) {
|
|
203092
|
-
const result2 = !(utils$1.isUndefined(el) || el === null) && visitor.call(formData, el, utils$1.isString(key) ? key.trim() : key,
|
|
203094
|
+
const result2 = !(utils$1.isUndefined(el) || el === null) && visitor.call(formData, el, utils$1.isString(key) ? key.trim() : key, path51, exposedHelpers);
|
|
203093
203095
|
if (result2 === true) {
|
|
203094
|
-
build(el,
|
|
203096
|
+
build(el, path51 ? path51.concat(key) : [key], depth + 1);
|
|
203095
203097
|
}
|
|
203096
203098
|
});
|
|
203097
203099
|
stack.pop();
|
|
@@ -203280,7 +203282,7 @@ var require_axios = __commonJS({
|
|
|
203280
203282
|
};
|
|
203281
203283
|
function toURLEncodedForm(data, options) {
|
|
203282
203284
|
return toFormData2(data, new platform.classes.URLSearchParams(), {
|
|
203283
|
-
visitor: function(value, key,
|
|
203285
|
+
visitor: function(value, key, path51, helpers) {
|
|
203284
203286
|
if (platform.isNode && utils$1.isBuffer(value)) {
|
|
203285
203287
|
this.append(key, value.toString("base64"));
|
|
203286
203288
|
return false;
|
|
@@ -203297,14 +203299,14 @@ var require_axios = __commonJS({
|
|
|
203297
203299
|
}
|
|
203298
203300
|
}
|
|
203299
203301
|
function parsePropPath(name29) {
|
|
203300
|
-
const
|
|
203302
|
+
const path51 = [];
|
|
203301
203303
|
const pattern = /[^.[\]]+|\[([^.[\]]*)]/g;
|
|
203302
203304
|
let match;
|
|
203303
203305
|
while ((match = pattern.exec(name29)) !== null) {
|
|
203304
|
-
throwIfDepthExceeded(
|
|
203305
|
-
|
|
203306
|
+
throwIfDepthExceeded(path51.length);
|
|
203307
|
+
path51.push(match[0] === "[]" ? "" : match[1] || match[0]);
|
|
203306
203308
|
}
|
|
203307
|
-
return
|
|
203309
|
+
return path51;
|
|
203308
203310
|
}
|
|
203309
203311
|
function arrayToObject(arr) {
|
|
203310
203312
|
const obj2 = {};
|
|
@@ -203319,12 +203321,12 @@ var require_axios = __commonJS({
|
|
|
203319
203321
|
return obj2;
|
|
203320
203322
|
}
|
|
203321
203323
|
function formDataToJSON(formData) {
|
|
203322
|
-
function buildPath(
|
|
203324
|
+
function buildPath(path51, value, target, index2) {
|
|
203323
203325
|
throwIfDepthExceeded(index2);
|
|
203324
|
-
let name29 =
|
|
203326
|
+
let name29 = path51[index2++];
|
|
203325
203327
|
if (name29 === "__proto__") return true;
|
|
203326
203328
|
const isNumericKey = Number.isFinite(+name29);
|
|
203327
|
-
const isLast = index2 >=
|
|
203329
|
+
const isLast = index2 >= path51.length;
|
|
203328
203330
|
name29 = !name29 && utils$1.isArray(target) ? target.length : name29;
|
|
203329
203331
|
if (isLast) {
|
|
203330
203332
|
if (utils$1.hasOwnProp(target, name29)) {
|
|
@@ -203337,7 +203339,7 @@ var require_axios = __commonJS({
|
|
|
203337
203339
|
if (!utils$1.hasOwnProp(target, name29) || !utils$1.isObject(target[name29])) {
|
|
203338
203340
|
target[name29] = [];
|
|
203339
203341
|
}
|
|
203340
|
-
const result2 = buildPath(
|
|
203342
|
+
const result2 = buildPath(path51, value, target[name29], index2);
|
|
203341
203343
|
if (result2 && utils$1.isArray(target[name29])) {
|
|
203342
203344
|
target[name29] = arrayToObject(target[name29]);
|
|
203343
203345
|
}
|
|
@@ -204948,8 +204950,8 @@ var require_axios = __commonJS({
|
|
|
204948
204950
|
const allowedSocketPaths = own2("allowedSocketPaths");
|
|
204949
204951
|
if (allowedSocketPaths != null) {
|
|
204950
204952
|
const allowed = Array.isArray(allowedSocketPaths) ? allowedSocketPaths : [allowedSocketPaths];
|
|
204951
|
-
const resolvedSocket =
|
|
204952
|
-
const isAllowed = allowed.some((entry) => typeof entry === "string" &&
|
|
204953
|
+
const resolvedSocket = path50.resolve(socketPath);
|
|
204954
|
+
const isAllowed = allowed.some((entry) => typeof entry === "string" && path50.resolve(entry) === resolvedSocket);
|
|
204953
204955
|
if (!isAllowed) {
|
|
204954
204956
|
return reject2(new AxiosError(`socketPath "${socketPath}" is not permitted by allowedSocketPaths`, AxiosError.ERR_BAD_OPTION_VALUE, config2));
|
|
204955
204957
|
}
|
|
@@ -205248,14 +205250,14 @@ var require_axios = __commonJS({
|
|
|
205248
205250
|
var cookies = platform.hasStandardBrowserEnv ? (
|
|
205249
205251
|
// Standard browser envs support document.cookie
|
|
205250
205252
|
{
|
|
205251
|
-
write(name29, value, expires,
|
|
205253
|
+
write(name29, value, expires, path51, domain2, secure, sameSite) {
|
|
205252
205254
|
if (typeof document === "undefined") return;
|
|
205253
205255
|
const cookie = [`${name29}=${encodeURIComponent(value)}`];
|
|
205254
205256
|
if (utils$1.isNumber(expires)) {
|
|
205255
205257
|
cookie.push(`expires=${new Date(expires).toUTCString()}`);
|
|
205256
205258
|
}
|
|
205257
|
-
if (utils$1.isString(
|
|
205258
|
-
cookie.push(`path=${
|
|
205259
|
+
if (utils$1.isString(path51)) {
|
|
205260
|
+
cookie.push(`path=${path51}`);
|
|
205259
205261
|
}
|
|
205260
205262
|
if (utils$1.isString(domain2)) {
|
|
205261
205263
|
cookie.push(`domain=${domain2}`);
|
|
@@ -207045,8 +207047,8 @@ function createGetModuleFromFilename(basePath = process.argv[1] ? dirname2(proce
|
|
|
207045
207047
|
return decodedFile;
|
|
207046
207048
|
};
|
|
207047
207049
|
}
|
|
207048
|
-
function normalizeWindowsPath(
|
|
207049
|
-
return
|
|
207050
|
+
function normalizeWindowsPath(path50) {
|
|
207051
|
+
return path50.replace(/^[A-Z]:/, "").replace(/\\/g, "/");
|
|
207050
207052
|
}
|
|
207051
207053
|
async function addSourceContext(frames) {
|
|
207052
207054
|
const filesToLines = {};
|
|
@@ -207091,9 +207093,9 @@ async function addSourceContext(frames) {
|
|
|
207091
207093
|
LRU_FILE_CONTENTS_CACHE.reduce();
|
|
207092
207094
|
return frames;
|
|
207093
207095
|
}
|
|
207094
|
-
function getContextLinesFromFile(
|
|
207096
|
+
function getContextLinesFromFile(path50, ranges, output) {
|
|
207095
207097
|
return new Promise((resolve12) => {
|
|
207096
|
-
const stream2 = createReadStream2(
|
|
207098
|
+
const stream2 = createReadStream2(path50);
|
|
207097
207099
|
const lineReaded = createInterface({
|
|
207098
207100
|
input: stream2
|
|
207099
207101
|
});
|
|
@@ -207111,7 +207113,7 @@ function getContextLinesFromFile(path49, ranges, output) {
|
|
|
207111
207113
|
let rangeStart = range3[0];
|
|
207112
207114
|
let rangeEnd = range3[1];
|
|
207113
207115
|
function onStreamError() {
|
|
207114
|
-
LRU_FILE_CONTENTS_FS_READ_FAILED.set(
|
|
207116
|
+
LRU_FILE_CONTENTS_FS_READ_FAILED.set(path50, 1);
|
|
207115
207117
|
lineReaded.close();
|
|
207116
207118
|
lineReaded.removeAllListeners();
|
|
207117
207119
|
destroyStreamAndResolve();
|
|
@@ -207188,8 +207190,8 @@ function clearLineContext(frame) {
|
|
|
207188
207190
|
delete frame.context_line;
|
|
207189
207191
|
delete frame.post_context;
|
|
207190
207192
|
}
|
|
207191
|
-
function shouldSkipContextLinesForFile(
|
|
207192
|
-
return
|
|
207193
|
+
function shouldSkipContextLinesForFile(path50) {
|
|
207194
|
+
return path50.startsWith("node:") || path50.endsWith(".min.js") || path50.endsWith(".min.cjs") || path50.endsWith(".min.mjs") || path50.startsWith("data:");
|
|
207193
207195
|
}
|
|
207194
207196
|
function shouldSkipContextLinesForFrame(frame) {
|
|
207195
207197
|
if (frame.lineno !== void 0 && frame.lineno > MAX_CONTEXTLINES_LINENO) {
|
|
@@ -211282,6 +211284,21 @@ var init_byok_pricing = __esm({
|
|
|
211282
211284
|
{
|
|
211283
211285
|
test: /o3-mini/i,
|
|
211284
211286
|
rate: { inputPerMtok: 1.1, outputPerMtok: 4.4, cacheReadPerMtok: 0.55 }
|
|
211287
|
+
},
|
|
211288
|
+
// DeepSeek bills two tariffs for the same model — off-peak is half of peak,
|
|
211289
|
+
// with peak at 01:00-04:00 and 06:00-10:00 UTC on weekdays. A static table
|
|
211290
|
+
// cannot know which applied, so these are the PEAK rates: on a figure that
|
|
211291
|
+
// gets published (a benchmark's reported cost, the session spend meter),
|
|
211292
|
+
// overstating is the safe direction and understating is the one that misleads.
|
|
211293
|
+
// Without these entries `rateForModel` returned null for every DeepSeek model
|
|
211294
|
+
// and the cost was simply absent — observed on a real V4 Flash run.
|
|
211295
|
+
{
|
|
211296
|
+
test: /deepseek.*flash/i,
|
|
211297
|
+
rate: { inputPerMtok: 0.44, outputPerMtok: 1.32, cacheReadPerMtok: 0.014 }
|
|
211298
|
+
},
|
|
211299
|
+
{
|
|
211300
|
+
test: /deepseek.*pro/i,
|
|
211301
|
+
rate: { inputPerMtok: 1.32, outputPerMtok: 3.96, cacheReadPerMtok: 0.044 }
|
|
211285
211302
|
}
|
|
211286
211303
|
];
|
|
211287
211304
|
}
|
|
@@ -213774,7 +213791,7 @@ var require_auth_config = __commonJS({
|
|
|
213774
213791
|
});
|
|
213775
213792
|
module2.exports = __toCommonJS2(auth_config_exports);
|
|
213776
213793
|
var fs40 = __toESM2(__require("fs"));
|
|
213777
|
-
var
|
|
213794
|
+
var path50 = __toESM2(__require("path"));
|
|
213778
213795
|
var import_token_util = require_token_util();
|
|
213779
213796
|
function getAuthConfigPath() {
|
|
213780
213797
|
const dataDir = (0, import_token_util.getVercelDataDir)();
|
|
@@ -213783,7 +213800,7 @@ var require_auth_config = __commonJS({
|
|
|
213783
213800
|
`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`
|
|
213784
213801
|
);
|
|
213785
213802
|
}
|
|
213786
|
-
return
|
|
213803
|
+
return path50.join(dataDir, "auth.json");
|
|
213787
213804
|
}
|
|
213788
213805
|
function readAuthConfig() {
|
|
213789
213806
|
try {
|
|
@@ -213802,7 +213819,7 @@ var require_auth_config = __commonJS({
|
|
|
213802
213819
|
}
|
|
213803
213820
|
function writeAuthConfig(config2) {
|
|
213804
213821
|
const authPath = getAuthConfigPath();
|
|
213805
|
-
const authDir =
|
|
213822
|
+
const authDir = path50.dirname(authPath);
|
|
213806
213823
|
if (!fs40.existsSync(authDir)) {
|
|
213807
213824
|
fs40.mkdirSync(authDir, { mode: 504, recursive: true });
|
|
213808
213825
|
}
|
|
@@ -213997,7 +214014,7 @@ var require_token_util = __commonJS({
|
|
|
213997
214014
|
saveToken: () => saveToken
|
|
213998
214015
|
});
|
|
213999
214016
|
module2.exports = __toCommonJS2(token_util_exports);
|
|
214000
|
-
var
|
|
214017
|
+
var path50 = __toESM2(__require("path"));
|
|
214001
214018
|
var fs40 = __toESM2(__require("fs"));
|
|
214002
214019
|
var import_token_error = require_token_error();
|
|
214003
214020
|
var import_token_io = require_token_io();
|
|
@@ -214010,7 +214027,7 @@ var require_token_util = __commonJS({
|
|
|
214010
214027
|
if (!dataDir) {
|
|
214011
214028
|
return null;
|
|
214012
214029
|
}
|
|
214013
|
-
return
|
|
214030
|
+
return path50.join(dataDir, vercelFolder);
|
|
214014
214031
|
}
|
|
214015
214032
|
async function getVercelToken2(options) {
|
|
214016
214033
|
const authConfig = (0, import_auth_config.readAuthConfig)();
|
|
@@ -214086,7 +214103,7 @@ var require_token_util = __commonJS({
|
|
|
214086
214103
|
"Unable to find project root directory. Have you linked your project with `vc link?`"
|
|
214087
214104
|
);
|
|
214088
214105
|
}
|
|
214089
|
-
const prjPath =
|
|
214106
|
+
const prjPath = path50.join(dir, ".vercel", "project.json");
|
|
214090
214107
|
if (!fs40.existsSync(prjPath)) {
|
|
214091
214108
|
throw new import_token_error.VercelOidcTokenError(
|
|
214092
214109
|
"project.json not found, have you linked your project with `vc link?`"
|
|
@@ -214107,9 +214124,9 @@ var require_token_util = __commonJS({
|
|
|
214107
214124
|
"Unable to find user data directory. Please reach out to Vercel support."
|
|
214108
214125
|
);
|
|
214109
214126
|
}
|
|
214110
|
-
const tokenPath =
|
|
214127
|
+
const tokenPath = path50.join(dir, "com.vercel.token", `${projectId}.json`);
|
|
214111
214128
|
const tokenJson = JSON.stringify(token);
|
|
214112
|
-
fs40.mkdirSync(
|
|
214129
|
+
fs40.mkdirSync(path50.dirname(tokenPath), { mode: 504, recursive: true });
|
|
214113
214130
|
fs40.writeFileSync(tokenPath, tokenJson);
|
|
214114
214131
|
fs40.chmodSync(tokenPath, 432);
|
|
214115
214132
|
return;
|
|
@@ -214121,7 +214138,7 @@ var require_token_util = __commonJS({
|
|
|
214121
214138
|
"Unable to find user data directory. Please reach out to Vercel support."
|
|
214122
214139
|
);
|
|
214123
214140
|
}
|
|
214124
|
-
const tokenPath =
|
|
214141
|
+
const tokenPath = path50.join(dir, "com.vercel.token", `${projectId}.json`);
|
|
214125
214142
|
if (!fs40.existsSync(tokenPath)) {
|
|
214126
214143
|
return null;
|
|
214127
214144
|
}
|
|
@@ -240326,11 +240343,11 @@ var init_lib2 = __esm({
|
|
|
240326
240343
|
}
|
|
240327
240344
|
}
|
|
240328
240345
|
},
|
|
240329
|
-
addToPath: function addToPath(
|
|
240330
|
-
var last2 =
|
|
240346
|
+
addToPath: function addToPath(path50, added, removed, oldPosInc, options) {
|
|
240347
|
+
var last2 = path50.lastComponent;
|
|
240331
240348
|
if (last2 && !options.oneChangePerToken && last2.added === added && last2.removed === removed) {
|
|
240332
240349
|
return {
|
|
240333
|
-
oldPos:
|
|
240350
|
+
oldPos: path50.oldPos + oldPosInc,
|
|
240334
240351
|
lastComponent: {
|
|
240335
240352
|
count: last2.count + 1,
|
|
240336
240353
|
added,
|
|
@@ -240340,7 +240357,7 @@ var init_lib2 = __esm({
|
|
|
240340
240357
|
};
|
|
240341
240358
|
} else {
|
|
240342
240359
|
return {
|
|
240343
|
-
oldPos:
|
|
240360
|
+
oldPos: path50.oldPos + oldPosInc,
|
|
240344
240361
|
lastComponent: {
|
|
240345
240362
|
count: 1,
|
|
240346
240363
|
added,
|
|
@@ -240922,14 +240939,14 @@ function emitRunCommandPermissionActivity(sender, chatId, label, command) {
|
|
|
240922
240939
|
chatId
|
|
240923
240940
|
});
|
|
240924
240941
|
}
|
|
240925
|
-
function emitFilePermissionActivity(sender, chatId, label,
|
|
240942
|
+
function emitFilePermissionActivity(sender, chatId, label, path50) {
|
|
240926
240943
|
safeSend(sender, "chat:activity", {
|
|
240927
240944
|
id: `file-perm-${chatId}-${Date.now()}`,
|
|
240928
240945
|
type: "tool_use",
|
|
240929
240946
|
// v13.8: edit_file is the single file-mutation tool (absorbed write_file).
|
|
240930
240947
|
toolName: "edit_file",
|
|
240931
240948
|
label,
|
|
240932
|
-
detail:
|
|
240949
|
+
detail: path50.slice(0, 200),
|
|
240933
240950
|
status: "done",
|
|
240934
240951
|
timestamp: Date.now(),
|
|
240935
240952
|
chatId
|
|
@@ -242796,8 +242813,8 @@ function formatSearchMatchPreview(payload, plainText) {
|
|
|
242796
242813
|
function formatReadFilePreview(content) {
|
|
242797
242814
|
const pathMatch = content.match(/^File:\s*(.+)$/m);
|
|
242798
242815
|
if (pathMatch) {
|
|
242799
|
-
const
|
|
242800
|
-
const short =
|
|
242816
|
+
const path50 = pathMatch[1].trim();
|
|
242817
|
+
const short = path50.length > 64 ? `\u2026${path50.slice(-61)}` : path50;
|
|
242801
242818
|
const linesMatch = content.match(/^Lines:\s*(.+)$/m);
|
|
242802
242819
|
if (linesMatch) {
|
|
242803
242820
|
return `Read ${short} \u2014 lines ${linesMatch[1].trim()}`;
|
|
@@ -242921,8 +242938,8 @@ function formatToolResultPreview(registryName, rawDetail, status) {
|
|
|
242921
242938
|
if (!envelope) return void 0;
|
|
242922
242939
|
if (status === "error" || envelope.error) {
|
|
242923
242940
|
const msg = envelope.error ?? extractShortField(envelope.payload) ?? "Tool failed";
|
|
242924
|
-
const
|
|
242925
|
-
return capPreview(
|
|
242941
|
+
const path50 = typeof envelope.payload.path === "string" && envelope.payload.path.trim() ? envelope.payload.path.trim() : void 0;
|
|
242942
|
+
return capPreview(path50 ? `${msg} (${path50})` : msg);
|
|
242926
242943
|
}
|
|
242927
242944
|
const payload = envelope.payload;
|
|
242928
242945
|
const plain = envelope.plainText;
|
|
@@ -242972,7 +242989,7 @@ function formatToolStartPreview(registryName, toolArgs) {
|
|
|
242972
242989
|
if (!toolArgs || typeof toolArgs !== "object") {
|
|
242973
242990
|
return getToolActivityLabel(registryName);
|
|
242974
242991
|
}
|
|
242975
|
-
const
|
|
242992
|
+
const path50 = typeof toolArgs.path === "string" && toolArgs.path.trim() || typeof toolArgs.file_path === "string" && toolArgs.file_path.trim() || typeof toolArgs.focus_path === "string" && toolArgs.focus_path.trim() || void 0;
|
|
242976
242993
|
const query = typeof toolArgs.query === "string" ? toolArgs.query.trim() : void 0;
|
|
242977
242994
|
const pattern = (registryName === "grep" || registryName === "glob") && typeof toolArgs.pattern === "string" ? toolArgs.pattern.trim() : void 0;
|
|
242978
242995
|
const command = typeof toolArgs.command === "string" ? toolArgs.command.trim() : void 0;
|
|
@@ -242981,8 +242998,8 @@ function formatToolStartPreview(registryName, toolArgs) {
|
|
|
242981
242998
|
const p2 = pattern.length > 56 ? `${pattern.slice(0, 53)}\u2026` : pattern;
|
|
242982
242999
|
return `${base}: ${p2}\u2026`;
|
|
242983
243000
|
}
|
|
242984
|
-
if (
|
|
242985
|
-
const short =
|
|
243001
|
+
if (path50) {
|
|
243002
|
+
const short = path50.length > 72 ? `${path50.slice(0, 69)}\u2026` : path50;
|
|
242986
243003
|
return `${base} (${short})\u2026`;
|
|
242987
243004
|
}
|
|
242988
243005
|
if (query) {
|
|
@@ -245224,23 +245241,23 @@ function findAutonomousOp(chatId, turnId, operationId) {
|
|
|
245224
245241
|
return sessionLogs.get(sessionKey(chatId, turnId))?.find((o2) => o2.operationId === operationId);
|
|
245225
245242
|
}
|
|
245226
245243
|
function autonomousOpFromPermissionExec(operationId, operationType, preview, execApproved) {
|
|
245227
|
-
let
|
|
245244
|
+
let path50;
|
|
245228
245245
|
let summary;
|
|
245229
245246
|
const p2 = preview;
|
|
245230
245247
|
if (Array.isArray(p2)) {
|
|
245231
245248
|
const first2 = p2[0];
|
|
245232
|
-
|
|
245249
|
+
path50 = first2?.path;
|
|
245233
245250
|
summary = first2?.description;
|
|
245234
245251
|
} else if (p2 && typeof p2 === "object") {
|
|
245235
245252
|
const o2 = p2;
|
|
245236
|
-
if (typeof o2.path === "string")
|
|
245237
|
-
if (typeof o2.command === "string")
|
|
245253
|
+
if (typeof o2.path === "string") path50 = o2.path;
|
|
245254
|
+
if (typeof o2.command === "string") path50 = o2.command;
|
|
245238
245255
|
if (typeof o2.description === "string") summary = o2.description;
|
|
245239
245256
|
}
|
|
245240
245257
|
return {
|
|
245241
245258
|
operationId,
|
|
245242
245259
|
type: operationType,
|
|
245243
|
-
path:
|
|
245260
|
+
path: path50,
|
|
245244
245261
|
summary: summary ?? operationType,
|
|
245245
245262
|
timestamp: Date.now(),
|
|
245246
245263
|
result: execApproved ? "success" : "failed",
|
|
@@ -249403,14 +249420,14 @@ var require_polyfills2 = __commonJS({
|
|
|
249403
249420
|
fs40.fstatSync = statFixSync(fs40.fstatSync);
|
|
249404
249421
|
fs40.lstatSync = statFixSync(fs40.lstatSync);
|
|
249405
249422
|
if (fs40.chmod && !fs40.lchmod) {
|
|
249406
|
-
fs40.lchmod = function(
|
|
249423
|
+
fs40.lchmod = function(path50, mode, cb2) {
|
|
249407
249424
|
if (cb2) process.nextTick(cb2);
|
|
249408
249425
|
};
|
|
249409
249426
|
fs40.lchmodSync = function() {
|
|
249410
249427
|
};
|
|
249411
249428
|
}
|
|
249412
249429
|
if (fs40.chown && !fs40.lchown) {
|
|
249413
|
-
fs40.lchown = function(
|
|
249430
|
+
fs40.lchown = function(path50, uid, gid, cb2) {
|
|
249414
249431
|
if (cb2) process.nextTick(cb2);
|
|
249415
249432
|
};
|
|
249416
249433
|
fs40.lchownSync = function() {
|
|
@@ -249477,9 +249494,9 @@ var require_polyfills2 = __commonJS({
|
|
|
249477
249494
|
};
|
|
249478
249495
|
})(fs40.readSync);
|
|
249479
249496
|
function patchLchmod(fs41) {
|
|
249480
|
-
fs41.lchmod = function(
|
|
249497
|
+
fs41.lchmod = function(path50, mode, callback) {
|
|
249481
249498
|
fs41.open(
|
|
249482
|
-
|
|
249499
|
+
path50,
|
|
249483
249500
|
constants.O_WRONLY | constants.O_SYMLINK,
|
|
249484
249501
|
mode,
|
|
249485
249502
|
function(err2, fd2) {
|
|
@@ -249495,8 +249512,8 @@ var require_polyfills2 = __commonJS({
|
|
|
249495
249512
|
}
|
|
249496
249513
|
);
|
|
249497
249514
|
};
|
|
249498
|
-
fs41.lchmodSync = function(
|
|
249499
|
-
var fd2 = fs41.openSync(
|
|
249515
|
+
fs41.lchmodSync = function(path50, mode) {
|
|
249516
|
+
var fd2 = fs41.openSync(path50, constants.O_WRONLY | constants.O_SYMLINK, mode);
|
|
249500
249517
|
var threw = true;
|
|
249501
249518
|
var ret2;
|
|
249502
249519
|
try {
|
|
@@ -249517,8 +249534,8 @@ var require_polyfills2 = __commonJS({
|
|
|
249517
249534
|
}
|
|
249518
249535
|
function patchLutimes(fs41) {
|
|
249519
249536
|
if (constants.hasOwnProperty("O_SYMLINK") && fs41.futimes) {
|
|
249520
|
-
fs41.lutimes = function(
|
|
249521
|
-
fs41.open(
|
|
249537
|
+
fs41.lutimes = function(path50, at2, mt2, cb2) {
|
|
249538
|
+
fs41.open(path50, constants.O_SYMLINK, function(er2, fd2) {
|
|
249522
249539
|
if (er2) {
|
|
249523
249540
|
if (cb2) cb2(er2);
|
|
249524
249541
|
return;
|
|
@@ -249530,8 +249547,8 @@ var require_polyfills2 = __commonJS({
|
|
|
249530
249547
|
});
|
|
249531
249548
|
});
|
|
249532
249549
|
};
|
|
249533
|
-
fs41.lutimesSync = function(
|
|
249534
|
-
var fd2 = fs41.openSync(
|
|
249550
|
+
fs41.lutimesSync = function(path50, at2, mt2) {
|
|
249551
|
+
var fd2 = fs41.openSync(path50, constants.O_SYMLINK);
|
|
249535
249552
|
var ret2;
|
|
249536
249553
|
var threw = true;
|
|
249537
249554
|
try {
|
|
@@ -249649,11 +249666,11 @@ var require_legacy_streams = __commonJS({
|
|
|
249649
249666
|
ReadStream: ReadStream2,
|
|
249650
249667
|
WriteStream
|
|
249651
249668
|
};
|
|
249652
|
-
function ReadStream2(
|
|
249653
|
-
if (!(this instanceof ReadStream2)) return new ReadStream2(
|
|
249669
|
+
function ReadStream2(path50, options) {
|
|
249670
|
+
if (!(this instanceof ReadStream2)) return new ReadStream2(path50, options);
|
|
249654
249671
|
Stream5.call(this);
|
|
249655
249672
|
var self2 = this;
|
|
249656
|
-
this.path =
|
|
249673
|
+
this.path = path50;
|
|
249657
249674
|
this.fd = null;
|
|
249658
249675
|
this.readable = true;
|
|
249659
249676
|
this.paused = false;
|
|
@@ -249698,10 +249715,10 @@ var require_legacy_streams = __commonJS({
|
|
|
249698
249715
|
self2._read();
|
|
249699
249716
|
});
|
|
249700
249717
|
}
|
|
249701
|
-
function WriteStream(
|
|
249702
|
-
if (!(this instanceof WriteStream)) return new WriteStream(
|
|
249718
|
+
function WriteStream(path50, options) {
|
|
249719
|
+
if (!(this instanceof WriteStream)) return new WriteStream(path50, options);
|
|
249703
249720
|
Stream5.call(this);
|
|
249704
|
-
this.path =
|
|
249721
|
+
this.path = path50;
|
|
249705
249722
|
this.fd = null;
|
|
249706
249723
|
this.writable = true;
|
|
249707
249724
|
this.flags = "w";
|
|
@@ -249844,14 +249861,14 @@ var require_graceful_fs = __commonJS({
|
|
|
249844
249861
|
fs41.createWriteStream = createWriteStream;
|
|
249845
249862
|
var fs$readFile = fs41.readFile;
|
|
249846
249863
|
fs41.readFile = readFile12;
|
|
249847
|
-
function readFile12(
|
|
249864
|
+
function readFile12(path50, options, cb2) {
|
|
249848
249865
|
if (typeof options === "function")
|
|
249849
249866
|
cb2 = options, options = null;
|
|
249850
|
-
return go$readFile(
|
|
249851
|
-
function go$readFile(
|
|
249852
|
-
return fs$readFile(
|
|
249867
|
+
return go$readFile(path50, options, cb2);
|
|
249868
|
+
function go$readFile(path51, options2, cb3, startTime) {
|
|
249869
|
+
return fs$readFile(path51, options2, function(err2) {
|
|
249853
249870
|
if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
|
|
249854
|
-
enqueue([go$readFile, [
|
|
249871
|
+
enqueue([go$readFile, [path51, options2, cb3], err2, startTime || Date.now(), Date.now()]);
|
|
249855
249872
|
else {
|
|
249856
249873
|
if (typeof cb3 === "function")
|
|
249857
249874
|
cb3.apply(this, arguments);
|
|
@@ -249861,14 +249878,14 @@ var require_graceful_fs = __commonJS({
|
|
|
249861
249878
|
}
|
|
249862
249879
|
var fs$writeFile = fs41.writeFile;
|
|
249863
249880
|
fs41.writeFile = writeFile8;
|
|
249864
|
-
function writeFile8(
|
|
249881
|
+
function writeFile8(path50, data, options, cb2) {
|
|
249865
249882
|
if (typeof options === "function")
|
|
249866
249883
|
cb2 = options, options = null;
|
|
249867
|
-
return go$writeFile(
|
|
249868
|
-
function go$writeFile(
|
|
249869
|
-
return fs$writeFile(
|
|
249884
|
+
return go$writeFile(path50, data, options, cb2);
|
|
249885
|
+
function go$writeFile(path51, data2, options2, cb3, startTime) {
|
|
249886
|
+
return fs$writeFile(path51, data2, options2, function(err2) {
|
|
249870
249887
|
if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
|
|
249871
|
-
enqueue([go$writeFile, [
|
|
249888
|
+
enqueue([go$writeFile, [path51, data2, options2, cb3], err2, startTime || Date.now(), Date.now()]);
|
|
249872
249889
|
else {
|
|
249873
249890
|
if (typeof cb3 === "function")
|
|
249874
249891
|
cb3.apply(this, arguments);
|
|
@@ -249879,14 +249896,14 @@ var require_graceful_fs = __commonJS({
|
|
|
249879
249896
|
var fs$appendFile = fs41.appendFile;
|
|
249880
249897
|
if (fs$appendFile)
|
|
249881
249898
|
fs41.appendFile = appendFile;
|
|
249882
|
-
function appendFile(
|
|
249899
|
+
function appendFile(path50, data, options, cb2) {
|
|
249883
249900
|
if (typeof options === "function")
|
|
249884
249901
|
cb2 = options, options = null;
|
|
249885
|
-
return go$appendFile(
|
|
249886
|
-
function go$appendFile(
|
|
249887
|
-
return fs$appendFile(
|
|
249902
|
+
return go$appendFile(path50, data, options, cb2);
|
|
249903
|
+
function go$appendFile(path51, data2, options2, cb3, startTime) {
|
|
249904
|
+
return fs$appendFile(path51, data2, options2, function(err2) {
|
|
249888
249905
|
if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
|
|
249889
|
-
enqueue([go$appendFile, [
|
|
249906
|
+
enqueue([go$appendFile, [path51, data2, options2, cb3], err2, startTime || Date.now(), Date.now()]);
|
|
249890
249907
|
else {
|
|
249891
249908
|
if (typeof cb3 === "function")
|
|
249892
249909
|
cb3.apply(this, arguments);
|
|
@@ -249917,31 +249934,31 @@ var require_graceful_fs = __commonJS({
|
|
|
249917
249934
|
var fs$readdir = fs41.readdir;
|
|
249918
249935
|
fs41.readdir = readdir3;
|
|
249919
249936
|
var noReaddirOptionVersions = /^v[0-5]\./;
|
|
249920
|
-
function readdir3(
|
|
249937
|
+
function readdir3(path50, options, cb2) {
|
|
249921
249938
|
if (typeof options === "function")
|
|
249922
249939
|
cb2 = options, options = null;
|
|
249923
|
-
var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(
|
|
249924
|
-
return fs$readdir(
|
|
249925
|
-
|
|
249940
|
+
var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path51, options2, cb3, startTime) {
|
|
249941
|
+
return fs$readdir(path51, fs$readdirCallback(
|
|
249942
|
+
path51,
|
|
249926
249943
|
options2,
|
|
249927
249944
|
cb3,
|
|
249928
249945
|
startTime
|
|
249929
249946
|
));
|
|
249930
|
-
} : function go$readdir2(
|
|
249931
|
-
return fs$readdir(
|
|
249932
|
-
|
|
249947
|
+
} : function go$readdir2(path51, options2, cb3, startTime) {
|
|
249948
|
+
return fs$readdir(path51, options2, fs$readdirCallback(
|
|
249949
|
+
path51,
|
|
249933
249950
|
options2,
|
|
249934
249951
|
cb3,
|
|
249935
249952
|
startTime
|
|
249936
249953
|
));
|
|
249937
249954
|
};
|
|
249938
|
-
return go$readdir(
|
|
249939
|
-
function fs$readdirCallback(
|
|
249955
|
+
return go$readdir(path50, options, cb2);
|
|
249956
|
+
function fs$readdirCallback(path51, options2, cb3, startTime) {
|
|
249940
249957
|
return function(err2, files) {
|
|
249941
249958
|
if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
|
|
249942
249959
|
enqueue([
|
|
249943
249960
|
go$readdir,
|
|
249944
|
-
[
|
|
249961
|
+
[path51, options2, cb3],
|
|
249945
249962
|
err2,
|
|
249946
249963
|
startTime || Date.now(),
|
|
249947
249964
|
Date.now()
|
|
@@ -250012,7 +250029,7 @@ var require_graceful_fs = __commonJS({
|
|
|
250012
250029
|
enumerable: true,
|
|
250013
250030
|
configurable: true
|
|
250014
250031
|
});
|
|
250015
|
-
function ReadStream2(
|
|
250032
|
+
function ReadStream2(path50, options) {
|
|
250016
250033
|
if (this instanceof ReadStream2)
|
|
250017
250034
|
return fs$ReadStream.apply(this, arguments), this;
|
|
250018
250035
|
else
|
|
@@ -250032,7 +250049,7 @@ var require_graceful_fs = __commonJS({
|
|
|
250032
250049
|
}
|
|
250033
250050
|
});
|
|
250034
250051
|
}
|
|
250035
|
-
function WriteStream(
|
|
250052
|
+
function WriteStream(path50, options) {
|
|
250036
250053
|
if (this instanceof WriteStream)
|
|
250037
250054
|
return fs$WriteStream.apply(this, arguments), this;
|
|
250038
250055
|
else
|
|
@@ -250050,22 +250067,22 @@ var require_graceful_fs = __commonJS({
|
|
|
250050
250067
|
}
|
|
250051
250068
|
});
|
|
250052
250069
|
}
|
|
250053
|
-
function createReadStream3(
|
|
250054
|
-
return new fs41.ReadStream(
|
|
250070
|
+
function createReadStream3(path50, options) {
|
|
250071
|
+
return new fs41.ReadStream(path50, options);
|
|
250055
250072
|
}
|
|
250056
|
-
function createWriteStream(
|
|
250057
|
-
return new fs41.WriteStream(
|
|
250073
|
+
function createWriteStream(path50, options) {
|
|
250074
|
+
return new fs41.WriteStream(path50, options);
|
|
250058
250075
|
}
|
|
250059
250076
|
var fs$open = fs41.open;
|
|
250060
250077
|
fs41.open = open;
|
|
250061
|
-
function open(
|
|
250078
|
+
function open(path50, flags, mode, cb2) {
|
|
250062
250079
|
if (typeof mode === "function")
|
|
250063
250080
|
cb2 = mode, mode = null;
|
|
250064
|
-
return go$open(
|
|
250065
|
-
function go$open(
|
|
250066
|
-
return fs$open(
|
|
250081
|
+
return go$open(path50, flags, mode, cb2);
|
|
250082
|
+
function go$open(path51, flags2, mode2, cb3, startTime) {
|
|
250083
|
+
return fs$open(path51, flags2, mode2, function(err2, fd2) {
|
|
250067
250084
|
if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
|
|
250068
|
-
enqueue([go$open, [
|
|
250085
|
+
enqueue([go$open, [path51, flags2, mode2, cb3], err2, startTime || Date.now(), Date.now()]);
|
|
250069
250086
|
else {
|
|
250070
250087
|
if (typeof cb3 === "function")
|
|
250071
250088
|
cb3.apply(this, arguments);
|
|
@@ -250869,8 +250886,8 @@ var init_convertInputToNodeStream = __esm({
|
|
|
250869
250886
|
|
|
250870
250887
|
// node_modules/read-excel-file/modules/export/filterZipArchiveEntry.js
|
|
250871
250888
|
function filterZipArchiveEntry(_ref) {
|
|
250872
|
-
var
|
|
250873
|
-
return
|
|
250889
|
+
var path50 = _ref.path;
|
|
250890
|
+
return path50.endsWith(".xml") || path50.endsWith(".xml.rels");
|
|
250874
250891
|
}
|
|
250875
250892
|
var init_filterZipArchiveEntry = __esm({
|
|
250876
250893
|
"node_modules/read-excel-file/modules/export/filterZipArchiveEntry.js"() {
|
|
@@ -251273,11 +251290,11 @@ function parseFilePaths(content, parseXml2) {
|
|
|
251273
251290
|
break;
|
|
251274
251291
|
}
|
|
251275
251292
|
}
|
|
251276
|
-
function getFilePathFromRelationTarget(
|
|
251277
|
-
if (
|
|
251278
|
-
return
|
|
251293
|
+
function getFilePathFromRelationTarget(path50) {
|
|
251294
|
+
if (path50[0] === "/") {
|
|
251295
|
+
return path50.slice("/".length);
|
|
251279
251296
|
}
|
|
251280
|
-
return "xl/" +
|
|
251297
|
+
return "xl/" + path50;
|
|
251281
251298
|
}
|
|
251282
251299
|
}
|
|
251283
251300
|
var init_parseFilePaths = __esm({
|
|
@@ -253860,18 +253877,18 @@ function parseDataRow(dataRow, schema, columns, options) {
|
|
|
253860
253877
|
object: transformValue(value, isEmptyValue2, void 0, options)
|
|
253861
253878
|
};
|
|
253862
253879
|
}
|
|
253863
|
-
function parseObject(row, schema,
|
|
253880
|
+
function parseObject(row, schema, path50, columns, options) {
|
|
253864
253881
|
var object4 = {};
|
|
253865
253882
|
var isEmptyObject = true;
|
|
253866
253883
|
var errors = [];
|
|
253867
253884
|
var children = [];
|
|
253868
253885
|
for (var _i2 = 0, _Object$keys = Object.keys(schema); _i2 < _Object$keys.length; _i2++) {
|
|
253869
253886
|
var key = _Object$keys[_i2];
|
|
253870
|
-
var child = parseProperty(row, schema[key], getPropertyPath(key,
|
|
253887
|
+
var child = parseProperty(row, schema[key], getPropertyPath(key, path50), columns, options);
|
|
253871
253888
|
if (child.errors) {
|
|
253872
253889
|
errors = errors.concat(child.errors);
|
|
253873
253890
|
} else {
|
|
253874
|
-
object4[key] = transformValue(child.value, child.isEmptyValue, getPropertyPath(key,
|
|
253891
|
+
object4[key] = transformValue(child.value, child.isEmptyValue, getPropertyPath(key, path50), options);
|
|
253875
253892
|
if (isEmptyObject && !child.isEmptyValue) {
|
|
253876
253893
|
isEmptyObject = false;
|
|
253877
253894
|
}
|
|
@@ -253896,13 +253913,13 @@ function parseObject(row, schema, path49, columns, options) {
|
|
|
253896
253913
|
children
|
|
253897
253914
|
};
|
|
253898
253915
|
}
|
|
253899
|
-
function parseProperty(row, schemaEntry,
|
|
253916
|
+
function parseProperty(row, schemaEntry, path50, columns, options) {
|
|
253900
253917
|
var columnIndex = schemaEntry.column ? columns.indexOf(schemaEntry.column) : void 0;
|
|
253901
253918
|
var isMissingColumn = schemaEntry.column ? columnIndex < 0 : void 0;
|
|
253902
253919
|
var _ref = schemaEntry.column ? isMissingColumn ? {
|
|
253903
253920
|
value: options.propertyValueWhenColumnIsMissing,
|
|
253904
253921
|
isEmptyValue: true
|
|
253905
|
-
} : parseCellValueWithPossibleErrors(row[columnIndex], schemaEntry, columnIndex, options) : parseObject(row, schemaEntry.schema,
|
|
253922
|
+
} : parseCellValueWithPossibleErrors(row[columnIndex], schemaEntry, columnIndex, options) : parseObject(row, schemaEntry.schema, path50, columns, options), value = _ref.value, isEmptyValue2 = _ref.isEmptyValue, errors = _ref.errors, children = _ref.children;
|
|
253906
253923
|
if (errors) {
|
|
253907
253924
|
return {
|
|
253908
253925
|
// Return the errors.
|
|
@@ -254121,15 +254138,15 @@ function parseSeparatedSubstrings(string4, separatorCharacter) {
|
|
|
254121
254138
|
}
|
|
254122
254139
|
return elements;
|
|
254123
254140
|
}
|
|
254124
|
-
function transformValue(value, isEmptyValue2,
|
|
254141
|
+
function transformValue(value, isEmptyValue2, path50, options) {
|
|
254125
254142
|
if (isEmptyValue2) {
|
|
254126
254143
|
if (isObject3(value)) {
|
|
254127
254144
|
return options.transformEmptyObject(value, {
|
|
254128
|
-
path:
|
|
254145
|
+
path: path50
|
|
254129
254146
|
});
|
|
254130
254147
|
} else if (Array.isArray(value)) {
|
|
254131
254148
|
return options.transformEmptyArray(value, {
|
|
254132
|
-
path:
|
|
254149
|
+
path: path50
|
|
254133
254150
|
});
|
|
254134
254151
|
}
|
|
254135
254152
|
}
|
|
@@ -255593,8 +255610,8 @@ var init_tap = __esm({
|
|
|
255593
255610
|
});
|
|
255594
255611
|
|
|
255595
255612
|
// node_modules/underscore/modules/toPath.js
|
|
255596
|
-
function toPath(
|
|
255597
|
-
return isArray_default(
|
|
255613
|
+
function toPath(path50) {
|
|
255614
|
+
return isArray_default(path50) ? path50 : [path50];
|
|
255598
255615
|
}
|
|
255599
255616
|
var init_toPath = __esm({
|
|
255600
255617
|
"node_modules/underscore/modules/toPath.js"() {
|
|
@@ -255605,8 +255622,8 @@ var init_toPath = __esm({
|
|
|
255605
255622
|
});
|
|
255606
255623
|
|
|
255607
255624
|
// node_modules/underscore/modules/_toPath.js
|
|
255608
|
-
function toPath2(
|
|
255609
|
-
return _2.toPath(
|
|
255625
|
+
function toPath2(path50) {
|
|
255626
|
+
return _2.toPath(path50);
|
|
255610
255627
|
}
|
|
255611
255628
|
var init_toPath2 = __esm({
|
|
255612
255629
|
"node_modules/underscore/modules/_toPath.js"() {
|
|
@@ -255616,11 +255633,11 @@ var init_toPath2 = __esm({
|
|
|
255616
255633
|
});
|
|
255617
255634
|
|
|
255618
255635
|
// node_modules/underscore/modules/_deepGet.js
|
|
255619
|
-
function deepGet(obj2,
|
|
255620
|
-
var length =
|
|
255636
|
+
function deepGet(obj2, path50) {
|
|
255637
|
+
var length = path50.length;
|
|
255621
255638
|
for (var i4 = 0; i4 < length; i4++) {
|
|
255622
255639
|
if (obj2 == null) return void 0;
|
|
255623
|
-
obj2 = obj2[
|
|
255640
|
+
obj2 = obj2[path50[i4]];
|
|
255624
255641
|
}
|
|
255625
255642
|
return length ? obj2 : void 0;
|
|
255626
255643
|
}
|
|
@@ -255630,8 +255647,8 @@ var init_deepGet = __esm({
|
|
|
255630
255647
|
});
|
|
255631
255648
|
|
|
255632
255649
|
// node_modules/underscore/modules/get.js
|
|
255633
|
-
function get2(object4,
|
|
255634
|
-
var value = deepGet(object4, toPath2(
|
|
255650
|
+
function get2(object4, path50, defaultValue) {
|
|
255651
|
+
var value = deepGet(object4, toPath2(path50));
|
|
255635
255652
|
return isUndefined(value) ? defaultValue : value;
|
|
255636
255653
|
}
|
|
255637
255654
|
var init_get = __esm({
|
|
@@ -255643,11 +255660,11 @@ var init_get = __esm({
|
|
|
255643
255660
|
});
|
|
255644
255661
|
|
|
255645
255662
|
// node_modules/underscore/modules/has.js
|
|
255646
|
-
function has2(obj2,
|
|
255647
|
-
|
|
255648
|
-
var length =
|
|
255663
|
+
function has2(obj2, path50) {
|
|
255664
|
+
path50 = toPath2(path50);
|
|
255665
|
+
var length = path50.length;
|
|
255649
255666
|
for (var i4 = 0; i4 < length; i4++) {
|
|
255650
|
-
var key =
|
|
255667
|
+
var key = path50[i4];
|
|
255651
255668
|
if (!has(obj2, key)) return false;
|
|
255652
255669
|
obj2 = obj2[key];
|
|
255653
255670
|
}
|
|
@@ -255684,10 +255701,10 @@ var init_matcher = __esm({
|
|
|
255684
255701
|
});
|
|
255685
255702
|
|
|
255686
255703
|
// node_modules/underscore/modules/property.js
|
|
255687
|
-
function property(
|
|
255688
|
-
|
|
255704
|
+
function property(path50) {
|
|
255705
|
+
path50 = toPath2(path50);
|
|
255689
255706
|
return function(obj2) {
|
|
255690
|
-
return deepGet(obj2,
|
|
255707
|
+
return deepGet(obj2, path50);
|
|
255691
255708
|
};
|
|
255692
255709
|
}
|
|
255693
255710
|
var init_property = __esm({
|
|
@@ -255796,8 +255813,8 @@ var init_noop = __esm({
|
|
|
255796
255813
|
// node_modules/underscore/modules/propertyOf.js
|
|
255797
255814
|
function propertyOf(obj2) {
|
|
255798
255815
|
if (obj2 == null) return noop6;
|
|
255799
|
-
return function(
|
|
255800
|
-
return get2(obj2,
|
|
255816
|
+
return function(path50) {
|
|
255817
|
+
return get2(obj2, path50);
|
|
255801
255818
|
};
|
|
255802
255819
|
}
|
|
255803
255820
|
var init_propertyOf = __esm({
|
|
@@ -255991,14 +256008,14 @@ var init_template = __esm({
|
|
|
255991
256008
|
});
|
|
255992
256009
|
|
|
255993
256010
|
// node_modules/underscore/modules/result.js
|
|
255994
|
-
function result(obj2,
|
|
255995
|
-
|
|
255996
|
-
var length =
|
|
256011
|
+
function result(obj2, path50, fallback) {
|
|
256012
|
+
path50 = toPath2(path50);
|
|
256013
|
+
var length = path50.length;
|
|
255997
256014
|
if (!length) {
|
|
255998
256015
|
return isFunction_default(fallback) ? fallback.call(obj2) : fallback;
|
|
255999
256016
|
}
|
|
256000
256017
|
for (var i4 = 0; i4 < length; i4++) {
|
|
256001
|
-
var prop = obj2 == null ? void 0 : obj2[
|
|
256018
|
+
var prop = obj2 == null ? void 0 : obj2[path50[i4]];
|
|
256002
256019
|
if (prop === void 0) {
|
|
256003
256020
|
prop = fallback;
|
|
256004
256021
|
i4 = length;
|
|
@@ -256681,14 +256698,14 @@ var init_invoke = __esm({
|
|
|
256681
256698
|
init_map();
|
|
256682
256699
|
init_deepGet();
|
|
256683
256700
|
init_toPath2();
|
|
256684
|
-
invoke_default = restArguments(function(obj2,
|
|
256701
|
+
invoke_default = restArguments(function(obj2, path50, args2) {
|
|
256685
256702
|
var contextPath, func;
|
|
256686
|
-
if (isFunction_default(
|
|
256687
|
-
func =
|
|
256703
|
+
if (isFunction_default(path50)) {
|
|
256704
|
+
func = path50;
|
|
256688
256705
|
} else {
|
|
256689
|
-
|
|
256690
|
-
contextPath =
|
|
256691
|
-
|
|
256706
|
+
path50 = toPath2(path50);
|
|
256707
|
+
contextPath = path50.slice(0, -1);
|
|
256708
|
+
path50 = path50[path50.length - 1];
|
|
256692
256709
|
}
|
|
256693
256710
|
return map2(obj2, function(context) {
|
|
256694
256711
|
var method = func;
|
|
@@ -256697,7 +256714,7 @@ var init_invoke = __esm({
|
|
|
256697
256714
|
context = deepGet(context, contextPath);
|
|
256698
256715
|
}
|
|
256699
256716
|
if (context == null) return void 0;
|
|
256700
|
-
method = context[
|
|
256717
|
+
method = context[path50];
|
|
256701
256718
|
}
|
|
256702
256719
|
return method == null ? method : method.apply(context, args2);
|
|
256703
256720
|
});
|
|
@@ -266062,8 +266079,8 @@ var require_utils = __commonJS({
|
|
|
266062
266079
|
var result2 = transform2[inputType][outputType](input);
|
|
266063
266080
|
return result2;
|
|
266064
266081
|
};
|
|
266065
|
-
exports2.resolve = function(
|
|
266066
|
-
var parts =
|
|
266082
|
+
exports2.resolve = function(path50) {
|
|
266083
|
+
var parts = path50.split("/");
|
|
266067
266084
|
var result2 = [];
|
|
266068
266085
|
for (var index2 = 0; index2 < parts.length; index2++) {
|
|
266069
266086
|
var part = parts[index2];
|
|
@@ -271916,18 +271933,18 @@ var require_object2 = __commonJS({
|
|
|
271916
271933
|
var object4 = new ZipObject(name29, zipObjectContent, o2);
|
|
271917
271934
|
this.files[name29] = object4;
|
|
271918
271935
|
};
|
|
271919
|
-
var parentFolder = function(
|
|
271920
|
-
if (
|
|
271921
|
-
|
|
271936
|
+
var parentFolder = function(path50) {
|
|
271937
|
+
if (path50.slice(-1) === "/") {
|
|
271938
|
+
path50 = path50.substring(0, path50.length - 1);
|
|
271922
271939
|
}
|
|
271923
|
-
var lastSlash =
|
|
271924
|
-
return lastSlash > 0 ?
|
|
271940
|
+
var lastSlash = path50.lastIndexOf("/");
|
|
271941
|
+
return lastSlash > 0 ? path50.substring(0, lastSlash) : "";
|
|
271925
271942
|
};
|
|
271926
|
-
var forceTrailingSlash = function(
|
|
271927
|
-
if (
|
|
271928
|
-
|
|
271943
|
+
var forceTrailingSlash = function(path50) {
|
|
271944
|
+
if (path50.slice(-1) !== "/") {
|
|
271945
|
+
path50 += "/";
|
|
271929
271946
|
}
|
|
271930
|
-
return
|
|
271947
|
+
return path50;
|
|
271931
271948
|
};
|
|
271932
271949
|
var folderAdd = function(name29, createFolders) {
|
|
271933
271950
|
createFolders = typeof createFolders !== "undefined" ? createFolders : defaults.createFolders;
|
|
@@ -272965,27 +272982,27 @@ var require_zipfile = __commonJS({
|
|
|
272965
272982
|
};
|
|
272966
272983
|
});
|
|
272967
272984
|
}
|
|
272968
|
-
function splitPath(
|
|
272969
|
-
var lastIndex =
|
|
272985
|
+
function splitPath(path50) {
|
|
272986
|
+
var lastIndex = path50.lastIndexOf("/");
|
|
272970
272987
|
if (lastIndex === -1) {
|
|
272971
|
-
return { dirname: "", basename:
|
|
272988
|
+
return { dirname: "", basename: path50 };
|
|
272972
272989
|
} else {
|
|
272973
272990
|
return {
|
|
272974
|
-
dirname:
|
|
272975
|
-
basename:
|
|
272991
|
+
dirname: path50.substring(0, lastIndex),
|
|
272992
|
+
basename: path50.substring(lastIndex + 1)
|
|
272976
272993
|
};
|
|
272977
272994
|
}
|
|
272978
272995
|
}
|
|
272979
272996
|
function joinPath() {
|
|
272980
|
-
var nonEmptyPaths = Array.prototype.filter.call(arguments, function(
|
|
272981
|
-
return
|
|
272997
|
+
var nonEmptyPaths = Array.prototype.filter.call(arguments, function(path50) {
|
|
272998
|
+
return path50;
|
|
272982
272999
|
});
|
|
272983
273000
|
var relevantPaths = [];
|
|
272984
|
-
nonEmptyPaths.forEach(function(
|
|
272985
|
-
if (/^\//.test(
|
|
272986
|
-
relevantPaths = [
|
|
273001
|
+
nonEmptyPaths.forEach(function(path50) {
|
|
273002
|
+
if (/^\//.test(path50)) {
|
|
273003
|
+
relevantPaths = [path50];
|
|
272987
273004
|
} else {
|
|
272988
|
-
relevantPaths.push(
|
|
273005
|
+
relevantPaths.push(path50);
|
|
272989
273006
|
}
|
|
272990
273007
|
});
|
|
272991
273008
|
return relevantPaths.join("/");
|
|
@@ -280388,9 +280405,9 @@ var require_office_xml_reader = __commonJS({
|
|
|
280388
280405
|
return collapseAlternateContent(document2)[0];
|
|
280389
280406
|
});
|
|
280390
280407
|
}
|
|
280391
|
-
function readXmlFromZipFile(docxFile,
|
|
280392
|
-
if (docxFile.exists(
|
|
280393
|
-
return docxFile.read(
|
|
280408
|
+
function readXmlFromZipFile(docxFile, path50) {
|
|
280409
|
+
if (docxFile.exists(path50)) {
|
|
280410
|
+
return docxFile.read(path50, "utf-8").then(stripUtf8Bom).then(read);
|
|
280394
280411
|
} else {
|
|
280395
280412
|
return promises4.resolve(null);
|
|
280396
280413
|
}
|
|
@@ -282154,10 +282171,10 @@ var require_body_reader = __commonJS({
|
|
|
282154
282171
|
}
|
|
282155
282172
|
}
|
|
282156
282173
|
function findEmbeddedImageFile(relationshipId) {
|
|
282157
|
-
var
|
|
282174
|
+
var path50 = uris.uriToZipEntryName("word", relationships.findTargetByRelationshipId(relationshipId));
|
|
282158
282175
|
return {
|
|
282159
|
-
path:
|
|
282160
|
-
read: docxFile.read.bind(docxFile,
|
|
282176
|
+
path: path50,
|
|
282177
|
+
read: docxFile.read.bind(docxFile, path50)
|
|
282161
282178
|
};
|
|
282162
282179
|
}
|
|
282163
282180
|
function readImage(imageFile, altText) {
|
|
@@ -282394,12 +282411,12 @@ var require_content_types_reader = __commonJS({
|
|
|
282394
282411
|
}
|
|
282395
282412
|
function contentTypes(overrides, extensionDefaults) {
|
|
282396
282413
|
return {
|
|
282397
|
-
findContentType: function(
|
|
282398
|
-
var overrideContentType = overrides[
|
|
282414
|
+
findContentType: function(path50) {
|
|
282415
|
+
var overrideContentType = overrides[path50];
|
|
282399
282416
|
if (overrideContentType) {
|
|
282400
282417
|
return overrideContentType;
|
|
282401
282418
|
} else {
|
|
282402
|
-
var pathParts =
|
|
282419
|
+
var pathParts = path50.split(".");
|
|
282403
282420
|
var extension = pathParts[pathParts.length - 1];
|
|
282404
282421
|
if (extensionDefaults.hasOwnProperty(extension)) {
|
|
282405
282422
|
return extensionDefaults[extension];
|
|
@@ -282648,12 +282665,12 @@ var require_comments_reader = __commonJS({
|
|
|
282648
282665
|
var require_path_is_absolute = __commonJS({
|
|
282649
282666
|
"node_modules/path-is-absolute/index.js"(exports2, module2) {
|
|
282650
282667
|
"use strict";
|
|
282651
|
-
function posix2(
|
|
282652
|
-
return
|
|
282668
|
+
function posix2(path50) {
|
|
282669
|
+
return path50.charAt(0) === "/";
|
|
282653
282670
|
}
|
|
282654
|
-
function win32(
|
|
282671
|
+
function win32(path50) {
|
|
282655
282672
|
var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
|
|
282656
|
-
var result2 = splitDeviceRe.exec(
|
|
282673
|
+
var result2 = splitDeviceRe.exec(path50);
|
|
282657
282674
|
var device = result2[1] || "";
|
|
282658
282675
|
var isUnc = Boolean(device && device.charAt(1) !== ":");
|
|
282659
282676
|
return Boolean(result2[2] || isUnc);
|
|
@@ -282687,19 +282704,19 @@ var require_files = __commonJS({
|
|
|
282687
282704
|
}
|
|
282688
282705
|
var base = options.relativeToFile ? dirname7(options.relativeToFile) : null;
|
|
282689
282706
|
function read(uri, encoding) {
|
|
282690
|
-
return resolveUri(uri).then(function(
|
|
282691
|
-
return readFile12(
|
|
282707
|
+
return resolveUri(uri).then(function(path50) {
|
|
282708
|
+
return readFile12(path50, encoding).caught(function(error51) {
|
|
282692
282709
|
var message = "could not open external image: '" + uri + "' (document directory: '" + base + "')\n" + error51.message;
|
|
282693
282710
|
return promises4.reject(new Error(message));
|
|
282694
282711
|
});
|
|
282695
282712
|
});
|
|
282696
282713
|
}
|
|
282697
282714
|
function resolveUri(uri) {
|
|
282698
|
-
var
|
|
282699
|
-
if (isAbsolutePath(
|
|
282700
|
-
return promises4.resolve(
|
|
282715
|
+
var path50 = uriToPath(uri);
|
|
282716
|
+
if (isAbsolutePath(path50)) {
|
|
282717
|
+
return promises4.resolve(path50);
|
|
282701
282718
|
} else if (base) {
|
|
282702
|
-
return promises4.resolve(resolvePath(base,
|
|
282719
|
+
return promises4.resolve(resolvePath(base, path50));
|
|
282703
282720
|
} else {
|
|
282704
282721
|
return promises4.reject(new Error("could not find external image '" + uri + "', path of input document is unknown"));
|
|
282705
282722
|
}
|
|
@@ -282715,11 +282732,11 @@ var require_files = __commonJS({
|
|
|
282715
282732
|
}
|
|
282716
282733
|
var uri = url2.parse(uriString);
|
|
282717
282734
|
if (isLocalFileUri(uri) || isRelativeUri(uri)) {
|
|
282718
|
-
var
|
|
282719
|
-
if (platform === "win32" && /^\/[a-z]:/i.test(
|
|
282720
|
-
return
|
|
282735
|
+
var path50 = decodeURIComponent(uri.path);
|
|
282736
|
+
if (platform === "win32" && /^\/[a-z]:/i.test(path50)) {
|
|
282737
|
+
return path50.slice(1);
|
|
282721
282738
|
} else {
|
|
282722
|
-
return
|
|
282739
|
+
return path50;
|
|
282723
282740
|
}
|
|
282724
282741
|
} else {
|
|
282725
282742
|
throw new Error("Could not convert URI to path: " + uriString);
|
|
@@ -282919,18 +282936,18 @@ var require_docx_reader = __commonJS({
|
|
|
282919
282936
|
readElement: contentTypesReader.readContentTypesFromXml,
|
|
282920
282937
|
defaultValue: contentTypesReader.defaultContentTypes
|
|
282921
282938
|
});
|
|
282922
|
-
function readNumberingFromZipFile(zipFile,
|
|
282939
|
+
function readNumberingFromZipFile(zipFile, path50, styles) {
|
|
282923
282940
|
return xmlFileReader({
|
|
282924
|
-
filename:
|
|
282941
|
+
filename: path50,
|
|
282925
282942
|
readElement: function(element) {
|
|
282926
282943
|
return numberingXml.readNumberingXml(element, { styles });
|
|
282927
282944
|
},
|
|
282928
282945
|
defaultValue: numberingXml.defaultNumbering
|
|
282929
282946
|
})(zipFile);
|
|
282930
282947
|
}
|
|
282931
|
-
function readStylesFromZipFile(zipFile,
|
|
282948
|
+
function readStylesFromZipFile(zipFile, path50) {
|
|
282932
282949
|
return xmlFileReader({
|
|
282933
|
-
filename:
|
|
282950
|
+
filename: path50,
|
|
282934
282951
|
readElement: stylesReader.readStylesXml,
|
|
282935
282952
|
defaultValue: stylesReader.defaultStyles
|
|
282936
282953
|
})(zipFile);
|
|
@@ -282961,10 +282978,10 @@ var require_style_map = __commonJS({
|
|
|
282961
282978
|
});
|
|
282962
282979
|
}
|
|
282963
282980
|
function updateRelationships(docxFile) {
|
|
282964
|
-
var
|
|
282981
|
+
var path50 = "word/_rels/document.xml.rels";
|
|
282965
282982
|
var relationshipsUri = "http://schemas.openxmlformats.org/package/2006/relationships";
|
|
282966
282983
|
var relationshipElementName = "{" + relationshipsUri + "}Relationship";
|
|
282967
|
-
return docxFile.read(
|
|
282984
|
+
return docxFile.read(path50, "utf8").then(xml.readString).then(function(relationshipsContainer) {
|
|
282968
282985
|
var relationships = relationshipsContainer.children;
|
|
282969
282986
|
addOrUpdateElement(relationships, relationshipElementName, "Id", {
|
|
282970
282987
|
"Id": "rMammothStyleMap",
|
|
@@ -282972,21 +282989,21 @@ var require_style_map = __commonJS({
|
|
|
282972
282989
|
"Target": styleMapAbsolutePath
|
|
282973
282990
|
});
|
|
282974
282991
|
var namespaces = { "": relationshipsUri };
|
|
282975
|
-
return docxFile.write(
|
|
282992
|
+
return docxFile.write(path50, xml.writeString(relationshipsContainer, namespaces));
|
|
282976
282993
|
});
|
|
282977
282994
|
}
|
|
282978
282995
|
function updateContentTypes(docxFile) {
|
|
282979
|
-
var
|
|
282996
|
+
var path50 = "[Content_Types].xml";
|
|
282980
282997
|
var contentTypesUri = "http://schemas.openxmlformats.org/package/2006/content-types";
|
|
282981
282998
|
var overrideName = "{" + contentTypesUri + "}Override";
|
|
282982
|
-
return docxFile.read(
|
|
282999
|
+
return docxFile.read(path50, "utf8").then(xml.readString).then(function(typesElement) {
|
|
282983
283000
|
var children = typesElement.children;
|
|
282984
283001
|
addOrUpdateElement(children, overrideName, "PartName", {
|
|
282985
283002
|
"PartName": styleMapAbsolutePath,
|
|
282986
283003
|
"ContentType": "text/prs.mammoth.style-map"
|
|
282987
283004
|
});
|
|
282988
283005
|
var namespaces = { "": contentTypesUri };
|
|
282989
|
-
return docxFile.write(
|
|
283006
|
+
return docxFile.write(path50, xml.writeString(typesElement, namespaces));
|
|
282990
283007
|
});
|
|
282991
283008
|
}
|
|
282992
283009
|
function addOrUpdateElement(elements, name29, identifyingAttribute, attributes) {
|
|
@@ -283678,9 +283695,9 @@ var require_document_to_html = __commonJS({
|
|
|
283678
283695
|
};
|
|
283679
283696
|
var paths = [];
|
|
283680
283697
|
if (run.highlight !== null) {
|
|
283681
|
-
var
|
|
283682
|
-
if (
|
|
283683
|
-
paths.push(
|
|
283698
|
+
var path50 = findHtmlPath({ type: "highlight", color: run.highlight });
|
|
283699
|
+
if (path50) {
|
|
283700
|
+
paths.push(path50);
|
|
283684
283701
|
}
|
|
283685
283702
|
}
|
|
283686
283703
|
if (run.isSmallCaps) {
|
|
@@ -283715,15 +283732,15 @@ var require_document_to_html = __commonJS({
|
|
|
283715
283732
|
messages.push(unrecognisedStyleWarning("run", run));
|
|
283716
283733
|
}
|
|
283717
283734
|
paths.push(stylePath);
|
|
283718
|
-
paths.forEach(function(
|
|
283719
|
-
nodes =
|
|
283735
|
+
paths.forEach(function(path51) {
|
|
283736
|
+
nodes = path51.wrap.bind(path51, nodes);
|
|
283720
283737
|
});
|
|
283721
283738
|
return nodes();
|
|
283722
283739
|
}
|
|
283723
283740
|
function findHtmlPathForRunProperty(elementType, defaultTagName) {
|
|
283724
|
-
var
|
|
283725
|
-
if (
|
|
283726
|
-
return
|
|
283741
|
+
var path50 = findHtmlPath({ type: elementType });
|
|
283742
|
+
if (path50) {
|
|
283743
|
+
return path50;
|
|
283727
283744
|
} else if (defaultTagName) {
|
|
283728
283745
|
return htmlPaths.element(defaultTagName, {}, { fresh: false });
|
|
283729
283746
|
} else {
|
|
@@ -287269,24 +287286,24 @@ function errMessage(err2) {
|
|
|
287269
287286
|
return err2 instanceof Error ? err2.message : String(err2);
|
|
287270
287287
|
}
|
|
287271
287288
|
function readFileStructuredError(err2, displayPath) {
|
|
287272
|
-
const
|
|
287289
|
+
const path50 = displayPath;
|
|
287273
287290
|
const msg = errMessage(err2);
|
|
287274
287291
|
const code = nodeErrno(err2);
|
|
287275
287292
|
if (code === "ENOENT") {
|
|
287276
|
-
const p2 =
|
|
287293
|
+
const p2 = path50 ?? "requested path";
|
|
287277
287294
|
return {
|
|
287278
287295
|
success: false,
|
|
287279
287296
|
error: "file_not_found",
|
|
287280
|
-
path:
|
|
287297
|
+
path: path50,
|
|
287281
287298
|
message: `No file at path "${p2}". Use list_files or explore_folder to find the correct path.`
|
|
287282
287299
|
};
|
|
287283
287300
|
}
|
|
287284
287301
|
if (code === "EISDIR" || msg.includes("is a directory") || msg.toLowerCase().includes("not a file")) {
|
|
287285
|
-
const p2 =
|
|
287302
|
+
const p2 = path50 ?? "requested path";
|
|
287286
287303
|
return {
|
|
287287
287304
|
success: false,
|
|
287288
287305
|
error: "not_a_file",
|
|
287289
|
-
path:
|
|
287306
|
+
path: path50,
|
|
287290
287307
|
message: `Path "${p2}" is a directory, not a file. Use explore_folder or list_files.`
|
|
287291
287308
|
};
|
|
287292
287309
|
}
|
|
@@ -287294,7 +287311,7 @@ function readFileStructuredError(err2, displayPath) {
|
|
|
287294
287311
|
return {
|
|
287295
287312
|
success: false,
|
|
287296
287313
|
error: "path_not_allowed",
|
|
287297
|
-
path:
|
|
287314
|
+
path: path50,
|
|
287298
287315
|
message: msg
|
|
287299
287316
|
};
|
|
287300
287317
|
}
|
|
@@ -287302,7 +287319,7 @@ function readFileStructuredError(err2, displayPath) {
|
|
|
287302
287319
|
return {
|
|
287303
287320
|
success: false,
|
|
287304
287321
|
error: "path_not_allowed",
|
|
287305
|
-
path:
|
|
287322
|
+
path: path50,
|
|
287306
287323
|
message: msg
|
|
287307
287324
|
};
|
|
287308
287325
|
}
|
|
@@ -289503,12 +289520,12 @@ function getMCPToolHeaderBindings(inputSchema) {
|
|
|
289503
289520
|
const bindings = [];
|
|
289504
289521
|
const headerNames = /* @__PURE__ */ new Set();
|
|
289505
289522
|
let error51;
|
|
289506
|
-
const visit3 = (value,
|
|
289523
|
+
const visit3 = (value, path50, staticallyReachable) => {
|
|
289507
289524
|
if (error51 != null || !isRecord(value)) {
|
|
289508
289525
|
return;
|
|
289509
289526
|
}
|
|
289510
289527
|
if ("x-mcp-header" in value) {
|
|
289511
|
-
if (!staticallyReachable ||
|
|
289528
|
+
if (!staticallyReachable || path50.length === 0) {
|
|
289512
289529
|
error51 = "x-mcp-header is not on a statically reachable property";
|
|
289513
289530
|
return;
|
|
289514
289531
|
}
|
|
@@ -289528,7 +289545,7 @@ function getMCPToolHeaderBindings(inputSchema) {
|
|
|
289528
289545
|
return;
|
|
289529
289546
|
}
|
|
289530
289547
|
headerNames.add(normalizedHeaderName);
|
|
289531
|
-
bindings.push({ headerName, path:
|
|
289548
|
+
bindings.push({ headerName, path: path50, valueType });
|
|
289532
289549
|
}
|
|
289533
289550
|
for (const [key, child] of Object.entries(value)) {
|
|
289534
289551
|
if (key === "x-mcp-header") {
|
|
@@ -289536,19 +289553,19 @@ function getMCPToolHeaderBindings(inputSchema) {
|
|
|
289536
289553
|
}
|
|
289537
289554
|
if (key === "properties" && isRecord(child)) {
|
|
289538
289555
|
for (const [propertyName, propertySchema] of Object.entries(child)) {
|
|
289539
|
-
visit3(propertySchema, [...
|
|
289556
|
+
visit3(propertySchema, [...path50, propertyName], staticallyReachable);
|
|
289540
289557
|
}
|
|
289541
289558
|
} else {
|
|
289542
|
-
visit3(child,
|
|
289559
|
+
visit3(child, path50, false);
|
|
289543
289560
|
}
|
|
289544
289561
|
}
|
|
289545
289562
|
};
|
|
289546
289563
|
visit3(inputSchema, [], true);
|
|
289547
289564
|
return error51 == null ? { success: true, bindings } : { success: false, error: error51 };
|
|
289548
289565
|
}
|
|
289549
|
-
function getValueAtPath(value,
|
|
289566
|
+
function getValueAtPath(value, path50) {
|
|
289550
289567
|
let current = value;
|
|
289551
|
-
for (const segment of
|
|
289568
|
+
for (const segment of path50) {
|
|
289552
289569
|
if (!isRecord(current)) {
|
|
289553
289570
|
return void 0;
|
|
289554
289571
|
}
|
|
@@ -304862,32 +304879,32 @@ var require_URL = __commonJS({
|
|
|
304862
304879
|
else
|
|
304863
304880
|
return basepath.substring(0, lastslash + 1) + refpath;
|
|
304864
304881
|
}
|
|
304865
|
-
function remove_dot_segments(
|
|
304866
|
-
if (!
|
|
304882
|
+
function remove_dot_segments(path50) {
|
|
304883
|
+
if (!path50) return path50;
|
|
304867
304884
|
var output = "";
|
|
304868
|
-
while (
|
|
304869
|
-
if (
|
|
304870
|
-
|
|
304885
|
+
while (path50.length > 0) {
|
|
304886
|
+
if (path50 === "." || path50 === "..") {
|
|
304887
|
+
path50 = "";
|
|
304871
304888
|
break;
|
|
304872
304889
|
}
|
|
304873
|
-
var twochars =
|
|
304874
|
-
var threechars =
|
|
304875
|
-
var fourchars =
|
|
304890
|
+
var twochars = path50.substring(0, 2);
|
|
304891
|
+
var threechars = path50.substring(0, 3);
|
|
304892
|
+
var fourchars = path50.substring(0, 4);
|
|
304876
304893
|
if (threechars === "../") {
|
|
304877
|
-
|
|
304894
|
+
path50 = path50.substring(3);
|
|
304878
304895
|
} else if (twochars === "./") {
|
|
304879
|
-
|
|
304896
|
+
path50 = path50.substring(2);
|
|
304880
304897
|
} else if (threechars === "/./") {
|
|
304881
|
-
|
|
304882
|
-
} else if (twochars === "/." &&
|
|
304883
|
-
|
|
304884
|
-
} else if (fourchars === "/../" || threechars === "/.." &&
|
|
304885
|
-
|
|
304898
|
+
path50 = "/" + path50.substring(3);
|
|
304899
|
+
} else if (twochars === "/." && path50.length === 2) {
|
|
304900
|
+
path50 = "/";
|
|
304901
|
+
} else if (fourchars === "/../" || threechars === "/.." && path50.length === 3) {
|
|
304902
|
+
path50 = "/" + path50.substring(4);
|
|
304886
304903
|
output = output.replace(/\/?[^\/]*$/, "");
|
|
304887
304904
|
} else {
|
|
304888
|
-
var segment =
|
|
304905
|
+
var segment = path50.match(/(\/?([^\/]*))/)[0];
|
|
304889
304906
|
output += segment;
|
|
304890
|
-
|
|
304907
|
+
path50 = path50.substring(segment.length);
|
|
304891
304908
|
}
|
|
304892
304909
|
}
|
|
304893
304910
|
return output;
|
|
@@ -319402,8 +319419,8 @@ __export(github_exports, {
|
|
|
319402
319419
|
pollGithub: () => pollGithub,
|
|
319403
319420
|
resetGithubLoginCacheForTests: () => resetGithubLoginCacheForTests
|
|
319404
319421
|
});
|
|
319405
|
-
async function ghGet(
|
|
319406
|
-
const res = await fetchImpl(`${GITHUB_API_BASE}${
|
|
319422
|
+
async function ghGet(path50, token, fetchImpl) {
|
|
319423
|
+
const res = await fetchImpl(`${GITHUB_API_BASE}${path50}`, {
|
|
319407
319424
|
headers: {
|
|
319408
319425
|
Authorization: `Bearer ${token}`,
|
|
319409
319426
|
Accept: "application/vnd.github+json",
|
|
@@ -319411,7 +319428,7 @@ async function ghGet(path49, token, fetchImpl) {
|
|
|
319411
319428
|
}
|
|
319412
319429
|
});
|
|
319413
319430
|
if (!res.ok) {
|
|
319414
|
-
throw new Error(`GitHub ${
|
|
319431
|
+
throw new Error(`GitHub ${path50} \u2192 ${res.status} ${res.statusText}`);
|
|
319415
319432
|
}
|
|
319416
319433
|
return res.json();
|
|
319417
319434
|
}
|
|
@@ -322635,10 +322652,10 @@ var init_automations2 = __esm({
|
|
|
322635
322652
|
}
|
|
322636
322653
|
});
|
|
322637
322654
|
|
|
322638
|
-
// raw-file:/
|
|
322655
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/node_modules/axe-core/axe.min.js
|
|
322639
322656
|
var axe_min_default;
|
|
322640
322657
|
var init_axe_min = __esm({
|
|
322641
|
-
"raw-file:/
|
|
322658
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/node_modules/axe-core/axe.min.js"() {
|
|
322642
322659
|
axe_min_default = `/*! axe v4.13.0
|
|
322643
322660
|
* Copyright (c) 2015 - 2026 Deque Systems, Inc.
|
|
322644
322661
|
*
|
|
@@ -322654,10 +322671,10 @@ var init_axe_min = __esm({
|
|
|
322654
322671
|
}
|
|
322655
322672
|
});
|
|
322656
322673
|
|
|
322657
|
-
// raw-file:/
|
|
322674
|
+
// raw-file:/home/runner/work/Atlarix/Atlarix/node_modules/web-vitals/dist/web-vitals.iife.js
|
|
322658
322675
|
var web_vitals_iife_default;
|
|
322659
322676
|
var init_web_vitals_iife = __esm({
|
|
322660
|
-
"raw-file:/
|
|
322677
|
+
"raw-file:/home/runner/work/Atlarix/Atlarix/node_modules/web-vitals/dist/web-vitals.iife.js"() {
|
|
322661
322678
|
web_vitals_iife_default = 'var webVitals=function(e){"use strict";let t=-1;const n=e=>{addEventListener("pageshow",n=>{n.persisted&&(t=n.timeStamp,e(n))},!0)},i=(e,t,n,i)=>{let s,o;return r=>{t.value>=0&&(r||i)&&(o=t.value-(s??0),(o||void 0===s)&&(s=t.value,t.delta=o,t.rating=((e,t)=>e>t[1]?"poor":e>t[0]?"needs-improvement":"good")(t.value,n),e(t)))}},s=e=>{requestAnimationFrame(()=>requestAnimationFrame(e))},o=()=>{const e=performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart<performance.now())return e},r=()=>o()?.activationStart??0,c=(e,n=-1)=>{const i=o();let s="navigate";t>=0?s="back-forward-cache":i&&(document.prerendering||r()>0?s="prerender":document.wasDiscarded?s="restore":i.type&&(s=i.type.replace(/_/g,"-")));return{name:e,value:n,rating:"good",delta:0,entries:[],id:`v5-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:s}},a=new WeakMap;function d(e,t){let n=a.get(t);return n||(n=new WeakMap,a.set(t,n)),n.get(e)||n.set(e,new t),n.get(e)}class h{t;i=0;o=[];h(e){if(e.hadRecentInput)return;const t=this.o[0],n=this.o.at(-1);this.i&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}}const f=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){const i=new PerformanceObserver(e=>{queueMicrotask(()=>{t(e.getEntries())})});return i.observe({type:e,buffered:!0,...n}),i}}catch{}},l=e=>{let t=!1;return()=>{t||(e(),t=!0)}};let u=-1;const m=new Set,g=()=>"hidden"!==document.visibilityState||document.prerendering?1/0:0,p=e=>{if("hidden"===document.visibilityState){if("visibilitychange"===e.type)for(const e of m)e();isFinite(u)||(u="visibilitychange"===e.type?e.timeStamp:0,removeEventListener("prerenderingchange",p,!0))}},v=()=>{if(u<0){const e=r(),t=document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").find(t=>"hidden"===t.name&&t.startTime>=e)?.startTime;u=t??g(),addEventListener("visibilitychange",p,!0),addEventListener("prerenderingchange",p,!0),n(()=>{setTimeout(()=>{u=g()})})}return{get firstHiddenTime(){return u},onHidden(e){m.add(e)}}},y=e=>{document.prerendering?addEventListener("prerenderingchange",e,!0):e()},T=[1800,3e3],b=(e,t={})=>{y(()=>{const o=v();let a,d=c("FCP");const h=f("paint",e=>{for(const t of e)"first-contentful-paint"===t.name&&(h.disconnect(),t.startTime<o.firstHiddenTime&&(d.value=Math.max(t.startTime-r(),0),d.entries.push(t),a(!0)))});h&&(a=i(e,d,T,t.reportAllChanges),n(n=>{d=c("FCP"),a=i(e,d,T,t.reportAllChanges),s(()=>{d.value=performance.now()-n.timeStamp,a(!0)})}))})},E=[.1,.25];let L=0,P=1/0,_=0;const M=e=>{for(const t of e)t.interactionId&&(P=Math.min(P,t.interactionId),_=Math.max(_,t.interactionId),L=_?(_-P)/7+1:0)};let w;const C=()=>w?L:performance.interactionCount??0,I=()=>{"interactionCount"in performance||w||(w=f("event",M,{durationThreshold:0}))};let F=0;class k{l=[];u=new Map;m;p;v(){F=C(),this.l.length=0,this.u.clear()}T(){const e=Math.min(this.l.length-1,Math.floor((C()-F)/50));return this.l[e]}h(e){if(this.m?.(e),!e.interactionId&&"first-input"!==e.entryType)return;const t=this.l.at(-1);let n=this.u.get(e.interactionId);if(n||this.l.length<10||e.duration>t.L){if(n?e.duration>n.L?(n.entries=[e],n.L=e.duration):e.duration===n.L&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],L:e.duration},this.u.set(n.id,n),this.l.push(n)),this.l.sort((e,t)=>t.L-e.L),this.l.length>10){const e=this.l.splice(10);for(const t of e)this.u.delete(t.id)}this.p?.(n)}}}const A=e=>{const t=globalThis.requestIdleCallback||setTimeout,n=globalThis.cancelIdleCallback||clearTimeout;if("hidden"===document.visibilityState)e();else{const i=l(e);let s=-1;const o=()=>{n(s),i()};addEventListener("visibilitychange",o,{once:!0,capture:!0}),s=t(()=>{removeEventListener("visibilitychange",o,{capture:!0}),i()})}},B=[200,500];class S{m;h(e){this.m?.(e)}}const q=[2500,4e3],N=[800,1800],H=e=>{document.prerendering?y(()=>H(e)):"complete"!==document.readyState?addEventListener("load",()=>H(e),!0):setTimeout(e)};return e.CLSThresholds=E,e.FCPThresholds=T,e.INPThresholds=B,e.LCPThresholds=q,e.TTFBThresholds=N,e.onCLS=(e,t={})=>{const o=v();b(l(()=>{let r,a=c("CLS",0);const l=d(t,h),u=e=>{for(const t of e)l.h(t);l.i>a.value&&(a.value=l.i,a.entries=l.o,r())},m=f("layout-shift",u);m&&(r=i(e,a,E,t.reportAllChanges),o.onHidden(()=>{u(m.takeRecords()),r(!0)}),n(()=>{l.i=0,a=c("CLS",0),r=i(e,a,E,t.reportAllChanges),s(r)}),setTimeout(r))}))},e.onFCP=b,e.onINP=(e,t={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;const s=v();y(()=>{I();let o,r=c("INP");const a=d(t,k),h=e=>{A(()=>{for(const t of e)a.h(t);const t=a.T();t&&t.L!==r.value&&(r.value=t.L,r.entries=t.entries,o())})},l=f("event",h,{durationThreshold:t.durationThreshold??40});o=i(e,r,B,t.reportAllChanges),l&&(l.observe({type:"first-input",buffered:!0}),s.onHidden(()=>{h(l.takeRecords()),o(!0)}),n(()=>{a.v(),r=c("INP"),o=i(e,r,B,t.reportAllChanges)}))})},e.onLCP=(e,t={})=>{y(()=>{const o=v();let a,h=c("LCP");const u=d(t,S),m=e=>{t.reportAllChanges||(e=e.slice(-1));for(const t of e)u.h(t),t.startTime<o.firstHiddenTime&&(h.value=Math.max(t.startTime-r(),0),h.entries=[t],a())},g=f("largest-contentful-paint",m);if(g){a=i(e,h,q,t.reportAllChanges);const o=l(()=>{m(g.takeRecords()),g.disconnect(),a(!0)}),r=e=>{e.isTrusted&&(A(o),removeEventListener(e.type,r,{capture:!0}))};for(const e of["keydown","click","visibilitychange"])addEventListener(e,r,{capture:!0});n(n=>{h=c("LCP"),a=i(e,h,q,t.reportAllChanges),s(()=>{h.value=performance.now()-n.timeStamp,a(!0)})})}})},e.onTTFB=(e,t={})=>{let s=c("TTFB"),a=i(e,s,N,t.reportAllChanges);H(()=>{const d=o();d&&(s.value=Math.max(d.responseStart-r(),0),s.entries=[d],a(!0),n(()=>{s=c("TTFB",0),a=i(e,s,N,t.reportAllChanges),a(!0)}))})},e}({});\n';
|
|
322662
322679
|
}
|
|
322663
322680
|
});
|
|
@@ -326392,12 +326409,12 @@ ${body}${more}`,
|
|
|
326392
326409
|
LIMIT ${maxHits}
|
|
326393
326410
|
`);
|
|
326394
326411
|
for (const h3 of hits) {
|
|
326395
|
-
const
|
|
326412
|
+
const path50 = hitPath(titleById.get(h3.session_id) ?? h3.session_id, h3.turn, h3.role);
|
|
326396
326413
|
groups.push({
|
|
326397
|
-
file:
|
|
326414
|
+
file: path50,
|
|
326398
326415
|
matchCount: countOccurrences2(h3.content ?? "", query)
|
|
326399
326416
|
});
|
|
326400
|
-
lines.push(`${
|
|
326417
|
+
lines.push(`${path50}
|
|
326401
326418
|
${snippetAround(h3.content ?? "", query)}`);
|
|
326402
326419
|
}
|
|
326403
326420
|
const totalHits = hits.length;
|
|
@@ -326877,16 +326894,16 @@ var init_run_command_guidance = __esm({
|
|
|
326877
326894
|
});
|
|
326878
326895
|
|
|
326879
326896
|
// src/lib/agent/mutation-verify.ts
|
|
326880
|
-
function recordUnverifiedEdit(turnId,
|
|
326897
|
+
function recordUnverifiedEdit(turnId, path50) {
|
|
326881
326898
|
let set2 = unverifiedEditsByTurn.get(turnId);
|
|
326882
326899
|
if (!set2) {
|
|
326883
326900
|
set2 = /* @__PURE__ */ new Set();
|
|
326884
326901
|
unverifiedEditsByTurn.set(turnId, set2);
|
|
326885
326902
|
}
|
|
326886
|
-
set2.add(
|
|
326903
|
+
set2.add(path50);
|
|
326887
326904
|
}
|
|
326888
|
-
function clearUnverifiedEdit(turnId,
|
|
326889
|
-
unverifiedEditsByTurn.get(turnId)?.delete(
|
|
326905
|
+
function clearUnverifiedEdit(turnId, path50) {
|
|
326906
|
+
unverifiedEditsByTurn.get(turnId)?.delete(path50);
|
|
326890
326907
|
}
|
|
326891
326908
|
function getUnverifiedEditFeedback(turnId) {
|
|
326892
326909
|
if (turnId == null) return null;
|
|
@@ -328292,6 +328309,16 @@ async function simpleStreamText(ctx, deps, {
|
|
|
328292
328309
|
inputTokens: split?.inputTokens ?? null,
|
|
328293
328310
|
outputTokens: split?.outputTokens ?? 0,
|
|
328294
328311
|
totalTokens: total ?? (split?.inputTokens ?? 0) + (split?.outputTokens ?? 0),
|
|
328312
|
+
// The cache split, which `inputOutputTokensFromUsage`
|
|
328313
|
+
// already resolves and this emit used to discard. Without
|
|
328314
|
+
// it a consumer sees only the gross input count and has no
|
|
328315
|
+
// way to price it: a cached read costs a small fraction of
|
|
328316
|
+
// a fresh one — on DeepSeek roughly a thirtieth — so a
|
|
328317
|
+
// trajectory reporting gross input alone overstates spend
|
|
328318
|
+
// by more than an order of magnitude on a long agent run,
|
|
328319
|
+
// which is exactly the sort of run this is used for.
|
|
328320
|
+
...split?.cachedInputTokens != null ? { cachedInputTokens: split.cachedInputTokens } : {},
|
|
328321
|
+
...split?.cacheCreationInputTokens != null ? { cacheCreationInputTokens: split.cacheCreationInputTokens } : {},
|
|
328295
328322
|
toolBuckets: { ...turnBuckets }
|
|
328296
328323
|
});
|
|
328297
328324
|
}
|
|
@@ -329115,10 +329142,10 @@ async function hasConfiguredGitIdentity(workspacePath) {
|
|
|
329115
329142
|
return result2.exitCode === 0 && result2.stdout.trim().length > 0;
|
|
329116
329143
|
}
|
|
329117
329144
|
async function getCurrentCommitHash({
|
|
329118
|
-
path:
|
|
329145
|
+
path: path50,
|
|
329119
329146
|
ref = "HEAD"
|
|
329120
329147
|
}) {
|
|
329121
|
-
const gitDir = resolveGitDir(
|
|
329148
|
+
const gitDir = resolveGitDir(path50);
|
|
329122
329149
|
if (!gitDir) return "";
|
|
329123
329150
|
const result2 = await exec(["rev-parse", ref], gitDir);
|
|
329124
329151
|
if (isGitMissingResult(result2)) {
|
|
@@ -329524,10 +329551,10 @@ var init_interceptor = __esm({
|
|
|
329524
329551
|
* Update workspace path and ID (e.g. after create_workspace in same turn).
|
|
329525
329552
|
* Ensures subsequent run_command/write_file in this session use the new project root.
|
|
329526
329553
|
*/
|
|
329527
|
-
setWorkspace(
|
|
329528
|
-
this.workspacePath =
|
|
329554
|
+
setWorkspace(path50, id) {
|
|
329555
|
+
this.workspacePath = path50;
|
|
329529
329556
|
if (id != null) this.workspaceId = id;
|
|
329530
|
-
logger82.log(`[PermissionInterceptor] Workspace updated to: ${
|
|
329557
|
+
logger82.log(`[PermissionInterceptor] Workspace updated to: ${path50} (id: ${id})`);
|
|
329531
329558
|
}
|
|
329532
329559
|
// ════════════════════════════════════════════════════════════════════════════
|
|
329533
329560
|
// DETECTION & PARSING
|
|
@@ -329877,7 +329904,7 @@ var init_interceptor = __esm({
|
|
|
329877
329904
|
}
|
|
329878
329905
|
}
|
|
329879
329906
|
const preview = operation.request.preview;
|
|
329880
|
-
const
|
|
329907
|
+
const path50 = preview?.path;
|
|
329881
329908
|
const fileOps = /* @__PURE__ */ new Set([
|
|
329882
329909
|
"write_file",
|
|
329883
329910
|
"write_multiple_files",
|
|
@@ -329886,11 +329913,11 @@ var init_interceptor = __esm({
|
|
|
329886
329913
|
"insert_code",
|
|
329887
329914
|
"delete_lines"
|
|
329888
329915
|
]);
|
|
329889
|
-
if (
|
|
329916
|
+
if (path50 && fileOps.has(operation.request.operation)) {
|
|
329890
329917
|
const opType = preview.type === "create" ? "create" : preview.type === "delete" ? "delete" : "update";
|
|
329891
329918
|
return {
|
|
329892
329919
|
success: true,
|
|
329893
|
-
path:
|
|
329920
|
+
path: path50,
|
|
329894
329921
|
operation: opType,
|
|
329895
329922
|
oldContent: preview.oldContent ?? "",
|
|
329896
329923
|
newContent: preview.content ?? "",
|
|
@@ -329902,8 +329929,8 @@ var init_interceptor = __esm({
|
|
|
329902
329929
|
...preview.notice ? { output: preview.notice } : {}
|
|
329903
329930
|
};
|
|
329904
329931
|
}
|
|
329905
|
-
if (
|
|
329906
|
-
return { success: true, path:
|
|
329932
|
+
if (path50) {
|
|
329933
|
+
return { success: true, path: path50 };
|
|
329907
329934
|
}
|
|
329908
329935
|
if (operation.request.operation === "automation_write") {
|
|
329909
329936
|
const autoPreview = operation.request.preview;
|
|
@@ -332593,6 +332620,10 @@ async function runBuildBranch(ctx, deps) {
|
|
|
332593
332620
|
let activityStatus = "done";
|
|
332594
332621
|
let toolResultForActivity;
|
|
332595
332622
|
const isStreamTool = toolName === "stream_terminal_output";
|
|
332623
|
+
const recordActivityResult = (value) => {
|
|
332624
|
+
toolResultForActivity = value;
|
|
332625
|
+
return value;
|
|
332626
|
+
};
|
|
332596
332627
|
const uiToolLabel = getToolActivityLabel(toolName);
|
|
332597
332628
|
if (!isStreamTool) {
|
|
332598
332629
|
safeSend(event.sender, "chat:tool:start", {
|
|
@@ -332937,34 +332968,37 @@ async function runBuildBranch(ctx, deps) {
|
|
|
332937
332968
|
permRequest.operation,
|
|
332938
332969
|
execResult
|
|
332939
332970
|
);
|
|
332940
|
-
return jsonAfterSuccessfulExec(execResult);
|
|
332971
|
+
return recordActivityResult(jsonAfterSuccessfulExec(execResult));
|
|
332941
332972
|
}
|
|
332942
332973
|
if (execResult.exitCode !== void 0) {
|
|
332943
332974
|
logger86.log(
|
|
332944
332975
|
`[Build Mode] Autonomous exec command failed: ${operationId} (exit ${execResult.exitCode})`
|
|
332945
332976
|
);
|
|
332946
|
-
|
|
332977
|
+
activityStatus = "error";
|
|
332978
|
+
return recordActivityResult(JSON.stringify({
|
|
332947
332979
|
success: false,
|
|
332948
332980
|
error: execResult.error || `Command failed with exit code ${execResult.exitCode}`,
|
|
332949
332981
|
exitCode: execResult.exitCode,
|
|
332950
332982
|
output: execResult.output,
|
|
332951
332983
|
operation: permRequest.operation,
|
|
332952
332984
|
path: permRequest.preview.path || permRequest.preview.command
|
|
332953
|
-
});
|
|
332985
|
+
}));
|
|
332954
332986
|
}
|
|
332955
|
-
|
|
332987
|
+
activityStatus = "error";
|
|
332988
|
+
return recordActivityResult(JSON.stringify({
|
|
332956
332989
|
success: false,
|
|
332957
332990
|
error: execMeta.error ?? execResult.error ?? "Execution failed",
|
|
332958
332991
|
operation: permRequest.operation,
|
|
332959
332992
|
path: permRequest.preview.path
|
|
332960
|
-
});
|
|
332993
|
+
}));
|
|
332961
332994
|
} catch (error51) {
|
|
332962
332995
|
logger86.error(`[Build Mode] Autonomous permission error: ${operationId}`, error51);
|
|
332963
|
-
|
|
332996
|
+
activityStatus = "error";
|
|
332997
|
+
return recordActivityResult(JSON.stringify({
|
|
332964
332998
|
success: false,
|
|
332965
332999
|
error: `Permission request failed: ${error51 instanceof Error ? error51.message : String(error51)}`,
|
|
332966
333000
|
timedOut: true
|
|
332967
|
-
});
|
|
333001
|
+
}));
|
|
332968
333002
|
}
|
|
332969
333003
|
}
|
|
332970
333004
|
const __enrichT0 = Date.now();
|
|
@@ -333004,12 +333038,13 @@ async function runBuildBranch(ctx, deps) {
|
|
|
333004
333038
|
if (approved) {
|
|
333005
333039
|
const execResult = permissionInterceptor.getExecutionResult(operationId);
|
|
333006
333040
|
logger86.log(`[Build Mode] Permission approved: ${operationId}`);
|
|
333007
|
-
return jsonAfterSuccessfulExec(execResult);
|
|
333041
|
+
return recordActivityResult(jsonAfterSuccessfulExec(execResult));
|
|
333008
333042
|
} else {
|
|
333009
333043
|
const execResult = permissionInterceptor.getExecutionResult(operationId);
|
|
333010
333044
|
if (execResult.exitCode !== void 0) {
|
|
333011
333045
|
logger86.log(`[Build Mode] Command failed: ${operationId} (exit ${execResult.exitCode})`);
|
|
333012
|
-
|
|
333046
|
+
activityStatus = "error";
|
|
333047
|
+
return recordActivityResult(JSON.stringify({
|
|
333013
333048
|
success: false,
|
|
333014
333049
|
error: execResult.error || `Command failed with exit code ${execResult.exitCode}`,
|
|
333015
333050
|
exitCode: execResult.exitCode,
|
|
@@ -333017,24 +333052,26 @@ async function runBuildBranch(ctx, deps) {
|
|
|
333017
333052
|
// Include terminal output for AI context
|
|
333018
333053
|
operation: permRequest.operation,
|
|
333019
333054
|
path: permRequest.preview.path || permRequest.preview.command
|
|
333020
|
-
});
|
|
333055
|
+
}));
|
|
333021
333056
|
} else {
|
|
333022
333057
|
logger86.log(`[Build Mode] Permission denied: ${operationId}`);
|
|
333023
|
-
|
|
333058
|
+
activityStatus = "error";
|
|
333059
|
+
return recordActivityResult(JSON.stringify({
|
|
333024
333060
|
success: false,
|
|
333025
333061
|
error: "Permission denied by user",
|
|
333026
333062
|
operation: permRequest.operation,
|
|
333027
333063
|
path: permRequest.preview.path
|
|
333028
|
-
});
|
|
333064
|
+
}));
|
|
333029
333065
|
}
|
|
333030
333066
|
}
|
|
333031
333067
|
} catch (error51) {
|
|
333032
333068
|
if (abortController.signal.aborted) throw error51;
|
|
333033
333069
|
logger86.error(`[Build Mode] Permission error: ${operationId}`, error51);
|
|
333034
|
-
|
|
333070
|
+
activityStatus = "error";
|
|
333071
|
+
return recordActivityResult(JSON.stringify({
|
|
333035
333072
|
success: false,
|
|
333036
333073
|
error: `Permission request failed: ${error51 instanceof Error ? error51.message : String(error51)}`
|
|
333037
|
-
});
|
|
333074
|
+
}));
|
|
333038
333075
|
}
|
|
333039
333076
|
}
|
|
333040
333077
|
}
|
|
@@ -333995,7 +334032,16 @@ async function finalizeTurn(ctx, deps) {
|
|
|
333995
334032
|
} : null,
|
|
333996
334033
|
ctx.turnActualCostUsd > 0 ? ctx.turnActualCostUsd : null
|
|
333997
334034
|
);
|
|
333998
|
-
return
|
|
334035
|
+
return {
|
|
334036
|
+
...cost != null ? { turnCostUsd: cost } : {},
|
|
334037
|
+
// The cache split, alongside the cost derived FROM it. The cost
|
|
334038
|
+
// is only available where a rate is known — an unpriced model
|
|
334039
|
+
// returns null — so a consumer that has to compute its own
|
|
334040
|
+
// needs the counts, and `turnTokens` alone cannot be priced:
|
|
334041
|
+
// a cached read is a fraction of a fresh one.
|
|
334042
|
+
...ctx.turnCachedInputTokens > 0 ? { turnCachedInputTokens: ctx.turnCachedInputTokens } : {},
|
|
334043
|
+
...ctx.turnCacheCreationTokens > 0 ? { turnCacheCreationTokens: ctx.turnCacheCreationTokens } : {}
|
|
334044
|
+
};
|
|
333999
334045
|
})(),
|
|
334000
334046
|
// v12 0.2 (B2): renderer passes this through to the session
|
|
334001
334047
|
// store as extras.modelContent when persisting the assistant
|
|
@@ -336191,6 +336237,8 @@ var init_chat_stream_handlers = __esm({
|
|
|
336191
336237
|
|
|
336192
336238
|
// src/headless/atlarix-headless.mts
|
|
336193
336239
|
import fs39 from "node:fs";
|
|
336240
|
+
import path49 from "node:path";
|
|
336241
|
+
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
336194
336242
|
|
|
336195
336243
|
// src/headless/headless-runner.ts
|
|
336196
336244
|
init_fake_sender();
|
|
@@ -336241,12 +336289,19 @@ async function autoApprove(opts) {
|
|
|
336241
336289
|
|
|
336242
336290
|
// src/headless/trajectory-writer.ts
|
|
336243
336291
|
init_thinking_tags();
|
|
336292
|
+
init_redact_secrets();
|
|
336244
336293
|
import fs from "node:fs";
|
|
336245
336294
|
var TRAJECTORY_SCHEMA_VERSION = 1;
|
|
336246
336295
|
var THOUGHT_BLOCK_RE = /<(think|thinking|reasoning|redacted_thinking)>([\s\S]*?)<\/\1>/gi;
|
|
336247
336296
|
var TOOL_TAGS = "atlarix-tool-call|atlarix-mcp-tool-call|atlarix-tool-result|atlarix-mcp-tool-result";
|
|
336248
|
-
var TOOL_BLOCK_RE = new RegExp(
|
|
336249
|
-
|
|
336297
|
+
var TOOL_BLOCK_RE = new RegExp(
|
|
336298
|
+
`<(${TOOL_TAGS})(?:\\s[^>]*)?>[\\s\\S]*?</\\1\\s*>`,
|
|
336299
|
+
"gi"
|
|
336300
|
+
);
|
|
336301
|
+
var TOOL_ORPHAN_TAG_RE = new RegExp(
|
|
336302
|
+
`</?(?:${TOOL_TAGS})(?:\\s[^>]*)?>`,
|
|
336303
|
+
"gi"
|
|
336304
|
+
);
|
|
336250
336305
|
function stripToolMarkup(content) {
|
|
336251
336306
|
return content.replace(TOOL_BLOCK_RE, "").replace(TOOL_ORPHAN_TAG_RE, "");
|
|
336252
336307
|
}
|
|
@@ -336266,7 +336321,8 @@ function createTrajectoryWriter(filePath, meta3) {
|
|
|
336266
336321
|
const writeLine = (event) => {
|
|
336267
336322
|
if (closed) return;
|
|
336268
336323
|
try {
|
|
336269
|
-
|
|
336324
|
+
const line = redactSecretsInText(JSON.stringify({ ts: Date.now(), ...event }));
|
|
336325
|
+
fs.writeSync(fd2, `${line}
|
|
336270
336326
|
`);
|
|
336271
336327
|
} catch {
|
|
336272
336328
|
}
|
|
@@ -336295,6 +336351,7 @@ function createTrajectoryWriter(filePath, meta3) {
|
|
|
336295
336351
|
switch (send.channel) {
|
|
336296
336352
|
case "chat:activity": {
|
|
336297
336353
|
if (p2.type !== "tool_use") return;
|
|
336354
|
+
if (!p2.toolCallId && !p2.toolArgs && p2.resultText === void 0) return;
|
|
336298
336355
|
writeLine({
|
|
336299
336356
|
type: "tool_use",
|
|
336300
336357
|
ts: p2.timestamp ?? Date.now(),
|
|
@@ -336320,7 +336377,14 @@ function createTrajectoryWriter(filePath, meta3) {
|
|
|
336320
336377
|
type: "token_usage",
|
|
336321
336378
|
inputTokens: p2.inputTokens,
|
|
336322
336379
|
outputTokens: p2.outputTokens,
|
|
336323
|
-
totalTokens: p2.totalTokens
|
|
336380
|
+
totalTokens: p2.totalTokens,
|
|
336381
|
+
// Of `inputTokens`, the share served from the provider's prompt
|
|
336382
|
+
// cache. Load-bearing for anyone pricing this file: a cached read is
|
|
336383
|
+
// a fraction of a fresh one, so gross input alone reads as far more
|
|
336384
|
+
// spend than actually occurred — measured at ~75% hit rate on a real
|
|
336385
|
+
// agent turn, where ignoring it overstates cost roughly 30x.
|
|
336386
|
+
...p2.cachedInputTokens != null ? { cachedInputTokens: p2.cachedInputTokens } : {},
|
|
336387
|
+
...p2.cacheCreationInputTokens != null ? { cacheCreationInputTokens: p2.cacheCreationInputTokens } : {}
|
|
336324
336388
|
});
|
|
336325
336389
|
return;
|
|
336326
336390
|
}
|
|
@@ -336332,6 +336396,8 @@ function createTrajectoryWriter(filePath, meta3) {
|
|
|
336332
336396
|
type: "turn_end",
|
|
336333
336397
|
turnTokens: p2.turnTokens,
|
|
336334
336398
|
turnCostUsd: p2.turnCostUsd,
|
|
336399
|
+
turnCachedInputTokens: p2.turnCachedInputTokens,
|
|
336400
|
+
turnCacheCreationTokens: p2.turnCacheCreationTokens,
|
|
336335
336401
|
totalTokens: p2.totalTokens,
|
|
336336
336402
|
reasoningTokens: p2.reasoningTokens,
|
|
336337
336403
|
auxTokens: p2.auxTokens,
|
|
@@ -336497,7 +336563,12 @@ async function runHeadlessAgent(opts) {
|
|
|
336497
336563
|
}
|
|
336498
336564
|
|
|
336499
336565
|
// src/headless/atlarix-headless.mts
|
|
336500
|
-
|
|
336566
|
+
if (!process.env.ATLARIX_MODELS_SNAPSHOT) {
|
|
336567
|
+
const here = path49.dirname(fileURLToPath2(import.meta.url));
|
|
336568
|
+
const shipped = path49.join(here, "models-snapshot.json.gz");
|
|
336569
|
+
if (fs39.existsSync(shipped)) process.env.ATLARIX_MODELS_SNAPSHOT = shipped;
|
|
336570
|
+
}
|
|
336571
|
+
var VERSION15 = false ? "dev" : "14.39.3";
|
|
336501
336572
|
if (process.argv[2] === "run") process.argv.splice(2, 1);
|
|
336502
336573
|
function arg(name29) {
|
|
336503
336574
|
const i4 = process.argv.indexOf(`--${name29}`);
|