@jaggerxtrm/specialists 3.6.19 → 3.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/mandatory-rules/core-session-boundary.md +5 -0
- package/config/mandatory-rules/debugger-trace-first.md +5 -0
- package/config/mandatory-rules/executor-delivery.md +5 -0
- package/config/mandatory-rules/explorer-readonly.md +5 -0
- package/config/mandatory-rules/git-workflow-safe.md +5 -0
- package/config/mandatory-rules/gitnexus-required.md +5 -0
- package/config/mandatory-rules/index.json +8 -0
- package/config/mandatory-rules/overthinker-4phase.md +5 -0
- package/config/mandatory-rules/researcher-source-discipline.md +5 -0
- package/config/mandatory-rules/reviewer-verdict-format.md +5 -0
- package/config/mandatory-rules/test-runner-execution-scope.md +5 -0
- package/config/specialists/debugger.specialist.json +6 -0
- package/config/specialists/executor.specialist.json +7 -0
- package/config/specialists/explorer.specialist.json +7 -1
- package/config/specialists/overthinker.specialist.json +5 -0
- package/config/specialists/researcher.specialist.json +5 -0
- package/config/specialists/reviewer.specialist.json +6 -0
- package/config/specialists/sync-docs.specialist.json +5 -0
- package/config/specialists/test-runner.specialist.json +5 -0
- package/dist/index.js +852 -479
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -29,7 +29,7 @@ var __export = (target, all) => {
|
|
|
29
29
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
30
30
|
var __require = import.meta.require;
|
|
31
31
|
|
|
32
|
-
// node_modules/zod/v3/helpers/util.js
|
|
32
|
+
// ../../../node_modules/zod/v3/helpers/util.js
|
|
33
33
|
var util, objectUtil, ZodParsedType, getParsedType = (data) => {
|
|
34
34
|
const t = typeof data;
|
|
35
35
|
switch (t) {
|
|
@@ -160,7 +160,7 @@ var init_util = __esm(() => {
|
|
|
160
160
|
]);
|
|
161
161
|
});
|
|
162
162
|
|
|
163
|
-
// node_modules/zod/v3/ZodError.js
|
|
163
|
+
// ../../../node_modules/zod/v3/ZodError.js
|
|
164
164
|
var ZodIssueCode, quotelessJson = (obj) => {
|
|
165
165
|
const json = JSON.stringify(obj, null, 2);
|
|
166
166
|
return json.replace(/"([^"]+)":/g, "$1:");
|
|
@@ -281,7 +281,7 @@ var init_ZodError = __esm(() => {
|
|
|
281
281
|
};
|
|
282
282
|
});
|
|
283
283
|
|
|
284
|
-
// node_modules/zod/v3/locales/en.js
|
|
284
|
+
// ../../../node_modules/zod/v3/locales/en.js
|
|
285
285
|
var errorMap = (issue, _ctx) => {
|
|
286
286
|
let message;
|
|
287
287
|
switch (issue.code) {
|
|
@@ -388,7 +388,7 @@ var init_en = __esm(() => {
|
|
|
388
388
|
en_default = errorMap;
|
|
389
389
|
});
|
|
390
390
|
|
|
391
|
-
// node_modules/zod/v3/errors.js
|
|
391
|
+
// ../../../node_modules/zod/v3/errors.js
|
|
392
392
|
function setErrorMap(map) {
|
|
393
393
|
overrideErrorMap = map;
|
|
394
394
|
}
|
|
@@ -401,7 +401,7 @@ var init_errors = __esm(() => {
|
|
|
401
401
|
overrideErrorMap = en_default;
|
|
402
402
|
});
|
|
403
403
|
|
|
404
|
-
// node_modules/zod/v3/helpers/parseUtil.js
|
|
404
|
+
// ../../../node_modules/zod/v3/helpers/parseUtil.js
|
|
405
405
|
function addIssueToContext(ctx, issueData) {
|
|
406
406
|
const overrideMap = getErrorMap();
|
|
407
407
|
const issue = makeIssue({
|
|
@@ -506,10 +506,10 @@ var init_parseUtil = __esm(() => {
|
|
|
506
506
|
});
|
|
507
507
|
});
|
|
508
508
|
|
|
509
|
-
// node_modules/zod/v3/helpers/typeAliases.js
|
|
509
|
+
// ../../../node_modules/zod/v3/helpers/typeAliases.js
|
|
510
510
|
var init_typeAliases = () => {};
|
|
511
511
|
|
|
512
|
-
// node_modules/zod/v3/helpers/errorUtil.js
|
|
512
|
+
// ../../../node_modules/zod/v3/helpers/errorUtil.js
|
|
513
513
|
var errorUtil;
|
|
514
514
|
var init_errorUtil = __esm(() => {
|
|
515
515
|
(function(errorUtil2) {
|
|
@@ -518,7 +518,7 @@ var init_errorUtil = __esm(() => {
|
|
|
518
518
|
})(errorUtil || (errorUtil = {}));
|
|
519
519
|
});
|
|
520
520
|
|
|
521
|
-
// node_modules/zod/v3/types.js
|
|
521
|
+
// ../../../node_modules/zod/v3/types.js
|
|
522
522
|
class ParseInputLazyPath {
|
|
523
523
|
constructor(parent, value, path, key) {
|
|
524
524
|
this._cachedPath = [];
|
|
@@ -3869,7 +3869,7 @@ var init_types = __esm(() => {
|
|
|
3869
3869
|
NEVER = INVALID;
|
|
3870
3870
|
});
|
|
3871
3871
|
|
|
3872
|
-
// node_modules/zod/v3/external.js
|
|
3872
|
+
// ../../../node_modules/zod/v3/external.js
|
|
3873
3873
|
var exports_external = {};
|
|
3874
3874
|
__export(exports_external, {
|
|
3875
3875
|
void: () => voidType,
|
|
@@ -3989,7 +3989,7 @@ var init_external = __esm(() => {
|
|
|
3989
3989
|
init_ZodError();
|
|
3990
3990
|
});
|
|
3991
3991
|
|
|
3992
|
-
// node_modules/ajv/dist/compile/codegen/code.js
|
|
3992
|
+
// ../../../node_modules/ajv/dist/compile/codegen/code.js
|
|
3993
3993
|
var require_code = __commonJS((exports) => {
|
|
3994
3994
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3995
3995
|
exports.regexpCode = exports.getEsmExportName = exports.getProperty = exports.safeStringify = exports.stringify = exports.strConcat = exports.addCodeArg = exports.str = exports._ = exports.nil = exports._Code = exports.Name = exports.IDENTIFIER = exports._CodeOrName = undefined;
|
|
@@ -4143,7 +4143,7 @@ var require_code = __commonJS((exports) => {
|
|
|
4143
4143
|
exports.regexpCode = regexpCode;
|
|
4144
4144
|
});
|
|
4145
4145
|
|
|
4146
|
-
// node_modules/ajv/dist/compile/codegen/scope.js
|
|
4146
|
+
// ../../../node_modules/ajv/dist/compile/codegen/scope.js
|
|
4147
4147
|
var require_scope = __commonJS((exports) => {
|
|
4148
4148
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4149
4149
|
exports.ValueScope = exports.ValueScopeName = exports.Scope = exports.varKinds = exports.UsedValueState = undefined;
|
|
@@ -4289,7 +4289,7 @@ var require_scope = __commonJS((exports) => {
|
|
|
4289
4289
|
exports.ValueScope = ValueScope;
|
|
4290
4290
|
});
|
|
4291
4291
|
|
|
4292
|
-
// node_modules/ajv/dist/compile/codegen/index.js
|
|
4292
|
+
// ../../../node_modules/ajv/dist/compile/codegen/index.js
|
|
4293
4293
|
var require_codegen = __commonJS((exports) => {
|
|
4294
4294
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4295
4295
|
exports.or = exports.and = exports.not = exports.CodeGen = exports.operators = exports.varKinds = exports.ValueScopeName = exports.ValueScope = exports.Scope = exports.Name = exports.regexpCode = exports.stringify = exports.getProperty = exports.nil = exports.strConcat = exports.str = exports._ = undefined;
|
|
@@ -4999,7 +4999,7 @@ var require_codegen = __commonJS((exports) => {
|
|
|
4999
4999
|
}
|
|
5000
5000
|
});
|
|
5001
5001
|
|
|
5002
|
-
// node_modules/ajv/dist/compile/util.js
|
|
5002
|
+
// ../../../node_modules/ajv/dist/compile/util.js
|
|
5003
5003
|
var require_util = __commonJS((exports) => {
|
|
5004
5004
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5005
5005
|
exports.checkStrictMode = exports.getErrorPath = exports.Type = exports.useFunc = exports.setEvaluated = exports.evaluatedPropsToName = exports.mergeEvaluated = exports.eachItem = exports.unescapeJsonPointer = exports.escapeJsonPointer = exports.escapeFragment = exports.unescapeFragment = exports.schemaRefOrVal = exports.schemaHasRulesButRef = exports.schemaHasRules = exports.checkUnknownRules = exports.alwaysValidSchema = exports.toHash = undefined;
|
|
@@ -5163,7 +5163,7 @@ var require_util = __commonJS((exports) => {
|
|
|
5163
5163
|
exports.checkStrictMode = checkStrictMode;
|
|
5164
5164
|
});
|
|
5165
5165
|
|
|
5166
|
-
// node_modules/ajv/dist/compile/names.js
|
|
5166
|
+
// ../../../node_modules/ajv/dist/compile/names.js
|
|
5167
5167
|
var require_names = __commonJS((exports) => {
|
|
5168
5168
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5169
5169
|
var codegen_1 = require_codegen();
|
|
@@ -5188,7 +5188,7 @@ var require_names = __commonJS((exports) => {
|
|
|
5188
5188
|
exports.default = names;
|
|
5189
5189
|
});
|
|
5190
5190
|
|
|
5191
|
-
// node_modules/ajv/dist/compile/errors.js
|
|
5191
|
+
// ../../../node_modules/ajv/dist/compile/errors.js
|
|
5192
5192
|
var require_errors = __commonJS((exports) => {
|
|
5193
5193
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5194
5194
|
exports.extendErrors = exports.resetErrorsCount = exports.reportExtraError = exports.reportError = exports.keyword$DataError = exports.keywordError = undefined;
|
|
@@ -5306,7 +5306,7 @@ var require_errors = __commonJS((exports) => {
|
|
|
5306
5306
|
}
|
|
5307
5307
|
});
|
|
5308
5308
|
|
|
5309
|
-
// node_modules/ajv/dist/compile/validate/boolSchema.js
|
|
5309
|
+
// ../../../node_modules/ajv/dist/compile/validate/boolSchema.js
|
|
5310
5310
|
var require_boolSchema = __commonJS((exports) => {
|
|
5311
5311
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5312
5312
|
exports.boolOrEmptySchema = exports.topBoolOrEmptySchema = undefined;
|
|
@@ -5354,7 +5354,7 @@ var require_boolSchema = __commonJS((exports) => {
|
|
|
5354
5354
|
}
|
|
5355
5355
|
});
|
|
5356
5356
|
|
|
5357
|
-
// node_modules/ajv/dist/compile/rules.js
|
|
5357
|
+
// ../../../node_modules/ajv/dist/compile/rules.js
|
|
5358
5358
|
var require_rules = __commonJS((exports) => {
|
|
5359
5359
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5360
5360
|
exports.getRules = exports.isJSONType = undefined;
|
|
@@ -5382,7 +5382,7 @@ var require_rules = __commonJS((exports) => {
|
|
|
5382
5382
|
exports.getRules = getRules;
|
|
5383
5383
|
});
|
|
5384
5384
|
|
|
5385
|
-
// node_modules/ajv/dist/compile/validate/applicability.js
|
|
5385
|
+
// ../../../node_modules/ajv/dist/compile/validate/applicability.js
|
|
5386
5386
|
var require_applicability = __commonJS((exports) => {
|
|
5387
5387
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5388
5388
|
exports.shouldUseRule = exports.shouldUseGroup = exports.schemaHasRulesForType = undefined;
|
|
@@ -5402,7 +5402,7 @@ var require_applicability = __commonJS((exports) => {
|
|
|
5402
5402
|
exports.shouldUseRule = shouldUseRule;
|
|
5403
5403
|
});
|
|
5404
5404
|
|
|
5405
|
-
// node_modules/ajv/dist/compile/validate/dataType.js
|
|
5405
|
+
// ../../../node_modules/ajv/dist/compile/validate/dataType.js
|
|
5406
5406
|
var require_dataType = __commonJS((exports) => {
|
|
5407
5407
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5408
5408
|
exports.reportTypeError = exports.checkDataTypes = exports.checkDataType = exports.coerceAndCheckDataType = exports.getJSONTypes = exports.getSchemaTypes = exports.DataType = undefined;
|
|
@@ -5583,7 +5583,7 @@ var require_dataType = __commonJS((exports) => {
|
|
|
5583
5583
|
}
|
|
5584
5584
|
});
|
|
5585
5585
|
|
|
5586
|
-
// node_modules/ajv/dist/compile/validate/defaults.js
|
|
5586
|
+
// ../../../node_modules/ajv/dist/compile/validate/defaults.js
|
|
5587
5587
|
var require_defaults = __commonJS((exports) => {
|
|
5588
5588
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5589
5589
|
exports.assignDefaults = undefined;
|
|
@@ -5617,7 +5617,7 @@ var require_defaults = __commonJS((exports) => {
|
|
|
5617
5617
|
}
|
|
5618
5618
|
});
|
|
5619
5619
|
|
|
5620
|
-
// node_modules/ajv/dist/vocabularies/code.js
|
|
5620
|
+
// ../../../node_modules/ajv/dist/vocabularies/code.js
|
|
5621
5621
|
var require_code2 = __commonJS((exports) => {
|
|
5622
5622
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5623
5623
|
exports.validateUnion = exports.validateArray = exports.usePattern = exports.callValidateCode = exports.schemaProperties = exports.allSchemaProperties = exports.noPropertyInData = exports.propertyInData = exports.isOwnProperty = exports.hasPropFunc = exports.reportMissingProp = exports.checkMissingProp = exports.checkReportMissingProp = undefined;
|
|
@@ -5746,7 +5746,7 @@ var require_code2 = __commonJS((exports) => {
|
|
|
5746
5746
|
exports.validateUnion = validateUnion;
|
|
5747
5747
|
});
|
|
5748
5748
|
|
|
5749
|
-
// node_modules/ajv/dist/compile/validate/keyword.js
|
|
5749
|
+
// ../../../node_modules/ajv/dist/compile/validate/keyword.js
|
|
5750
5750
|
var require_keyword = __commonJS((exports) => {
|
|
5751
5751
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5752
5752
|
exports.validateKeywordUsage = exports.validSchemaType = exports.funcKeywordCode = exports.macroKeywordCode = undefined;
|
|
@@ -5861,7 +5861,7 @@ var require_keyword = __commonJS((exports) => {
|
|
|
5861
5861
|
exports.validateKeywordUsage = validateKeywordUsage;
|
|
5862
5862
|
});
|
|
5863
5863
|
|
|
5864
|
-
// node_modules/ajv/dist/compile/validate/subschema.js
|
|
5864
|
+
// ../../../node_modules/ajv/dist/compile/validate/subschema.js
|
|
5865
5865
|
var require_subschema = __commonJS((exports) => {
|
|
5866
5866
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5867
5867
|
exports.extendSubschemaMode = exports.extendSubschemaData = exports.getSubschema = undefined;
|
|
@@ -5941,7 +5941,7 @@ var require_subschema = __commonJS((exports) => {
|
|
|
5941
5941
|
exports.extendSubschemaMode = extendSubschemaMode;
|
|
5942
5942
|
});
|
|
5943
5943
|
|
|
5944
|
-
// node_modules/fast-deep-equal/index.js
|
|
5944
|
+
// ../../../node_modules/fast-deep-equal/index.js
|
|
5945
5945
|
var require_fast_deep_equal = __commonJS((exports, module) => {
|
|
5946
5946
|
module.exports = function equal(a, b) {
|
|
5947
5947
|
if (a === b)
|
|
@@ -5983,7 +5983,7 @@ var require_fast_deep_equal = __commonJS((exports, module) => {
|
|
|
5983
5983
|
};
|
|
5984
5984
|
});
|
|
5985
5985
|
|
|
5986
|
-
// node_modules/json-schema-traverse/index.js
|
|
5986
|
+
// ../../../node_modules/json-schema-traverse/index.js
|
|
5987
5987
|
var require_json_schema_traverse = __commonJS((exports, module) => {
|
|
5988
5988
|
var traverse = module.exports = function(schema, opts, cb) {
|
|
5989
5989
|
if (typeof opts == "function") {
|
|
@@ -6066,7 +6066,7 @@ var require_json_schema_traverse = __commonJS((exports, module) => {
|
|
|
6066
6066
|
}
|
|
6067
6067
|
});
|
|
6068
6068
|
|
|
6069
|
-
// node_modules/ajv/dist/compile/resolve.js
|
|
6069
|
+
// ../../../node_modules/ajv/dist/compile/resolve.js
|
|
6070
6070
|
var require_resolve = __commonJS((exports) => {
|
|
6071
6071
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6072
6072
|
exports.getSchemaRefs = exports.resolveUrl = exports.normalizeId = exports._getFullPath = exports.getFullPath = exports.inlineRef = undefined;
|
|
@@ -6219,7 +6219,7 @@ var require_resolve = __commonJS((exports) => {
|
|
|
6219
6219
|
exports.getSchemaRefs = getSchemaRefs;
|
|
6220
6220
|
});
|
|
6221
6221
|
|
|
6222
|
-
// node_modules/ajv/dist/compile/validate/index.js
|
|
6222
|
+
// ../../../node_modules/ajv/dist/compile/validate/index.js
|
|
6223
6223
|
var require_validate = __commonJS((exports) => {
|
|
6224
6224
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6225
6225
|
exports.getData = exports.KeywordCxt = exports.validateFunctionCode = undefined;
|
|
@@ -6724,7 +6724,7 @@ var require_validate = __commonJS((exports) => {
|
|
|
6724
6724
|
exports.getData = getData;
|
|
6725
6725
|
});
|
|
6726
6726
|
|
|
6727
|
-
// node_modules/ajv/dist/runtime/validation_error.js
|
|
6727
|
+
// ../../../node_modules/ajv/dist/runtime/validation_error.js
|
|
6728
6728
|
var require_validation_error = __commonJS((exports) => {
|
|
6729
6729
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6730
6730
|
|
|
@@ -6738,7 +6738,7 @@ var require_validation_error = __commonJS((exports) => {
|
|
|
6738
6738
|
exports.default = ValidationError;
|
|
6739
6739
|
});
|
|
6740
6740
|
|
|
6741
|
-
// node_modules/ajv/dist/compile/ref_error.js
|
|
6741
|
+
// ../../../node_modules/ajv/dist/compile/ref_error.js
|
|
6742
6742
|
var require_ref_error = __commonJS((exports) => {
|
|
6743
6743
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6744
6744
|
var resolve_1 = require_resolve();
|
|
@@ -6753,7 +6753,7 @@ var require_ref_error = __commonJS((exports) => {
|
|
|
6753
6753
|
exports.default = MissingRefError;
|
|
6754
6754
|
});
|
|
6755
6755
|
|
|
6756
|
-
// node_modules/ajv/dist/compile/index.js
|
|
6756
|
+
// ../../../node_modules/ajv/dist/compile/index.js
|
|
6757
6757
|
var require_compile = __commonJS((exports) => {
|
|
6758
6758
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6759
6759
|
exports.resolveSchema = exports.getCompilingSchema = exports.resolveRef = exports.compileSchema = exports.SchemaEnv = undefined;
|
|
@@ -6974,7 +6974,7 @@ var require_compile = __commonJS((exports) => {
|
|
|
6974
6974
|
}
|
|
6975
6975
|
});
|
|
6976
6976
|
|
|
6977
|
-
// node_modules/ajv/dist/refs/data.json
|
|
6977
|
+
// ../../../node_modules/ajv/dist/refs/data.json
|
|
6978
6978
|
var require_data = __commonJS((exports, module) => {
|
|
6979
6979
|
module.exports = {
|
|
6980
6980
|
$id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",
|
|
@@ -6991,7 +6991,7 @@ var require_data = __commonJS((exports, module) => {
|
|
|
6991
6991
|
};
|
|
6992
6992
|
});
|
|
6993
6993
|
|
|
6994
|
-
// node_modules/fast-uri/lib/utils.js
|
|
6994
|
+
// ../../../node_modules/fast-uri/lib/utils.js
|
|
6995
6995
|
var require_utils = __commonJS((exports, module) => {
|
|
6996
6996
|
var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
|
|
6997
6997
|
var isIPv4 = RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);
|
|
@@ -7246,7 +7246,7 @@ var require_utils = __commonJS((exports, module) => {
|
|
|
7246
7246
|
};
|
|
7247
7247
|
});
|
|
7248
7248
|
|
|
7249
|
-
// node_modules/fast-uri/lib/schemes.js
|
|
7249
|
+
// ../../../node_modules/fast-uri/lib/schemes.js
|
|
7250
7250
|
var require_schemes = __commonJS((exports, module) => {
|
|
7251
7251
|
var { isUUID } = require_utils();
|
|
7252
7252
|
var URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
|
|
@@ -7420,7 +7420,7 @@ var require_schemes = __commonJS((exports, module) => {
|
|
|
7420
7420
|
};
|
|
7421
7421
|
});
|
|
7422
7422
|
|
|
7423
|
-
// node_modules/fast-uri/index.js
|
|
7423
|
+
// ../../../node_modules/fast-uri/index.js
|
|
7424
7424
|
var require_fast_uri = __commonJS((exports, module) => {
|
|
7425
7425
|
var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizeComponentEncoding, isIPv4, nonSimpleDomain } = require_utils();
|
|
7426
7426
|
var { SCHEMES, getSchemeHandler } = require_schemes();
|
|
@@ -7671,7 +7671,7 @@ var require_fast_uri = __commonJS((exports, module) => {
|
|
|
7671
7671
|
module.exports.fastUri = fastUri;
|
|
7672
7672
|
});
|
|
7673
7673
|
|
|
7674
|
-
// node_modules/ajv/dist/runtime/uri.js
|
|
7674
|
+
// ../../../node_modules/ajv/dist/runtime/uri.js
|
|
7675
7675
|
var require_uri = __commonJS((exports) => {
|
|
7676
7676
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7677
7677
|
var uri = require_fast_uri();
|
|
@@ -7679,7 +7679,7 @@ var require_uri = __commonJS((exports) => {
|
|
|
7679
7679
|
exports.default = uri;
|
|
7680
7680
|
});
|
|
7681
7681
|
|
|
7682
|
-
// node_modules/ajv/dist/core.js
|
|
7682
|
+
// ../../../node_modules/ajv/dist/core.js
|
|
7683
7683
|
var require_core = __commonJS((exports) => {
|
|
7684
7684
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7685
7685
|
exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = undefined;
|
|
@@ -8272,7 +8272,7 @@ var require_core = __commonJS((exports) => {
|
|
|
8272
8272
|
}
|
|
8273
8273
|
});
|
|
8274
8274
|
|
|
8275
|
-
// node_modules/ajv/dist/vocabularies/core/id.js
|
|
8275
|
+
// ../../../node_modules/ajv/dist/vocabularies/core/id.js
|
|
8276
8276
|
var require_id = __commonJS((exports) => {
|
|
8277
8277
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8278
8278
|
var def = {
|
|
@@ -8284,7 +8284,7 @@ var require_id = __commonJS((exports) => {
|
|
|
8284
8284
|
exports.default = def;
|
|
8285
8285
|
});
|
|
8286
8286
|
|
|
8287
|
-
// node_modules/ajv/dist/vocabularies/core/ref.js
|
|
8287
|
+
// ../../../node_modules/ajv/dist/vocabularies/core/ref.js
|
|
8288
8288
|
var require_ref = __commonJS((exports) => {
|
|
8289
8289
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8290
8290
|
exports.callRef = exports.getValidate = undefined;
|
|
@@ -8403,7 +8403,7 @@ var require_ref = __commonJS((exports) => {
|
|
|
8403
8403
|
exports.default = def;
|
|
8404
8404
|
});
|
|
8405
8405
|
|
|
8406
|
-
// node_modules/ajv/dist/vocabularies/core/index.js
|
|
8406
|
+
// ../../../node_modules/ajv/dist/vocabularies/core/index.js
|
|
8407
8407
|
var require_core2 = __commonJS((exports) => {
|
|
8408
8408
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8409
8409
|
var id_1 = require_id();
|
|
@@ -8421,7 +8421,7 @@ var require_core2 = __commonJS((exports) => {
|
|
|
8421
8421
|
exports.default = core2;
|
|
8422
8422
|
});
|
|
8423
8423
|
|
|
8424
|
-
// node_modules/ajv/dist/vocabularies/validation/limitNumber.js
|
|
8424
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/limitNumber.js
|
|
8425
8425
|
var require_limitNumber = __commonJS((exports) => {
|
|
8426
8426
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8427
8427
|
var codegen_1 = require_codegen();
|
|
@@ -8450,7 +8450,7 @@ var require_limitNumber = __commonJS((exports) => {
|
|
|
8450
8450
|
exports.default = def;
|
|
8451
8451
|
});
|
|
8452
8452
|
|
|
8453
|
-
// node_modules/ajv/dist/vocabularies/validation/multipleOf.js
|
|
8453
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/multipleOf.js
|
|
8454
8454
|
var require_multipleOf = __commonJS((exports) => {
|
|
8455
8455
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8456
8456
|
var codegen_1 = require_codegen();
|
|
@@ -8475,7 +8475,7 @@ var require_multipleOf = __commonJS((exports) => {
|
|
|
8475
8475
|
exports.default = def;
|
|
8476
8476
|
});
|
|
8477
8477
|
|
|
8478
|
-
// node_modules/ajv/dist/runtime/ucs2length.js
|
|
8478
|
+
// ../../../node_modules/ajv/dist/runtime/ucs2length.js
|
|
8479
8479
|
var require_ucs2length = __commonJS((exports) => {
|
|
8480
8480
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8481
8481
|
function ucs2length(str) {
|
|
@@ -8498,7 +8498,7 @@ var require_ucs2length = __commonJS((exports) => {
|
|
|
8498
8498
|
ucs2length.code = 'require("ajv/dist/runtime/ucs2length").default';
|
|
8499
8499
|
});
|
|
8500
8500
|
|
|
8501
|
-
// node_modules/ajv/dist/vocabularies/validation/limitLength.js
|
|
8501
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/limitLength.js
|
|
8502
8502
|
var require_limitLength = __commonJS((exports) => {
|
|
8503
8503
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8504
8504
|
var codegen_1 = require_codegen();
|
|
@@ -8527,7 +8527,7 @@ var require_limitLength = __commonJS((exports) => {
|
|
|
8527
8527
|
exports.default = def;
|
|
8528
8528
|
});
|
|
8529
8529
|
|
|
8530
|
-
// node_modules/ajv/dist/vocabularies/validation/pattern.js
|
|
8530
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/pattern.js
|
|
8531
8531
|
var require_pattern = __commonJS((exports) => {
|
|
8532
8532
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8533
8533
|
var code_1 = require_code2();
|
|
@@ -8561,7 +8561,7 @@ var require_pattern = __commonJS((exports) => {
|
|
|
8561
8561
|
exports.default = def;
|
|
8562
8562
|
});
|
|
8563
8563
|
|
|
8564
|
-
// node_modules/ajv/dist/vocabularies/validation/limitProperties.js
|
|
8564
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/limitProperties.js
|
|
8565
8565
|
var require_limitProperties = __commonJS((exports) => {
|
|
8566
8566
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8567
8567
|
var codegen_1 = require_codegen();
|
|
@@ -8587,7 +8587,7 @@ var require_limitProperties = __commonJS((exports) => {
|
|
|
8587
8587
|
exports.default = def;
|
|
8588
8588
|
});
|
|
8589
8589
|
|
|
8590
|
-
// node_modules/ajv/dist/vocabularies/validation/required.js
|
|
8590
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/required.js
|
|
8591
8591
|
var require_required = __commonJS((exports) => {
|
|
8592
8592
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8593
8593
|
var code_1 = require_code2();
|
|
@@ -8666,7 +8666,7 @@ var require_required = __commonJS((exports) => {
|
|
|
8666
8666
|
exports.default = def;
|
|
8667
8667
|
});
|
|
8668
8668
|
|
|
8669
|
-
// node_modules/ajv/dist/vocabularies/validation/limitItems.js
|
|
8669
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/limitItems.js
|
|
8670
8670
|
var require_limitItems = __commonJS((exports) => {
|
|
8671
8671
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8672
8672
|
var codegen_1 = require_codegen();
|
|
@@ -8692,7 +8692,7 @@ var require_limitItems = __commonJS((exports) => {
|
|
|
8692
8692
|
exports.default = def;
|
|
8693
8693
|
});
|
|
8694
8694
|
|
|
8695
|
-
// node_modules/ajv/dist/runtime/equal.js
|
|
8695
|
+
// ../../../node_modules/ajv/dist/runtime/equal.js
|
|
8696
8696
|
var require_equal = __commonJS((exports) => {
|
|
8697
8697
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8698
8698
|
var equal = require_fast_deep_equal();
|
|
@@ -8700,7 +8700,7 @@ var require_equal = __commonJS((exports) => {
|
|
|
8700
8700
|
exports.default = equal;
|
|
8701
8701
|
});
|
|
8702
8702
|
|
|
8703
|
-
// node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
|
|
8703
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
|
|
8704
8704
|
var require_uniqueItems = __commonJS((exports) => {
|
|
8705
8705
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8706
8706
|
var dataType_1 = require_dataType();
|
|
@@ -8764,7 +8764,7 @@ var require_uniqueItems = __commonJS((exports) => {
|
|
|
8764
8764
|
exports.default = def;
|
|
8765
8765
|
});
|
|
8766
8766
|
|
|
8767
|
-
// node_modules/ajv/dist/vocabularies/validation/const.js
|
|
8767
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/const.js
|
|
8768
8768
|
var require_const = __commonJS((exports) => {
|
|
8769
8769
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8770
8770
|
var codegen_1 = require_codegen();
|
|
@@ -8790,7 +8790,7 @@ var require_const = __commonJS((exports) => {
|
|
|
8790
8790
|
exports.default = def;
|
|
8791
8791
|
});
|
|
8792
8792
|
|
|
8793
|
-
// node_modules/ajv/dist/vocabularies/validation/enum.js
|
|
8793
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/enum.js
|
|
8794
8794
|
var require_enum = __commonJS((exports) => {
|
|
8795
8795
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8796
8796
|
var codegen_1 = require_codegen();
|
|
@@ -8836,7 +8836,7 @@ var require_enum = __commonJS((exports) => {
|
|
|
8836
8836
|
exports.default = def;
|
|
8837
8837
|
});
|
|
8838
8838
|
|
|
8839
|
-
// node_modules/ajv/dist/vocabularies/validation/index.js
|
|
8839
|
+
// ../../../node_modules/ajv/dist/vocabularies/validation/index.js
|
|
8840
8840
|
var require_validation = __commonJS((exports) => {
|
|
8841
8841
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8842
8842
|
var limitNumber_1 = require_limitNumber();
|
|
@@ -8866,7 +8866,7 @@ var require_validation = __commonJS((exports) => {
|
|
|
8866
8866
|
exports.default = validation;
|
|
8867
8867
|
});
|
|
8868
8868
|
|
|
8869
|
-
// node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
|
|
8869
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
|
|
8870
8870
|
var require_additionalItems = __commonJS((exports) => {
|
|
8871
8871
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8872
8872
|
exports.validateAdditionalItems = undefined;
|
|
@@ -8916,7 +8916,7 @@ var require_additionalItems = __commonJS((exports) => {
|
|
|
8916
8916
|
exports.default = def;
|
|
8917
8917
|
});
|
|
8918
8918
|
|
|
8919
|
-
// node_modules/ajv/dist/vocabularies/applicator/items.js
|
|
8919
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/items.js
|
|
8920
8920
|
var require_items = __commonJS((exports) => {
|
|
8921
8921
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8922
8922
|
exports.validateTuple = undefined;
|
|
@@ -8970,7 +8970,7 @@ var require_items = __commonJS((exports) => {
|
|
|
8970
8970
|
exports.default = def;
|
|
8971
8971
|
});
|
|
8972
8972
|
|
|
8973
|
-
// node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
|
|
8973
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
|
|
8974
8974
|
var require_prefixItems = __commonJS((exports) => {
|
|
8975
8975
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8976
8976
|
var items_1 = require_items();
|
|
@@ -8984,7 +8984,7 @@ var require_prefixItems = __commonJS((exports) => {
|
|
|
8984
8984
|
exports.default = def;
|
|
8985
8985
|
});
|
|
8986
8986
|
|
|
8987
|
-
// node_modules/ajv/dist/vocabularies/applicator/items2020.js
|
|
8987
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/items2020.js
|
|
8988
8988
|
var require_items2020 = __commonJS((exports) => {
|
|
8989
8989
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8990
8990
|
var codegen_1 = require_codegen();
|
|
@@ -9016,7 +9016,7 @@ var require_items2020 = __commonJS((exports) => {
|
|
|
9016
9016
|
exports.default = def;
|
|
9017
9017
|
});
|
|
9018
9018
|
|
|
9019
|
-
// node_modules/ajv/dist/vocabularies/applicator/contains.js
|
|
9019
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/contains.js
|
|
9020
9020
|
var require_contains = __commonJS((exports) => {
|
|
9021
9021
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9022
9022
|
var codegen_1 = require_codegen();
|
|
@@ -9107,7 +9107,7 @@ var require_contains = __commonJS((exports) => {
|
|
|
9107
9107
|
exports.default = def;
|
|
9108
9108
|
});
|
|
9109
9109
|
|
|
9110
|
-
// node_modules/ajv/dist/vocabularies/applicator/dependencies.js
|
|
9110
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/dependencies.js
|
|
9111
9111
|
var require_dependencies = __commonJS((exports) => {
|
|
9112
9112
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9113
9113
|
exports.validateSchemaDeps = exports.validatePropertyDeps = exports.error = undefined;
|
|
@@ -9192,7 +9192,7 @@ var require_dependencies = __commonJS((exports) => {
|
|
|
9192
9192
|
exports.default = def;
|
|
9193
9193
|
});
|
|
9194
9194
|
|
|
9195
|
-
// node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
|
|
9195
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
|
|
9196
9196
|
var require_propertyNames = __commonJS((exports) => {
|
|
9197
9197
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9198
9198
|
var codegen_1 = require_codegen();
|
|
@@ -9232,7 +9232,7 @@ var require_propertyNames = __commonJS((exports) => {
|
|
|
9232
9232
|
exports.default = def;
|
|
9233
9233
|
});
|
|
9234
9234
|
|
|
9235
|
-
// node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
|
|
9235
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
|
|
9236
9236
|
var require_additionalProperties = __commonJS((exports) => {
|
|
9237
9237
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9238
9238
|
var code_1 = require_code2();
|
|
@@ -9335,7 +9335,7 @@ var require_additionalProperties = __commonJS((exports) => {
|
|
|
9335
9335
|
exports.default = def;
|
|
9336
9336
|
});
|
|
9337
9337
|
|
|
9338
|
-
// node_modules/ajv/dist/vocabularies/applicator/properties.js
|
|
9338
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/properties.js
|
|
9339
9339
|
var require_properties = __commonJS((exports) => {
|
|
9340
9340
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9341
9341
|
var validate_1 = require_validate();
|
|
@@ -9390,7 +9390,7 @@ var require_properties = __commonJS((exports) => {
|
|
|
9390
9390
|
exports.default = def;
|
|
9391
9391
|
});
|
|
9392
9392
|
|
|
9393
|
-
// node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
|
|
9393
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
|
|
9394
9394
|
var require_patternProperties = __commonJS((exports) => {
|
|
9395
9395
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9396
9396
|
var code_1 = require_code2();
|
|
@@ -9461,7 +9461,7 @@ var require_patternProperties = __commonJS((exports) => {
|
|
|
9461
9461
|
exports.default = def;
|
|
9462
9462
|
});
|
|
9463
9463
|
|
|
9464
|
-
// node_modules/ajv/dist/vocabularies/applicator/not.js
|
|
9464
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/not.js
|
|
9465
9465
|
var require_not = __commonJS((exports) => {
|
|
9466
9466
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9467
9467
|
var util_1 = require_util();
|
|
@@ -9489,7 +9489,7 @@ var require_not = __commonJS((exports) => {
|
|
|
9489
9489
|
exports.default = def;
|
|
9490
9490
|
});
|
|
9491
9491
|
|
|
9492
|
-
// node_modules/ajv/dist/vocabularies/applicator/anyOf.js
|
|
9492
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/anyOf.js
|
|
9493
9493
|
var require_anyOf = __commonJS((exports) => {
|
|
9494
9494
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9495
9495
|
var code_1 = require_code2();
|
|
@@ -9503,7 +9503,7 @@ var require_anyOf = __commonJS((exports) => {
|
|
|
9503
9503
|
exports.default = def;
|
|
9504
9504
|
});
|
|
9505
9505
|
|
|
9506
|
-
// node_modules/ajv/dist/vocabularies/applicator/oneOf.js
|
|
9506
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/oneOf.js
|
|
9507
9507
|
var require_oneOf = __commonJS((exports) => {
|
|
9508
9508
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9509
9509
|
var codegen_1 = require_codegen();
|
|
@@ -9558,7 +9558,7 @@ var require_oneOf = __commonJS((exports) => {
|
|
|
9558
9558
|
exports.default = def;
|
|
9559
9559
|
});
|
|
9560
9560
|
|
|
9561
|
-
// node_modules/ajv/dist/vocabularies/applicator/allOf.js
|
|
9561
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/allOf.js
|
|
9562
9562
|
var require_allOf = __commonJS((exports) => {
|
|
9563
9563
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9564
9564
|
var util_1 = require_util();
|
|
@@ -9582,7 +9582,7 @@ var require_allOf = __commonJS((exports) => {
|
|
|
9582
9582
|
exports.default = def;
|
|
9583
9583
|
});
|
|
9584
9584
|
|
|
9585
|
-
// node_modules/ajv/dist/vocabularies/applicator/if.js
|
|
9585
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/if.js
|
|
9586
9586
|
var require_if = __commonJS((exports) => {
|
|
9587
9587
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9588
9588
|
var codegen_1 = require_codegen();
|
|
@@ -9648,7 +9648,7 @@ var require_if = __commonJS((exports) => {
|
|
|
9648
9648
|
exports.default = def;
|
|
9649
9649
|
});
|
|
9650
9650
|
|
|
9651
|
-
// node_modules/ajv/dist/vocabularies/applicator/thenElse.js
|
|
9651
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/thenElse.js
|
|
9652
9652
|
var require_thenElse = __commonJS((exports) => {
|
|
9653
9653
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9654
9654
|
var util_1 = require_util();
|
|
@@ -9663,7 +9663,7 @@ var require_thenElse = __commonJS((exports) => {
|
|
|
9663
9663
|
exports.default = def;
|
|
9664
9664
|
});
|
|
9665
9665
|
|
|
9666
|
-
// node_modules/ajv/dist/vocabularies/applicator/index.js
|
|
9666
|
+
// ../../../node_modules/ajv/dist/vocabularies/applicator/index.js
|
|
9667
9667
|
var require_applicator = __commonJS((exports) => {
|
|
9668
9668
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9669
9669
|
var additionalItems_1 = require_additionalItems();
|
|
@@ -9706,7 +9706,7 @@ var require_applicator = __commonJS((exports) => {
|
|
|
9706
9706
|
exports.default = getApplicator;
|
|
9707
9707
|
});
|
|
9708
9708
|
|
|
9709
|
-
// node_modules/ajv/dist/vocabularies/format/format.js
|
|
9709
|
+
// ../../../node_modules/ajv/dist/vocabularies/format/format.js
|
|
9710
9710
|
var require_format = __commonJS((exports) => {
|
|
9711
9711
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9712
9712
|
var codegen_1 = require_codegen();
|
|
@@ -9793,7 +9793,7 @@ var require_format = __commonJS((exports) => {
|
|
|
9793
9793
|
exports.default = def;
|
|
9794
9794
|
});
|
|
9795
9795
|
|
|
9796
|
-
// node_modules/ajv/dist/vocabularies/format/index.js
|
|
9796
|
+
// ../../../node_modules/ajv/dist/vocabularies/format/index.js
|
|
9797
9797
|
var require_format2 = __commonJS((exports) => {
|
|
9798
9798
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9799
9799
|
var format_1 = require_format();
|
|
@@ -9801,7 +9801,7 @@ var require_format2 = __commonJS((exports) => {
|
|
|
9801
9801
|
exports.default = format;
|
|
9802
9802
|
});
|
|
9803
9803
|
|
|
9804
|
-
// node_modules/ajv/dist/vocabularies/metadata.js
|
|
9804
|
+
// ../../../node_modules/ajv/dist/vocabularies/metadata.js
|
|
9805
9805
|
var require_metadata = __commonJS((exports) => {
|
|
9806
9806
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9807
9807
|
exports.contentVocabulary = exports.metadataVocabulary = undefined;
|
|
@@ -9821,7 +9821,7 @@ var require_metadata = __commonJS((exports) => {
|
|
|
9821
9821
|
];
|
|
9822
9822
|
});
|
|
9823
9823
|
|
|
9824
|
-
// node_modules/ajv/dist/vocabularies/draft7.js
|
|
9824
|
+
// ../../../node_modules/ajv/dist/vocabularies/draft7.js
|
|
9825
9825
|
var require_draft7 = __commonJS((exports) => {
|
|
9826
9826
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9827
9827
|
var core_1 = require_core2();
|
|
@@ -9840,7 +9840,7 @@ var require_draft7 = __commonJS((exports) => {
|
|
|
9840
9840
|
exports.default = draft7Vocabularies;
|
|
9841
9841
|
});
|
|
9842
9842
|
|
|
9843
|
-
// node_modules/ajv/dist/vocabularies/discriminator/types.js
|
|
9843
|
+
// ../../../node_modules/ajv/dist/vocabularies/discriminator/types.js
|
|
9844
9844
|
var require_types = __commonJS((exports) => {
|
|
9845
9845
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9846
9846
|
exports.DiscrError = undefined;
|
|
@@ -9851,7 +9851,7 @@ var require_types = __commonJS((exports) => {
|
|
|
9851
9851
|
})(DiscrError || (exports.DiscrError = DiscrError = {}));
|
|
9852
9852
|
});
|
|
9853
9853
|
|
|
9854
|
-
// node_modules/ajv/dist/vocabularies/discriminator/index.js
|
|
9854
|
+
// ../../../node_modules/ajv/dist/vocabularies/discriminator/index.js
|
|
9855
9855
|
var require_discriminator = __commonJS((exports) => {
|
|
9856
9856
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9857
9857
|
var codegen_1 = require_codegen();
|
|
@@ -9953,7 +9953,7 @@ var require_discriminator = __commonJS((exports) => {
|
|
|
9953
9953
|
exports.default = def;
|
|
9954
9954
|
});
|
|
9955
9955
|
|
|
9956
|
-
// node_modules/ajv/dist/refs/json-schema-draft-07.json
|
|
9956
|
+
// ../../../node_modules/ajv/dist/refs/json-schema-draft-07.json
|
|
9957
9957
|
var require_json_schema_draft_07 = __commonJS((exports, module) => {
|
|
9958
9958
|
module.exports = {
|
|
9959
9959
|
$schema: "http://json-schema.org/draft-07/schema#",
|
|
@@ -10108,7 +10108,7 @@ var require_json_schema_draft_07 = __commonJS((exports, module) => {
|
|
|
10108
10108
|
};
|
|
10109
10109
|
});
|
|
10110
10110
|
|
|
10111
|
-
// node_modules/ajv/dist/ajv.js
|
|
10111
|
+
// ../../../node_modules/ajv/dist/ajv.js
|
|
10112
10112
|
var require_ajv = __commonJS((exports, module) => {
|
|
10113
10113
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10114
10114
|
exports.MissingRefError = exports.ValidationError = exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = exports.Ajv = undefined;
|
|
@@ -10176,7 +10176,7 @@ var require_ajv = __commonJS((exports, module) => {
|
|
|
10176
10176
|
} });
|
|
10177
10177
|
});
|
|
10178
10178
|
|
|
10179
|
-
// node_modules/ajv-formats/dist/formats.js
|
|
10179
|
+
// ../../../node_modules/ajv-formats/dist/formats.js
|
|
10180
10180
|
var require_formats = __commonJS((exports) => {
|
|
10181
10181
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10182
10182
|
exports.formatNames = exports.fastFormats = exports.fullFormats = undefined;
|
|
@@ -10353,7 +10353,7 @@ var require_formats = __commonJS((exports) => {
|
|
|
10353
10353
|
}
|
|
10354
10354
|
});
|
|
10355
10355
|
|
|
10356
|
-
// node_modules/ajv-formats/dist/limit.js
|
|
10356
|
+
// ../../../node_modules/ajv-formats/dist/limit.js
|
|
10357
10357
|
var require_limit = __commonJS((exports) => {
|
|
10358
10358
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10359
10359
|
exports.formatLimitDefinition = undefined;
|
|
@@ -10422,7 +10422,7 @@ var require_limit = __commonJS((exports) => {
|
|
|
10422
10422
|
exports.default = formatLimitPlugin;
|
|
10423
10423
|
});
|
|
10424
10424
|
|
|
10425
|
-
// node_modules/ajv-formats/dist/index.js
|
|
10425
|
+
// ../../../node_modules/ajv-formats/dist/index.js
|
|
10426
10426
|
var require_dist = __commonJS((exports, module) => {
|
|
10427
10427
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10428
10428
|
var formats_1 = require_formats();
|
|
@@ -10461,7 +10461,7 @@ var require_dist = __commonJS((exports, module) => {
|
|
|
10461
10461
|
exports.default = formatsPlugin;
|
|
10462
10462
|
});
|
|
10463
10463
|
|
|
10464
|
-
// node_modules/yaml/dist/nodes/identity.js
|
|
10464
|
+
// ../../../node_modules/yaml/dist/nodes/identity.js
|
|
10465
10465
|
var require_identity = __commonJS((exports) => {
|
|
10466
10466
|
var ALIAS = Symbol.for("yaml.alias");
|
|
10467
10467
|
var DOC = Symbol.for("yaml.document");
|
|
@@ -10515,7 +10515,7 @@ var require_identity = __commonJS((exports) => {
|
|
|
10515
10515
|
exports.isSeq = isSeq;
|
|
10516
10516
|
});
|
|
10517
10517
|
|
|
10518
|
-
// node_modules/yaml/dist/visit.js
|
|
10518
|
+
// ../../../node_modules/yaml/dist/visit.js
|
|
10519
10519
|
var require_visit = __commonJS((exports) => {
|
|
10520
10520
|
var identity = require_identity();
|
|
10521
10521
|
var BREAK = Symbol("break visit");
|
|
@@ -10670,7 +10670,7 @@ var require_visit = __commonJS((exports) => {
|
|
|
10670
10670
|
exports.visitAsync = visitAsync;
|
|
10671
10671
|
});
|
|
10672
10672
|
|
|
10673
|
-
// node_modules/yaml/dist/doc/directives.js
|
|
10673
|
+
// ../../../node_modules/yaml/dist/doc/directives.js
|
|
10674
10674
|
var require_directives = __commonJS((exports) => {
|
|
10675
10675
|
var identity = require_identity();
|
|
10676
10676
|
var visit = require_visit();
|
|
@@ -10822,7 +10822,7 @@ var require_directives = __commonJS((exports) => {
|
|
|
10822
10822
|
exports.Directives = Directives;
|
|
10823
10823
|
});
|
|
10824
10824
|
|
|
10825
|
-
// node_modules/yaml/dist/doc/anchors.js
|
|
10825
|
+
// ../../../node_modules/yaml/dist/doc/anchors.js
|
|
10826
10826
|
var require_anchors = __commonJS((exports) => {
|
|
10827
10827
|
var identity = require_identity();
|
|
10828
10828
|
var visit = require_visit();
|
|
@@ -10884,7 +10884,7 @@ var require_anchors = __commonJS((exports) => {
|
|
|
10884
10884
|
exports.findNewAnchor = findNewAnchor;
|
|
10885
10885
|
});
|
|
10886
10886
|
|
|
10887
|
-
// node_modules/yaml/dist/doc/applyReviver.js
|
|
10887
|
+
// ../../../node_modules/yaml/dist/doc/applyReviver.js
|
|
10888
10888
|
var require_applyReviver = __commonJS((exports) => {
|
|
10889
10889
|
function applyReviver(reviver, obj, key, val) {
|
|
10890
10890
|
if (val && typeof val === "object") {
|
|
@@ -10931,7 +10931,7 @@ var require_applyReviver = __commonJS((exports) => {
|
|
|
10931
10931
|
exports.applyReviver = applyReviver;
|
|
10932
10932
|
});
|
|
10933
10933
|
|
|
10934
|
-
// node_modules/yaml/dist/nodes/toJS.js
|
|
10934
|
+
// ../../../node_modules/yaml/dist/nodes/toJS.js
|
|
10935
10935
|
var require_toJS = __commonJS((exports) => {
|
|
10936
10936
|
var identity = require_identity();
|
|
10937
10937
|
function toJS(value, arg, ctx) {
|
|
@@ -10958,7 +10958,7 @@ var require_toJS = __commonJS((exports) => {
|
|
|
10958
10958
|
exports.toJS = toJS;
|
|
10959
10959
|
});
|
|
10960
10960
|
|
|
10961
|
-
// node_modules/yaml/dist/nodes/Node.js
|
|
10961
|
+
// ../../../node_modules/yaml/dist/nodes/Node.js
|
|
10962
10962
|
var require_Node = __commonJS((exports) => {
|
|
10963
10963
|
var applyReviver = require_applyReviver();
|
|
10964
10964
|
var identity = require_identity();
|
|
@@ -10995,7 +10995,7 @@ var require_Node = __commonJS((exports) => {
|
|
|
10995
10995
|
exports.NodeBase = NodeBase;
|
|
10996
10996
|
});
|
|
10997
10997
|
|
|
10998
|
-
// node_modules/yaml/dist/nodes/Alias.js
|
|
10998
|
+
// ../../../node_modules/yaml/dist/nodes/Alias.js
|
|
10999
10999
|
var require_Alias = __commonJS((exports) => {
|
|
11000
11000
|
var anchors = require_anchors();
|
|
11001
11001
|
var visit = require_visit();
|
|
@@ -11103,7 +11103,7 @@ var require_Alias = __commonJS((exports) => {
|
|
|
11103
11103
|
exports.Alias = Alias;
|
|
11104
11104
|
});
|
|
11105
11105
|
|
|
11106
|
-
// node_modules/yaml/dist/nodes/Scalar.js
|
|
11106
|
+
// ../../../node_modules/yaml/dist/nodes/Scalar.js
|
|
11107
11107
|
var require_Scalar = __commonJS((exports) => {
|
|
11108
11108
|
var identity = require_identity();
|
|
11109
11109
|
var Node = require_Node();
|
|
@@ -11131,7 +11131,7 @@ var require_Scalar = __commonJS((exports) => {
|
|
|
11131
11131
|
exports.isScalarValue = isScalarValue;
|
|
11132
11132
|
});
|
|
11133
11133
|
|
|
11134
|
-
// node_modules/yaml/dist/doc/createNode.js
|
|
11134
|
+
// ../../../node_modules/yaml/dist/doc/createNode.js
|
|
11135
11135
|
var require_createNode = __commonJS((exports) => {
|
|
11136
11136
|
var Alias = require_Alias();
|
|
11137
11137
|
var identity = require_identity();
|
|
@@ -11203,7 +11203,7 @@ var require_createNode = __commonJS((exports) => {
|
|
|
11203
11203
|
exports.createNode = createNode;
|
|
11204
11204
|
});
|
|
11205
11205
|
|
|
11206
|
-
// node_modules/yaml/dist/nodes/Collection.js
|
|
11206
|
+
// ../../../node_modules/yaml/dist/nodes/Collection.js
|
|
11207
11207
|
var require_Collection = __commonJS((exports) => {
|
|
11208
11208
|
var createNode = require_createNode();
|
|
11209
11209
|
var identity = require_identity();
|
|
@@ -11318,7 +11318,7 @@ var require_Collection = __commonJS((exports) => {
|
|
|
11318
11318
|
exports.isEmptyPath = isEmptyPath;
|
|
11319
11319
|
});
|
|
11320
11320
|
|
|
11321
|
-
// node_modules/yaml/dist/stringify/stringifyComment.js
|
|
11321
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyComment.js
|
|
11322
11322
|
var require_stringifyComment = __commonJS((exports) => {
|
|
11323
11323
|
var stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, "#");
|
|
11324
11324
|
function indentComment(comment, indent) {
|
|
@@ -11335,7 +11335,7 @@ var require_stringifyComment = __commonJS((exports) => {
|
|
|
11335
11335
|
exports.stringifyComment = stringifyComment;
|
|
11336
11336
|
});
|
|
11337
11337
|
|
|
11338
|
-
// node_modules/yaml/dist/stringify/foldFlowLines.js
|
|
11338
|
+
// ../../../node_modules/yaml/dist/stringify/foldFlowLines.js
|
|
11339
11339
|
var require_foldFlowLines = __commonJS((exports) => {
|
|
11340
11340
|
var FOLD_FLOW = "flow";
|
|
11341
11341
|
var FOLD_BLOCK = "block";
|
|
@@ -11472,7 +11472,7 @@ ${indent}${text.slice(fold + 1, end2)}`;
|
|
|
11472
11472
|
exports.foldFlowLines = foldFlowLines;
|
|
11473
11473
|
});
|
|
11474
11474
|
|
|
11475
|
-
// node_modules/yaml/dist/stringify/stringifyString.js
|
|
11475
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyString.js
|
|
11476
11476
|
var require_stringifyString = __commonJS((exports) => {
|
|
11477
11477
|
var Scalar = require_Scalar();
|
|
11478
11478
|
var foldFlowLines = require_foldFlowLines();
|
|
@@ -11770,7 +11770,7 @@ ${indent}`);
|
|
|
11770
11770
|
exports.stringifyString = stringifyString;
|
|
11771
11771
|
});
|
|
11772
11772
|
|
|
11773
|
-
// node_modules/yaml/dist/stringify/stringify.js
|
|
11773
|
+
// ../../../node_modules/yaml/dist/stringify/stringify.js
|
|
11774
11774
|
var require_stringify = __commonJS((exports) => {
|
|
11775
11775
|
var anchors = require_anchors();
|
|
11776
11776
|
var identity = require_identity();
|
|
@@ -11890,7 +11890,7 @@ ${ctx.indent}${str}`;
|
|
|
11890
11890
|
exports.stringify = stringify;
|
|
11891
11891
|
});
|
|
11892
11892
|
|
|
11893
|
-
// node_modules/yaml/dist/stringify/stringifyPair.js
|
|
11893
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyPair.js
|
|
11894
11894
|
var require_stringifyPair = __commonJS((exports) => {
|
|
11895
11895
|
var identity = require_identity();
|
|
11896
11896
|
var Scalar = require_Scalar();
|
|
@@ -12026,7 +12026,7 @@ ${ctx.indent}`;
|
|
|
12026
12026
|
exports.stringifyPair = stringifyPair;
|
|
12027
12027
|
});
|
|
12028
12028
|
|
|
12029
|
-
// node_modules/yaml/dist/log.js
|
|
12029
|
+
// ../../../node_modules/yaml/dist/log.js
|
|
12030
12030
|
var require_log = __commonJS((exports) => {
|
|
12031
12031
|
var node_process = __require("process");
|
|
12032
12032
|
function debug(logLevel, ...messages) {
|
|
@@ -12045,7 +12045,7 @@ var require_log = __commonJS((exports) => {
|
|
|
12045
12045
|
exports.warn = warn;
|
|
12046
12046
|
});
|
|
12047
12047
|
|
|
12048
|
-
// node_modules/yaml/dist/schema/yaml-1.1/merge.js
|
|
12048
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/merge.js
|
|
12049
12049
|
var require_merge = __commonJS((exports) => {
|
|
12050
12050
|
var identity = require_identity();
|
|
12051
12051
|
var Scalar = require_Scalar();
|
|
@@ -12099,7 +12099,7 @@ var require_merge = __commonJS((exports) => {
|
|
|
12099
12099
|
exports.merge = merge2;
|
|
12100
12100
|
});
|
|
12101
12101
|
|
|
12102
|
-
// node_modules/yaml/dist/nodes/addPairToJSMap.js
|
|
12102
|
+
// ../../../node_modules/yaml/dist/nodes/addPairToJSMap.js
|
|
12103
12103
|
var require_addPairToJSMap = __commonJS((exports) => {
|
|
12104
12104
|
var log = require_log();
|
|
12105
12105
|
var merge2 = require_merge();
|
|
@@ -12160,7 +12160,7 @@ var require_addPairToJSMap = __commonJS((exports) => {
|
|
|
12160
12160
|
exports.addPairToJSMap = addPairToJSMap;
|
|
12161
12161
|
});
|
|
12162
12162
|
|
|
12163
|
-
// node_modules/yaml/dist/nodes/Pair.js
|
|
12163
|
+
// ../../../node_modules/yaml/dist/nodes/Pair.js
|
|
12164
12164
|
var require_Pair = __commonJS((exports) => {
|
|
12165
12165
|
var createNode = require_createNode();
|
|
12166
12166
|
var stringifyPair = require_stringifyPair();
|
|
@@ -12198,7 +12198,7 @@ var require_Pair = __commonJS((exports) => {
|
|
|
12198
12198
|
exports.createPair = createPair;
|
|
12199
12199
|
});
|
|
12200
12200
|
|
|
12201
|
-
// node_modules/yaml/dist/stringify/stringifyCollection.js
|
|
12201
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyCollection.js
|
|
12202
12202
|
var require_stringifyCollection = __commonJS((exports) => {
|
|
12203
12203
|
var identity = require_identity();
|
|
12204
12204
|
var stringify = require_stringify();
|
|
@@ -12343,7 +12343,7 @@ ${indent}${end}`;
|
|
|
12343
12343
|
exports.stringifyCollection = stringifyCollection;
|
|
12344
12344
|
});
|
|
12345
12345
|
|
|
12346
|
-
// node_modules/yaml/dist/nodes/YAMLMap.js
|
|
12346
|
+
// ../../../node_modules/yaml/dist/nodes/YAMLMap.js
|
|
12347
12347
|
var require_YAMLMap = __commonJS((exports) => {
|
|
12348
12348
|
var stringifyCollection = require_stringifyCollection();
|
|
12349
12349
|
var addPairToJSMap = require_addPairToJSMap();
|
|
@@ -12470,7 +12470,7 @@ var require_YAMLMap = __commonJS((exports) => {
|
|
|
12470
12470
|
exports.findPair = findPair;
|
|
12471
12471
|
});
|
|
12472
12472
|
|
|
12473
|
-
// node_modules/yaml/dist/schema/common/map.js
|
|
12473
|
+
// ../../../node_modules/yaml/dist/schema/common/map.js
|
|
12474
12474
|
var require_map = __commonJS((exports) => {
|
|
12475
12475
|
var identity = require_identity();
|
|
12476
12476
|
var YAMLMap = require_YAMLMap();
|
|
@@ -12489,7 +12489,7 @@ var require_map = __commonJS((exports) => {
|
|
|
12489
12489
|
exports.map = map2;
|
|
12490
12490
|
});
|
|
12491
12491
|
|
|
12492
|
-
// node_modules/yaml/dist/nodes/YAMLSeq.js
|
|
12492
|
+
// ../../../node_modules/yaml/dist/nodes/YAMLSeq.js
|
|
12493
12493
|
var require_YAMLSeq = __commonJS((exports) => {
|
|
12494
12494
|
var createNode = require_createNode();
|
|
12495
12495
|
var stringifyCollection = require_stringifyCollection();
|
|
@@ -12582,7 +12582,7 @@ var require_YAMLSeq = __commonJS((exports) => {
|
|
|
12582
12582
|
exports.YAMLSeq = YAMLSeq;
|
|
12583
12583
|
});
|
|
12584
12584
|
|
|
12585
|
-
// node_modules/yaml/dist/schema/common/seq.js
|
|
12585
|
+
// ../../../node_modules/yaml/dist/schema/common/seq.js
|
|
12586
12586
|
var require_seq = __commonJS((exports) => {
|
|
12587
12587
|
var identity = require_identity();
|
|
12588
12588
|
var YAMLSeq = require_YAMLSeq();
|
|
@@ -12601,7 +12601,7 @@ var require_seq = __commonJS((exports) => {
|
|
|
12601
12601
|
exports.seq = seq;
|
|
12602
12602
|
});
|
|
12603
12603
|
|
|
12604
|
-
// node_modules/yaml/dist/schema/common/string.js
|
|
12604
|
+
// ../../../node_modules/yaml/dist/schema/common/string.js
|
|
12605
12605
|
var require_string = __commonJS((exports) => {
|
|
12606
12606
|
var stringifyString = require_stringifyString();
|
|
12607
12607
|
var string4 = {
|
|
@@ -12617,7 +12617,7 @@ var require_string = __commonJS((exports) => {
|
|
|
12617
12617
|
exports.string = string4;
|
|
12618
12618
|
});
|
|
12619
12619
|
|
|
12620
|
-
// node_modules/yaml/dist/schema/common/null.js
|
|
12620
|
+
// ../../../node_modules/yaml/dist/schema/common/null.js
|
|
12621
12621
|
var require_null = __commonJS((exports) => {
|
|
12622
12622
|
var Scalar = require_Scalar();
|
|
12623
12623
|
var nullTag = {
|
|
@@ -12632,7 +12632,7 @@ var require_null = __commonJS((exports) => {
|
|
|
12632
12632
|
exports.nullTag = nullTag;
|
|
12633
12633
|
});
|
|
12634
12634
|
|
|
12635
|
-
// node_modules/yaml/dist/schema/core/bool.js
|
|
12635
|
+
// ../../../node_modules/yaml/dist/schema/core/bool.js
|
|
12636
12636
|
var require_bool = __commonJS((exports) => {
|
|
12637
12637
|
var Scalar = require_Scalar();
|
|
12638
12638
|
var boolTag = {
|
|
@@ -12653,7 +12653,7 @@ var require_bool = __commonJS((exports) => {
|
|
|
12653
12653
|
exports.boolTag = boolTag;
|
|
12654
12654
|
});
|
|
12655
12655
|
|
|
12656
|
-
// node_modules/yaml/dist/stringify/stringifyNumber.js
|
|
12656
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyNumber.js
|
|
12657
12657
|
var require_stringifyNumber = __commonJS((exports) => {
|
|
12658
12658
|
function stringifyNumber({ format, minFractionDigits, tag, value }) {
|
|
12659
12659
|
if (typeof value === "bigint")
|
|
@@ -12677,7 +12677,7 @@ var require_stringifyNumber = __commonJS((exports) => {
|
|
|
12677
12677
|
exports.stringifyNumber = stringifyNumber;
|
|
12678
12678
|
});
|
|
12679
12679
|
|
|
12680
|
-
// node_modules/yaml/dist/schema/core/float.js
|
|
12680
|
+
// ../../../node_modules/yaml/dist/schema/core/float.js
|
|
12681
12681
|
var require_float = __commonJS((exports) => {
|
|
12682
12682
|
var Scalar = require_Scalar();
|
|
12683
12683
|
var stringifyNumber = require_stringifyNumber();
|
|
@@ -12720,7 +12720,7 @@ var require_float = __commonJS((exports) => {
|
|
|
12720
12720
|
exports.floatNaN = floatNaN;
|
|
12721
12721
|
});
|
|
12722
12722
|
|
|
12723
|
-
// node_modules/yaml/dist/schema/core/int.js
|
|
12723
|
+
// ../../../node_modules/yaml/dist/schema/core/int.js
|
|
12724
12724
|
var require_int = __commonJS((exports) => {
|
|
12725
12725
|
var stringifyNumber = require_stringifyNumber();
|
|
12726
12726
|
var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
|
|
@@ -12762,7 +12762,7 @@ var require_int = __commonJS((exports) => {
|
|
|
12762
12762
|
exports.intOct = intOct;
|
|
12763
12763
|
});
|
|
12764
12764
|
|
|
12765
|
-
// node_modules/yaml/dist/schema/core/schema.js
|
|
12765
|
+
// ../../../node_modules/yaml/dist/schema/core/schema.js
|
|
12766
12766
|
var require_schema = __commonJS((exports) => {
|
|
12767
12767
|
var map2 = require_map();
|
|
12768
12768
|
var _null4 = require_null();
|
|
@@ -12787,7 +12787,7 @@ var require_schema = __commonJS((exports) => {
|
|
|
12787
12787
|
exports.schema = schema;
|
|
12788
12788
|
});
|
|
12789
12789
|
|
|
12790
|
-
// node_modules/yaml/dist/schema/json/schema.js
|
|
12790
|
+
// ../../../node_modules/yaml/dist/schema/json/schema.js
|
|
12791
12791
|
var require_schema2 = __commonJS((exports) => {
|
|
12792
12792
|
var Scalar = require_Scalar();
|
|
12793
12793
|
var map2 = require_map();
|
|
@@ -12851,7 +12851,7 @@ var require_schema2 = __commonJS((exports) => {
|
|
|
12851
12851
|
exports.schema = schema;
|
|
12852
12852
|
});
|
|
12853
12853
|
|
|
12854
|
-
// node_modules/yaml/dist/schema/yaml-1.1/binary.js
|
|
12854
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/binary.js
|
|
12855
12855
|
var require_binary = __commonJS((exports) => {
|
|
12856
12856
|
var node_buffer = __require("buffer");
|
|
12857
12857
|
var Scalar = require_Scalar();
|
|
@@ -12906,7 +12906,7 @@ var require_binary = __commonJS((exports) => {
|
|
|
12906
12906
|
exports.binary = binary;
|
|
12907
12907
|
});
|
|
12908
12908
|
|
|
12909
|
-
// node_modules/yaml/dist/schema/yaml-1.1/pairs.js
|
|
12909
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/pairs.js
|
|
12910
12910
|
var require_pairs = __commonJS((exports) => {
|
|
12911
12911
|
var identity = require_identity();
|
|
12912
12912
|
var Pair = require_Pair();
|
|
@@ -12981,7 +12981,7 @@ ${cn.comment}` : item.comment;
|
|
|
12981
12981
|
exports.resolvePairs = resolvePairs;
|
|
12982
12982
|
});
|
|
12983
12983
|
|
|
12984
|
-
// node_modules/yaml/dist/schema/yaml-1.1/omap.js
|
|
12984
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/omap.js
|
|
12985
12985
|
var require_omap = __commonJS((exports) => {
|
|
12986
12986
|
var identity = require_identity();
|
|
12987
12987
|
var toJS = require_toJS();
|
|
@@ -13053,7 +13053,7 @@ var require_omap = __commonJS((exports) => {
|
|
|
13053
13053
|
exports.omap = omap;
|
|
13054
13054
|
});
|
|
13055
13055
|
|
|
13056
|
-
// node_modules/yaml/dist/schema/yaml-1.1/bool.js
|
|
13056
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/bool.js
|
|
13057
13057
|
var require_bool2 = __commonJS((exports) => {
|
|
13058
13058
|
var Scalar = require_Scalar();
|
|
13059
13059
|
function boolStringify({ value, source }, ctx) {
|
|
@@ -13082,7 +13082,7 @@ var require_bool2 = __commonJS((exports) => {
|
|
|
13082
13082
|
exports.trueTag = trueTag;
|
|
13083
13083
|
});
|
|
13084
13084
|
|
|
13085
|
-
// node_modules/yaml/dist/schema/yaml-1.1/float.js
|
|
13085
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/float.js
|
|
13086
13086
|
var require_float2 = __commonJS((exports) => {
|
|
13087
13087
|
var Scalar = require_Scalar();
|
|
13088
13088
|
var stringifyNumber = require_stringifyNumber();
|
|
@@ -13128,7 +13128,7 @@ var require_float2 = __commonJS((exports) => {
|
|
|
13128
13128
|
exports.floatNaN = floatNaN;
|
|
13129
13129
|
});
|
|
13130
13130
|
|
|
13131
|
-
// node_modules/yaml/dist/schema/yaml-1.1/int.js
|
|
13131
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/int.js
|
|
13132
13132
|
var require_int2 = __commonJS((exports) => {
|
|
13133
13133
|
var stringifyNumber = require_stringifyNumber();
|
|
13134
13134
|
var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
|
|
@@ -13204,7 +13204,7 @@ var require_int2 = __commonJS((exports) => {
|
|
|
13204
13204
|
exports.intOct = intOct;
|
|
13205
13205
|
});
|
|
13206
13206
|
|
|
13207
|
-
// node_modules/yaml/dist/schema/yaml-1.1/set.js
|
|
13207
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/set.js
|
|
13208
13208
|
var require_set = __commonJS((exports) => {
|
|
13209
13209
|
var identity = require_identity();
|
|
13210
13210
|
var Pair = require_Pair();
|
|
@@ -13287,7 +13287,7 @@ var require_set = __commonJS((exports) => {
|
|
|
13287
13287
|
exports.set = set2;
|
|
13288
13288
|
});
|
|
13289
13289
|
|
|
13290
|
-
// node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
|
|
13290
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
|
|
13291
13291
|
var require_timestamp = __commonJS((exports) => {
|
|
13292
13292
|
var stringifyNumber = require_stringifyNumber();
|
|
13293
13293
|
function parseSexagesimal(str, asBigInt) {
|
|
@@ -13369,7 +13369,7 @@ var require_timestamp = __commonJS((exports) => {
|
|
|
13369
13369
|
exports.timestamp = timestamp;
|
|
13370
13370
|
});
|
|
13371
13371
|
|
|
13372
|
-
// node_modules/yaml/dist/schema/yaml-1.1/schema.js
|
|
13372
|
+
// ../../../node_modules/yaml/dist/schema/yaml-1.1/schema.js
|
|
13373
13373
|
var require_schema3 = __commonJS((exports) => {
|
|
13374
13374
|
var map2 = require_map();
|
|
13375
13375
|
var _null4 = require_null();
|
|
@@ -13410,7 +13410,7 @@ var require_schema3 = __commonJS((exports) => {
|
|
|
13410
13410
|
exports.schema = schema;
|
|
13411
13411
|
});
|
|
13412
13412
|
|
|
13413
|
-
// node_modules/yaml/dist/schema/tags.js
|
|
13413
|
+
// ../../../node_modules/yaml/dist/schema/tags.js
|
|
13414
13414
|
var require_tags = __commonJS((exports) => {
|
|
13415
13415
|
var map2 = require_map();
|
|
13416
13416
|
var _null4 = require_null();
|
|
@@ -13501,7 +13501,7 @@ var require_tags = __commonJS((exports) => {
|
|
|
13501
13501
|
exports.getTags = getTags;
|
|
13502
13502
|
});
|
|
13503
13503
|
|
|
13504
|
-
// node_modules/yaml/dist/schema/Schema.js
|
|
13504
|
+
// ../../../node_modules/yaml/dist/schema/Schema.js
|
|
13505
13505
|
var require_Schema = __commonJS((exports) => {
|
|
13506
13506
|
var identity = require_identity();
|
|
13507
13507
|
var map2 = require_map();
|
|
@@ -13531,7 +13531,7 @@ var require_Schema = __commonJS((exports) => {
|
|
|
13531
13531
|
exports.Schema = Schema;
|
|
13532
13532
|
});
|
|
13533
13533
|
|
|
13534
|
-
// node_modules/yaml/dist/stringify/stringifyDocument.js
|
|
13534
|
+
// ../../../node_modules/yaml/dist/stringify/stringifyDocument.js
|
|
13535
13535
|
var require_stringifyDocument = __commonJS((exports) => {
|
|
13536
13536
|
var identity = require_identity();
|
|
13537
13537
|
var stringify = require_stringify();
|
|
@@ -13611,7 +13611,7 @@ var require_stringifyDocument = __commonJS((exports) => {
|
|
|
13611
13611
|
exports.stringifyDocument = stringifyDocument;
|
|
13612
13612
|
});
|
|
13613
13613
|
|
|
13614
|
-
// node_modules/yaml/dist/doc/Document.js
|
|
13614
|
+
// ../../../node_modules/yaml/dist/doc/Document.js
|
|
13615
13615
|
var require_Document = __commonJS((exports) => {
|
|
13616
13616
|
var Alias = require_Alias();
|
|
13617
13617
|
var Collection = require_Collection();
|
|
@@ -13846,7 +13846,7 @@ var require_Document = __commonJS((exports) => {
|
|
|
13846
13846
|
exports.Document = Document;
|
|
13847
13847
|
});
|
|
13848
13848
|
|
|
13849
|
-
// node_modules/yaml/dist/errors.js
|
|
13849
|
+
// ../../../node_modules/yaml/dist/errors.js
|
|
13850
13850
|
var require_errors2 = __commonJS((exports) => {
|
|
13851
13851
|
class YAMLError extends Error {
|
|
13852
13852
|
constructor(name, pos, code, message) {
|
|
@@ -13911,7 +13911,7 @@ ${pointer}
|
|
|
13911
13911
|
exports.prettifyError = prettifyError;
|
|
13912
13912
|
});
|
|
13913
13913
|
|
|
13914
|
-
// node_modules/yaml/dist/compose/resolve-props.js
|
|
13914
|
+
// ../../../node_modules/yaml/dist/compose/resolve-props.js
|
|
13915
13915
|
var require_resolve_props = __commonJS((exports) => {
|
|
13916
13916
|
function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) {
|
|
13917
13917
|
let spaceBefore = false;
|
|
@@ -14041,7 +14041,7 @@ var require_resolve_props = __commonJS((exports) => {
|
|
|
14041
14041
|
exports.resolveProps = resolveProps;
|
|
14042
14042
|
});
|
|
14043
14043
|
|
|
14044
|
-
// node_modules/yaml/dist/compose/util-contains-newline.js
|
|
14044
|
+
// ../../../node_modules/yaml/dist/compose/util-contains-newline.js
|
|
14045
14045
|
var require_util_contains_newline = __commonJS((exports) => {
|
|
14046
14046
|
function containsNewline(key) {
|
|
14047
14047
|
if (!key)
|
|
@@ -14081,7 +14081,7 @@ var require_util_contains_newline = __commonJS((exports) => {
|
|
|
14081
14081
|
exports.containsNewline = containsNewline;
|
|
14082
14082
|
});
|
|
14083
14083
|
|
|
14084
|
-
// node_modules/yaml/dist/compose/util-flow-indent-check.js
|
|
14084
|
+
// ../../../node_modules/yaml/dist/compose/util-flow-indent-check.js
|
|
14085
14085
|
var require_util_flow_indent_check = __commonJS((exports) => {
|
|
14086
14086
|
var utilContainsNewline = require_util_contains_newline();
|
|
14087
14087
|
function flowIndentCheck(indent, fc, onError) {
|
|
@@ -14096,7 +14096,7 @@ var require_util_flow_indent_check = __commonJS((exports) => {
|
|
|
14096
14096
|
exports.flowIndentCheck = flowIndentCheck;
|
|
14097
14097
|
});
|
|
14098
14098
|
|
|
14099
|
-
// node_modules/yaml/dist/compose/util-map-includes.js
|
|
14099
|
+
// ../../../node_modules/yaml/dist/compose/util-map-includes.js
|
|
14100
14100
|
var require_util_map_includes = __commonJS((exports) => {
|
|
14101
14101
|
var identity = require_identity();
|
|
14102
14102
|
function mapIncludes(ctx, items, search) {
|
|
@@ -14109,7 +14109,7 @@ var require_util_map_includes = __commonJS((exports) => {
|
|
|
14109
14109
|
exports.mapIncludes = mapIncludes;
|
|
14110
14110
|
});
|
|
14111
14111
|
|
|
14112
|
-
// node_modules/yaml/dist/compose/resolve-block-map.js
|
|
14112
|
+
// ../../../node_modules/yaml/dist/compose/resolve-block-map.js
|
|
14113
14113
|
var require_resolve_block_map = __commonJS((exports) => {
|
|
14114
14114
|
var Pair = require_Pair();
|
|
14115
14115
|
var YAMLMap = require_YAMLMap();
|
|
@@ -14216,7 +14216,7 @@ var require_resolve_block_map = __commonJS((exports) => {
|
|
|
14216
14216
|
exports.resolveBlockMap = resolveBlockMap;
|
|
14217
14217
|
});
|
|
14218
14218
|
|
|
14219
|
-
// node_modules/yaml/dist/compose/resolve-block-seq.js
|
|
14219
|
+
// ../../../node_modules/yaml/dist/compose/resolve-block-seq.js
|
|
14220
14220
|
var require_resolve_block_seq = __commonJS((exports) => {
|
|
14221
14221
|
var YAMLSeq = require_YAMLSeq();
|
|
14222
14222
|
var resolveProps = require_resolve_props();
|
|
@@ -14264,7 +14264,7 @@ var require_resolve_block_seq = __commonJS((exports) => {
|
|
|
14264
14264
|
exports.resolveBlockSeq = resolveBlockSeq;
|
|
14265
14265
|
});
|
|
14266
14266
|
|
|
14267
|
-
// node_modules/yaml/dist/compose/resolve-end.js
|
|
14267
|
+
// ../../../node_modules/yaml/dist/compose/resolve-end.js
|
|
14268
14268
|
var require_resolve_end = __commonJS((exports) => {
|
|
14269
14269
|
function resolveEnd(end, offset, reqSpace, onError) {
|
|
14270
14270
|
let comment = "";
|
|
@@ -14304,7 +14304,7 @@ var require_resolve_end = __commonJS((exports) => {
|
|
|
14304
14304
|
exports.resolveEnd = resolveEnd;
|
|
14305
14305
|
});
|
|
14306
14306
|
|
|
14307
|
-
// node_modules/yaml/dist/compose/resolve-flow-collection.js
|
|
14307
|
+
// ../../../node_modules/yaml/dist/compose/resolve-flow-collection.js
|
|
14308
14308
|
var require_resolve_flow_collection = __commonJS((exports) => {
|
|
14309
14309
|
var identity = require_identity();
|
|
14310
14310
|
var Pair = require_Pair();
|
|
@@ -14495,7 +14495,7 @@ var require_resolve_flow_collection = __commonJS((exports) => {
|
|
|
14495
14495
|
exports.resolveFlowCollection = resolveFlowCollection;
|
|
14496
14496
|
});
|
|
14497
14497
|
|
|
14498
|
-
// node_modules/yaml/dist/compose/compose-collection.js
|
|
14498
|
+
// ../../../node_modules/yaml/dist/compose/compose-collection.js
|
|
14499
14499
|
var require_compose_collection = __commonJS((exports) => {
|
|
14500
14500
|
var identity = require_identity();
|
|
14501
14501
|
var Scalar = require_Scalar();
|
|
@@ -14557,7 +14557,7 @@ var require_compose_collection = __commonJS((exports) => {
|
|
|
14557
14557
|
exports.composeCollection = composeCollection;
|
|
14558
14558
|
});
|
|
14559
14559
|
|
|
14560
|
-
// node_modules/yaml/dist/compose/resolve-block-scalar.js
|
|
14560
|
+
// ../../../node_modules/yaml/dist/compose/resolve-block-scalar.js
|
|
14561
14561
|
var require_resolve_block_scalar = __commonJS((exports) => {
|
|
14562
14562
|
var Scalar = require_Scalar();
|
|
14563
14563
|
function resolveBlockScalar(ctx, scalar, onError) {
|
|
@@ -14750,7 +14750,7 @@ var require_resolve_block_scalar = __commonJS((exports) => {
|
|
|
14750
14750
|
exports.resolveBlockScalar = resolveBlockScalar;
|
|
14751
14751
|
});
|
|
14752
14752
|
|
|
14753
|
-
// node_modules/yaml/dist/compose/resolve-flow-scalar.js
|
|
14753
|
+
// ../../../node_modules/yaml/dist/compose/resolve-flow-scalar.js
|
|
14754
14754
|
var require_resolve_flow_scalar = __commonJS((exports) => {
|
|
14755
14755
|
var Scalar = require_Scalar();
|
|
14756
14756
|
var resolveEnd = require_resolve_end();
|
|
@@ -14966,7 +14966,7 @@ var require_resolve_flow_scalar = __commonJS((exports) => {
|
|
|
14966
14966
|
exports.resolveFlowScalar = resolveFlowScalar;
|
|
14967
14967
|
});
|
|
14968
14968
|
|
|
14969
|
-
// node_modules/yaml/dist/compose/compose-scalar.js
|
|
14969
|
+
// ../../../node_modules/yaml/dist/compose/compose-scalar.js
|
|
14970
14970
|
var require_compose_scalar = __commonJS((exports) => {
|
|
14971
14971
|
var identity = require_identity();
|
|
14972
14972
|
var Scalar = require_Scalar();
|
|
@@ -15044,7 +15044,7 @@ var require_compose_scalar = __commonJS((exports) => {
|
|
|
15044
15044
|
exports.composeScalar = composeScalar;
|
|
15045
15045
|
});
|
|
15046
15046
|
|
|
15047
|
-
// node_modules/yaml/dist/compose/util-empty-scalar-position.js
|
|
15047
|
+
// ../../../node_modules/yaml/dist/compose/util-empty-scalar-position.js
|
|
15048
15048
|
var require_util_empty_scalar_position = __commonJS((exports) => {
|
|
15049
15049
|
function emptyScalarPosition(offset, before, pos) {
|
|
15050
15050
|
if (before) {
|
|
@@ -15071,7 +15071,7 @@ var require_util_empty_scalar_position = __commonJS((exports) => {
|
|
|
15071
15071
|
exports.emptyScalarPosition = emptyScalarPosition;
|
|
15072
15072
|
});
|
|
15073
15073
|
|
|
15074
|
-
// node_modules/yaml/dist/compose/compose-node.js
|
|
15074
|
+
// ../../../node_modules/yaml/dist/compose/compose-node.js
|
|
15075
15075
|
var require_compose_node = __commonJS((exports) => {
|
|
15076
15076
|
var Alias = require_Alias();
|
|
15077
15077
|
var identity = require_identity();
|
|
@@ -15169,7 +15169,7 @@ var require_compose_node = __commonJS((exports) => {
|
|
|
15169
15169
|
exports.composeNode = composeNode;
|
|
15170
15170
|
});
|
|
15171
15171
|
|
|
15172
|
-
// node_modules/yaml/dist/compose/compose-doc.js
|
|
15172
|
+
// ../../../node_modules/yaml/dist/compose/compose-doc.js
|
|
15173
15173
|
var require_compose_doc = __commonJS((exports) => {
|
|
15174
15174
|
var Document = require_Document();
|
|
15175
15175
|
var composeNode = require_compose_node();
|
|
@@ -15209,7 +15209,7 @@ var require_compose_doc = __commonJS((exports) => {
|
|
|
15209
15209
|
exports.composeDoc = composeDoc;
|
|
15210
15210
|
});
|
|
15211
15211
|
|
|
15212
|
-
// node_modules/yaml/dist/compose/composer.js
|
|
15212
|
+
// ../../../node_modules/yaml/dist/compose/composer.js
|
|
15213
15213
|
var require_composer = __commonJS((exports) => {
|
|
15214
15214
|
var node_process = __require("process");
|
|
15215
15215
|
var directives = require_directives();
|
|
@@ -15398,7 +15398,7 @@ ${end.comment}` : end.comment;
|
|
|
15398
15398
|
exports.Composer = Composer;
|
|
15399
15399
|
});
|
|
15400
15400
|
|
|
15401
|
-
// node_modules/yaml/dist/parse/cst-scalar.js
|
|
15401
|
+
// ../../../node_modules/yaml/dist/parse/cst-scalar.js
|
|
15402
15402
|
var require_cst_scalar = __commonJS((exports) => {
|
|
15403
15403
|
var resolveBlockScalar = require_resolve_block_scalar();
|
|
15404
15404
|
var resolveFlowScalar = require_resolve_flow_scalar();
|
|
@@ -15588,7 +15588,7 @@ var require_cst_scalar = __commonJS((exports) => {
|
|
|
15588
15588
|
exports.setScalarValue = setScalarValue;
|
|
15589
15589
|
});
|
|
15590
15590
|
|
|
15591
|
-
// node_modules/yaml/dist/parse/cst-stringify.js
|
|
15591
|
+
// ../../../node_modules/yaml/dist/parse/cst-stringify.js
|
|
15592
15592
|
var require_cst_stringify = __commonJS((exports) => {
|
|
15593
15593
|
var stringify = (cst) => ("type" in cst) ? stringifyToken(cst) : stringifyItem(cst);
|
|
15594
15594
|
function stringifyToken(token) {
|
|
@@ -15646,7 +15646,7 @@ var require_cst_stringify = __commonJS((exports) => {
|
|
|
15646
15646
|
exports.stringify = stringify;
|
|
15647
15647
|
});
|
|
15648
15648
|
|
|
15649
|
-
// node_modules/yaml/dist/parse/cst-visit.js
|
|
15649
|
+
// ../../../node_modules/yaml/dist/parse/cst-visit.js
|
|
15650
15650
|
var require_cst_visit = __commonJS((exports) => {
|
|
15651
15651
|
var BREAK = Symbol("break visit");
|
|
15652
15652
|
var SKIP = Symbol("skip children");
|
|
@@ -15705,7 +15705,7 @@ var require_cst_visit = __commonJS((exports) => {
|
|
|
15705
15705
|
exports.visit = visit;
|
|
15706
15706
|
});
|
|
15707
15707
|
|
|
15708
|
-
// node_modules/yaml/dist/parse/cst.js
|
|
15708
|
+
// ../../../node_modules/yaml/dist/parse/cst.js
|
|
15709
15709
|
var require_cst = __commonJS((exports) => {
|
|
15710
15710
|
var cstScalar = require_cst_scalar();
|
|
15711
15711
|
var cstStringify = require_cst_stringify();
|
|
@@ -15806,7 +15806,7 @@ var require_cst = __commonJS((exports) => {
|
|
|
15806
15806
|
exports.tokenType = tokenType;
|
|
15807
15807
|
});
|
|
15808
15808
|
|
|
15809
|
-
// node_modules/yaml/dist/parse/lexer.js
|
|
15809
|
+
// ../../../node_modules/yaml/dist/parse/lexer.js
|
|
15810
15810
|
var require_lexer = __commonJS((exports) => {
|
|
15811
15811
|
var cst = require_cst();
|
|
15812
15812
|
function isEmpty(ch) {
|
|
@@ -16392,7 +16392,7 @@ var require_lexer = __commonJS((exports) => {
|
|
|
16392
16392
|
exports.Lexer = Lexer;
|
|
16393
16393
|
});
|
|
16394
16394
|
|
|
16395
|
-
// node_modules/yaml/dist/parse/line-counter.js
|
|
16395
|
+
// ../../../node_modules/yaml/dist/parse/line-counter.js
|
|
16396
16396
|
var require_line_counter = __commonJS((exports) => {
|
|
16397
16397
|
class LineCounter {
|
|
16398
16398
|
constructor() {
|
|
@@ -16420,7 +16420,7 @@ var require_line_counter = __commonJS((exports) => {
|
|
|
16420
16420
|
exports.LineCounter = LineCounter;
|
|
16421
16421
|
});
|
|
16422
16422
|
|
|
16423
|
-
// node_modules/yaml/dist/parse/parser.js
|
|
16423
|
+
// ../../../node_modules/yaml/dist/parse/parser.js
|
|
16424
16424
|
var require_parser = __commonJS((exports) => {
|
|
16425
16425
|
var node_process = __require("process");
|
|
16426
16426
|
var cst = require_cst();
|
|
@@ -17269,7 +17269,7 @@ var require_parser = __commonJS((exports) => {
|
|
|
17269
17269
|
exports.Parser = Parser;
|
|
17270
17270
|
});
|
|
17271
17271
|
|
|
17272
|
-
// node_modules/yaml/dist/public-api.js
|
|
17272
|
+
// ../../../node_modules/yaml/dist/public-api.js
|
|
17273
17273
|
var require_public_api = __commonJS((exports) => {
|
|
17274
17274
|
var composer = require_composer();
|
|
17275
17275
|
var Document = require_Document();
|
|
@@ -17363,7 +17363,7 @@ var require_public_api = __commonJS((exports) => {
|
|
|
17363
17363
|
exports.stringify = stringify;
|
|
17364
17364
|
});
|
|
17365
17365
|
|
|
17366
|
-
// node_modules/yaml/dist/index.js
|
|
17366
|
+
// ../../../node_modules/yaml/dist/index.js
|
|
17367
17367
|
var composer, Document, Schema, errors4, Alias, identity, Pair, Scalar, YAMLMap, YAMLSeq, cst, lexer, lineCounter, parser, publicApi, visit, $Composer, $Document, $Schema, $YAMLError, $YAMLParseError, $YAMLWarning, $Alias, $isAlias, $isCollection, $isDocument, $isMap, $isNode, $isPair, $isScalar, $isSeq, $Pair, $Scalar, $YAMLMap, $YAMLSeq, $Lexer, $LineCounter, $Parser, $parse, $parseAllDocuments, $parseDocument, $stringify, $visit, $visitAsync;
|
|
17368
17368
|
var init_dist = __esm(() => {
|
|
17369
17369
|
composer = require_composer();
|
|
@@ -17412,7 +17412,7 @@ var init_dist = __esm(() => {
|
|
|
17412
17412
|
$visitAsync = visit.visitAsync;
|
|
17413
17413
|
});
|
|
17414
17414
|
|
|
17415
|
-
// node_modules/zod/index.js
|
|
17415
|
+
// ../../../node_modules/zod/index.js
|
|
17416
17416
|
var init_zod = __esm(() => {
|
|
17417
17417
|
init_external();
|
|
17418
17418
|
init_external();
|
|
@@ -17511,7 +17511,7 @@ ${result.warnings.map((w) => ` \u26A0 ${w}`).join(`
|
|
|
17511
17511
|
const raw = JSON.parse(jsonContent);
|
|
17512
17512
|
return SpecialistSchema.parseAsync(raw);
|
|
17513
17513
|
}
|
|
17514
|
-
var KebabCase, Semver, MetadataSchema, ExecutionSchema, PromptSchema2, ScriptEntrySchema, SkillsSchema, CapabilitiesSchema, CommunicationSchema, ValidationSchema, StallDetectionSchema, SpecialistSchema;
|
|
17514
|
+
var KebabCase, Semver, MetadataSchema, ExecutionSchema, PromptSchema2, ScriptEntrySchema, SkillsSchema, CapabilitiesSchema, CommunicationSchema, ValidationSchema, MandatoryRuleSchema, MandatoryRulesSchema, StallDetectionSchema, SpecialistSchema;
|
|
17515
17515
|
var init_schema = __esm(() => {
|
|
17516
17516
|
init_zod();
|
|
17517
17517
|
KebabCase = stringType().regex(/^[a-z][a-z0-9-]*$/, "Must be kebab-case");
|
|
@@ -17580,6 +17580,17 @@ var init_schema = __esm(() => {
|
|
|
17580
17580
|
files_to_watch: arrayType(stringType()).optional(),
|
|
17581
17581
|
stale_threshold_days: numberType().optional()
|
|
17582
17582
|
}).optional();
|
|
17583
|
+
MandatoryRuleSchema = objectType({
|
|
17584
|
+
id: stringType(),
|
|
17585
|
+
level: enumType(["error", "warn", "info"]).default("error"),
|
|
17586
|
+
text: stringType(),
|
|
17587
|
+
when: stringType().optional()
|
|
17588
|
+
});
|
|
17589
|
+
MandatoryRulesSchema = objectType({
|
|
17590
|
+
template_sets: arrayType(KebabCase).default([]),
|
|
17591
|
+
disable_default_globals: booleanType().default(false),
|
|
17592
|
+
inline_rules: arrayType(MandatoryRuleSchema).default([])
|
|
17593
|
+
}).optional();
|
|
17583
17594
|
StallDetectionSchema = objectType({
|
|
17584
17595
|
running_silence_warn_ms: numberType().optional(),
|
|
17585
17596
|
running_silence_error_ms: numberType().optional(),
|
|
@@ -17596,6 +17607,7 @@ var init_schema = __esm(() => {
|
|
|
17596
17607
|
communication: CommunicationSchema,
|
|
17597
17608
|
validation: ValidationSchema,
|
|
17598
17609
|
stall_detection: StallDetectionSchema,
|
|
17610
|
+
mandatory_rules: MandatoryRulesSchema,
|
|
17599
17611
|
output_file: stringType().optional(),
|
|
17600
17612
|
beads_integration: enumType(["auto", "always", "never"]).default("auto"),
|
|
17601
17613
|
beads_write_notes: booleanType().default(true),
|
|
@@ -18750,6 +18762,152 @@ function stripJsonFences(text) {
|
|
|
18750
18762
|
return text.replace(/^```(?:json)?\s*/i, "").replace(/\s*```$/i, "").trim();
|
|
18751
18763
|
}
|
|
18752
18764
|
|
|
18765
|
+
// src/specialist/mandatory-rules.ts
|
|
18766
|
+
import { existsSync as existsSync3, readFileSync } from "fs";
|
|
18767
|
+
import { resolve as resolve2 } from "path";
|
|
18768
|
+
function readJsonFile(filePath) {
|
|
18769
|
+
return JSON.parse(readFileSync(filePath, "utf8"));
|
|
18770
|
+
}
|
|
18771
|
+
function loadMandatoryRulesIndex(cwd) {
|
|
18772
|
+
const indexPath = resolve2(cwd, "config/mandatory-rules/index.json");
|
|
18773
|
+
if (!existsSync3(indexPath)) {
|
|
18774
|
+
console.warn("[specialist runner] Missing config/mandatory-rules/index.json; skipping MANDATORY_RULES injection");
|
|
18775
|
+
return null;
|
|
18776
|
+
}
|
|
18777
|
+
return readJsonFile(indexPath);
|
|
18778
|
+
}
|
|
18779
|
+
function parseQuotedScalar(value) {
|
|
18780
|
+
const trimmed = value.trim();
|
|
18781
|
+
if (trimmed.startsWith('"') && trimmed.endsWith('"') || trimmed.startsWith("'") && trimmed.endsWith("'")) {
|
|
18782
|
+
return trimmed.slice(1, -1);
|
|
18783
|
+
}
|
|
18784
|
+
return trimmed;
|
|
18785
|
+
}
|
|
18786
|
+
function parseRuleEntry(lines, startIndex) {
|
|
18787
|
+
const entryLine = lines[startIndex]?.trim();
|
|
18788
|
+
if (!entryLine?.startsWith("- "))
|
|
18789
|
+
return null;
|
|
18790
|
+
const firstLine = entryLine.slice(2).trim();
|
|
18791
|
+
const inlineFields = {};
|
|
18792
|
+
if (firstLine.length > 0 && !firstLine.includes(":")) {
|
|
18793
|
+
inlineFields.text = parseQuotedScalar(firstLine);
|
|
18794
|
+
} else if (firstLine.length > 0) {
|
|
18795
|
+
const [key, ...rest] = firstLine.split(":");
|
|
18796
|
+
inlineFields[key.trim()] = parseQuotedScalar(rest.join(":"));
|
|
18797
|
+
}
|
|
18798
|
+
let nextIndex = startIndex + 1;
|
|
18799
|
+
while (nextIndex < lines.length) {
|
|
18800
|
+
const line = lines[nextIndex];
|
|
18801
|
+
if (!line.trim()) {
|
|
18802
|
+
nextIndex += 1;
|
|
18803
|
+
continue;
|
|
18804
|
+
}
|
|
18805
|
+
if (/^\s*-\s+/.test(line))
|
|
18806
|
+
break;
|
|
18807
|
+
if (!/^\s+/.test(line))
|
|
18808
|
+
break;
|
|
18809
|
+
const trimmed = line.trim();
|
|
18810
|
+
const match = trimmed.match(/^([A-Za-z0-9_]+):\s*(.*)$/);
|
|
18811
|
+
if (!match) {
|
|
18812
|
+
nextIndex += 1;
|
|
18813
|
+
continue;
|
|
18814
|
+
}
|
|
18815
|
+
inlineFields[match[1]] = parseQuotedScalar(match[2]);
|
|
18816
|
+
nextIndex += 1;
|
|
18817
|
+
}
|
|
18818
|
+
if (!inlineFields.text)
|
|
18819
|
+
return null;
|
|
18820
|
+
return {
|
|
18821
|
+
rule: {
|
|
18822
|
+
id: inlineFields.id ?? "",
|
|
18823
|
+
level: inlineFields.level ?? "required",
|
|
18824
|
+
text: inlineFields.text,
|
|
18825
|
+
...inlineFields.when ? { when: inlineFields.when } : {}
|
|
18826
|
+
},
|
|
18827
|
+
nextIndex
|
|
18828
|
+
};
|
|
18829
|
+
}
|
|
18830
|
+
function parseMandatoryRulesFrontmatter(content, setId) {
|
|
18831
|
+
const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---\n?/);
|
|
18832
|
+
if (!frontmatterMatch)
|
|
18833
|
+
return [];
|
|
18834
|
+
const lines = frontmatterMatch[1].split(`
|
|
18835
|
+
`);
|
|
18836
|
+
const rulesHeaderIndex = lines.findIndex((line) => /^rules:\s*$/.test(line.trim()));
|
|
18837
|
+
if (rulesHeaderIndex === -1)
|
|
18838
|
+
return [];
|
|
18839
|
+
const rules = [];
|
|
18840
|
+
let index = rulesHeaderIndex + 1;
|
|
18841
|
+
while (index < lines.length) {
|
|
18842
|
+
const line = lines[index];
|
|
18843
|
+
if (!line.trim()) {
|
|
18844
|
+
index += 1;
|
|
18845
|
+
continue;
|
|
18846
|
+
}
|
|
18847
|
+
if (!/^\s*-\s+/.test(line))
|
|
18848
|
+
break;
|
|
18849
|
+
const parsed = parseRuleEntry(lines, index);
|
|
18850
|
+
if (!parsed)
|
|
18851
|
+
break;
|
|
18852
|
+
const ruleIndex = rules.length + 1;
|
|
18853
|
+
rules.push({
|
|
18854
|
+
id: parsed.rule.id || `${setId}-${ruleIndex}`,
|
|
18855
|
+
level: parsed.rule.level,
|
|
18856
|
+
text: parsed.rule.text,
|
|
18857
|
+
...parsed.rule.when ? { when: parsed.rule.when } : {}
|
|
18858
|
+
});
|
|
18859
|
+
index = parsed.nextIndex;
|
|
18860
|
+
}
|
|
18861
|
+
return rules;
|
|
18862
|
+
}
|
|
18863
|
+
function readMandatoryRuleSet(cwd, id) {
|
|
18864
|
+
const candidates = [
|
|
18865
|
+
resolve2(cwd, `.specialists/mandatory-rules/${id}.md`),
|
|
18866
|
+
resolve2(cwd, `config/mandatory-rules/${id}.md`)
|
|
18867
|
+
];
|
|
18868
|
+
const filePath = candidates.find((path) => existsSync3(path));
|
|
18869
|
+
if (!filePath)
|
|
18870
|
+
return null;
|
|
18871
|
+
const content = readFileSync(filePath, "utf8");
|
|
18872
|
+
const rules = parseMandatoryRulesFrontmatter(content, id);
|
|
18873
|
+
if (rules.length > 0)
|
|
18874
|
+
return { id, rules };
|
|
18875
|
+
const body = content.replace(/^---\n[\s\S]*?\n---\n?/, "").trim();
|
|
18876
|
+
if (!body)
|
|
18877
|
+
return null;
|
|
18878
|
+
return {
|
|
18879
|
+
id,
|
|
18880
|
+
rules: [{ id: `${id}-1`, level: "required", text: body.replace(/\s+/g, " ") }]
|
|
18881
|
+
};
|
|
18882
|
+
}
|
|
18883
|
+
function formatMandatoryRulesBlock(sets) {
|
|
18884
|
+
if (sets.length === 0)
|
|
18885
|
+
return "";
|
|
18886
|
+
const sections = sets.map((set2) => {
|
|
18887
|
+
const rules = set2.rules.map((rule) => `- [${rule.level}] ${rule.text}`).join(`
|
|
18888
|
+
`);
|
|
18889
|
+
return `### ${set2.id}
|
|
18890
|
+
${rules}`;
|
|
18891
|
+
});
|
|
18892
|
+
return `## MANDATORY_RULES
|
|
18893
|
+
${sections.join(`
|
|
18894
|
+
|
|
18895
|
+
`)}`;
|
|
18896
|
+
}
|
|
18897
|
+
function buildMandatoryRulesBlock(specialistConfig) {
|
|
18898
|
+
const cwd = specialistConfig.cwd ?? process.cwd();
|
|
18899
|
+
const index = loadMandatoryRulesIndex(cwd);
|
|
18900
|
+
if (!index)
|
|
18901
|
+
return "";
|
|
18902
|
+
const setIds = [
|
|
18903
|
+
...index.required_template_sets ?? [],
|
|
18904
|
+
...index.default_template_sets ?? []
|
|
18905
|
+
];
|
|
18906
|
+
const sets = setIds.map((id) => readMandatoryRuleSet(cwd, id)).filter((set2) => set2 !== null);
|
|
18907
|
+
return formatMandatoryRulesBlock(sets);
|
|
18908
|
+
}
|
|
18909
|
+
var init_mandatory_rules = () => {};
|
|
18910
|
+
|
|
18753
18911
|
// src/specialist/beads.ts
|
|
18754
18912
|
import { spawnSync } from "child_process";
|
|
18755
18913
|
function buildBeadContext(bead, completedBlockers = []) {
|
|
@@ -18903,7 +19061,7 @@ function shouldCreateBead(beadsIntegration, permissionRequired) {
|
|
|
18903
19061
|
var init_beads = () => {};
|
|
18904
19062
|
|
|
18905
19063
|
// src/specialist/observability-db.ts
|
|
18906
|
-
import { chmodSync, existsSync as
|
|
19064
|
+
import { chmodSync, existsSync as existsSync4, mkdirSync as mkdirSync2, readFileSync as readFileSync2, writeFileSync as writeFileSync2 } from "fs";
|
|
18907
19065
|
import { spawnSync as spawnSync2 } from "child_process";
|
|
18908
19066
|
import { join as join3, sep as sep2 } from "path";
|
|
18909
19067
|
function resolveGitRootFrom(cwd) {
|
|
@@ -18953,7 +19111,7 @@ function resolveObservabilityDbLocation(cwd = process.cwd()) {
|
|
|
18953
19111
|
}
|
|
18954
19112
|
function ensureObservabilityDbFile(location) {
|
|
18955
19113
|
mkdirSync2(location.dbDirectory, { recursive: true });
|
|
18956
|
-
const alreadyExists =
|
|
19114
|
+
const alreadyExists = existsSync4(location.dbPath);
|
|
18957
19115
|
if (!alreadyExists) {
|
|
18958
19116
|
writeFileSync2(location.dbPath, "", { encoding: "utf-8", flag: "wx" });
|
|
18959
19117
|
}
|
|
@@ -18967,7 +19125,7 @@ function ensureGitignoreHasObservabilityDbEntries(gitRoot) {
|
|
|
18967
19125
|
".specialists/db/*.db-wal",
|
|
18968
19126
|
".specialists/db/*.db-shm"
|
|
18969
19127
|
];
|
|
18970
|
-
const existing =
|
|
19128
|
+
const existing = existsSync4(gitignorePath) ? readFileSync2(gitignorePath, "utf-8") : "";
|
|
18971
19129
|
const existingLines = new Set(existing.split(/\r?\n/).map((line) => line.trim()).filter(Boolean));
|
|
18972
19130
|
const missingEntries = requiredEntries.filter((entry) => !existingLines.has(entry));
|
|
18973
19131
|
if (missingEntries.length === 0) {
|
|
@@ -18996,7 +19154,7 @@ var init_observability_db = __esm(() => {
|
|
|
18996
19154
|
|
|
18997
19155
|
// src/specialist/job-root.ts
|
|
18998
19156
|
import { spawnSync as spawnSync3 } from "child_process";
|
|
18999
|
-
import { dirname as dirname2, join as join4, resolve as
|
|
19157
|
+
import { dirname as dirname2, join as join4, resolve as resolve3 } from "path";
|
|
19000
19158
|
function resolveCommonGitRoot(cwd) {
|
|
19001
19159
|
const result = spawnSync3("git", ["rev-parse", "--git-common-dir"], {
|
|
19002
19160
|
cwd,
|
|
@@ -19008,7 +19166,7 @@ function resolveCommonGitRoot(cwd) {
|
|
|
19008
19166
|
const gitCommonDir = result.stdout?.trim();
|
|
19009
19167
|
if (!gitCommonDir)
|
|
19010
19168
|
return;
|
|
19011
|
-
return dirname2(
|
|
19169
|
+
return dirname2(resolve3(cwd, gitCommonDir));
|
|
19012
19170
|
}
|
|
19013
19171
|
function resolveJobsDir(cwd = process.cwd()) {
|
|
19014
19172
|
const commonRoot = resolveCommonGitRoot(cwd) ?? cwd;
|
|
@@ -19028,7 +19186,7 @@ function resolveCurrentBranch(cwd = process.cwd()) {
|
|
|
19028
19186
|
var init_job_root = () => {};
|
|
19029
19187
|
|
|
19030
19188
|
// src/specialist/observability-sqlite.ts
|
|
19031
|
-
import { existsSync as
|
|
19189
|
+
import { existsSync as existsSync5, readFileSync as readFileSync3, statSync } from "fs";
|
|
19032
19190
|
import { join as join5 } from "path";
|
|
19033
19191
|
function loadBunDatabase() {
|
|
19034
19192
|
if (_probed)
|
|
@@ -20632,7 +20790,7 @@ class SqliteClient {
|
|
|
20632
20790
|
WHERE worktree_column IS NOT NULL AND worktree_column != ''
|
|
20633
20791
|
`).all();
|
|
20634
20792
|
for (const row of worktreeRows) {
|
|
20635
|
-
if (
|
|
20793
|
+
if (existsSync5(row.worktree_column))
|
|
20636
20794
|
continue;
|
|
20637
20795
|
findings.push({
|
|
20638
20796
|
kind: "stale-pointer",
|
|
@@ -20659,10 +20817,10 @@ function hasRunCompleteEvent(jobId, cwd = process.cwd()) {
|
|
|
20659
20817
|
sqliteClient?.close();
|
|
20660
20818
|
}
|
|
20661
20819
|
const eventsPath = join5(resolveJobsDir(cwd), jobId, "events.jsonl");
|
|
20662
|
-
if (!
|
|
20820
|
+
if (!existsSync5(eventsPath))
|
|
20663
20821
|
return false;
|
|
20664
20822
|
try {
|
|
20665
|
-
const lines =
|
|
20823
|
+
const lines = readFileSync3(eventsPath, "utf-8").split(`
|
|
20666
20824
|
`).map((line) => line.trim()).filter((line) => line.length > 0);
|
|
20667
20825
|
for (const line of lines) {
|
|
20668
20826
|
const event = JSON.parse(line);
|
|
@@ -20678,7 +20836,7 @@ function createObservabilitySqliteClient(cwd = process.cwd()) {
|
|
|
20678
20836
|
if (!loadBunDatabase())
|
|
20679
20837
|
return null;
|
|
20680
20838
|
const location = resolveObservabilityDbLocation(cwd);
|
|
20681
|
-
if (!
|
|
20839
|
+
if (!existsSync5(location.dbPath))
|
|
20682
20840
|
return null;
|
|
20683
20841
|
try {
|
|
20684
20842
|
const Ctor = loadBunDatabase();
|
|
@@ -20926,8 +21084,8 @@ var init_memory_retrieval = __esm(() => {
|
|
|
20926
21084
|
import { createHash as createHash2 } from "crypto";
|
|
20927
21085
|
import { writeFile } from "fs/promises";
|
|
20928
21086
|
import { execSync as execSync2, spawnSync as spawnSync4 } from "child_process";
|
|
20929
|
-
import { existsSync as
|
|
20930
|
-
import { basename as basename2, resolve as
|
|
21087
|
+
import { existsSync as existsSync6, readFileSync as readFileSync4 } from "fs";
|
|
21088
|
+
import { basename as basename2, resolve as resolve4 } from "path";
|
|
20931
21089
|
import { homedir as homedir2 } from "os";
|
|
20932
21090
|
function runScript(command, cwd) {
|
|
20933
21091
|
const run = (command ?? "").trim();
|
|
@@ -20958,7 +21116,7 @@ ${blocks}
|
|
|
20958
21116
|
</pre_flight_context>`;
|
|
20959
21117
|
}
|
|
20960
21118
|
function resolvePath(p) {
|
|
20961
|
-
return p.startsWith("~/") ?
|
|
21119
|
+
return p.startsWith("~/") ? resolve4(homedir2(), p.slice(2)) : resolve4(p);
|
|
20962
21120
|
}
|
|
20963
21121
|
function commandExists(cmd) {
|
|
20964
21122
|
const result = spawnSync4("which", [cmd], { stdio: "ignore" });
|
|
@@ -20966,7 +21124,7 @@ function commandExists(cmd) {
|
|
|
20966
21124
|
}
|
|
20967
21125
|
function validateShebang(filePath, errors5) {
|
|
20968
21126
|
try {
|
|
20969
|
-
const head =
|
|
21127
|
+
const head = readFileSync4(filePath, "utf-8").slice(0, 120);
|
|
20970
21128
|
if (!head.startsWith("#!"))
|
|
20971
21129
|
return;
|
|
20972
21130
|
const shebang = head.split(`
|
|
@@ -20996,7 +21154,7 @@ function validateBeforeRun(spec, permissionLevel) {
|
|
|
20996
21154
|
const warnings = [];
|
|
20997
21155
|
for (const p of spec.specialist.skills?.paths ?? []) {
|
|
20998
21156
|
const abs = resolvePath(p);
|
|
20999
|
-
if (!
|
|
21157
|
+
if (!existsSync6(abs))
|
|
21000
21158
|
warnings.push(` \u26A0 skills.paths: file not found: ${p}`);
|
|
21001
21159
|
}
|
|
21002
21160
|
for (const script of spec.specialist.skills?.scripts ?? []) {
|
|
@@ -21006,7 +21164,7 @@ function validateBeforeRun(spec, permissionLevel) {
|
|
|
21006
21164
|
const isFilePath = run.startsWith("./") || run.startsWith("../") || run.startsWith("/") || run.startsWith("~/");
|
|
21007
21165
|
if (isFilePath) {
|
|
21008
21166
|
const abs = resolvePath(run);
|
|
21009
|
-
if (!
|
|
21167
|
+
if (!existsSync6(abs)) {
|
|
21010
21168
|
errors5.push(` \u2717 skills.scripts: script not found: ${run}`);
|
|
21011
21169
|
} else {
|
|
21012
21170
|
validateShebang(abs, errors5);
|
|
@@ -21041,7 +21199,7 @@ ${errors5.join(`
|
|
|
21041
21199
|
}
|
|
21042
21200
|
}
|
|
21043
21201
|
function sleep(ms) {
|
|
21044
|
-
return new Promise((
|
|
21202
|
+
return new Promise((resolve5) => setTimeout(resolve5, ms));
|
|
21045
21203
|
}
|
|
21046
21204
|
function getRetryDelayMs(attemptNumber) {
|
|
21047
21205
|
const baseDelay = RETRY_BASE_DELAY_MS * 2 ** Math.max(0, attemptNumber - 1);
|
|
@@ -21120,37 +21278,117 @@ function buildOutputContractInstruction(responseFormat, outputType, outputSchema
|
|
|
21120
21278
|
${lines.join(`
|
|
21121
21279
|
`)}`;
|
|
21122
21280
|
}
|
|
21123
|
-
function
|
|
21124
|
-
|
|
21125
|
-
|
|
21126
|
-
encoding: "utf8",
|
|
21127
|
-
timeout: 1e4,
|
|
21128
|
-
stdio: ["ignore", "pipe", "pipe"]
|
|
21129
|
-
}).trim();
|
|
21130
|
-
const files = execSync2("git diff --name-only", {
|
|
21131
|
-
cwd,
|
|
21132
|
-
encoding: "utf8",
|
|
21133
|
-
timeout: 1e4,
|
|
21134
|
-
stdio: ["ignore", "pipe", "pipe"]
|
|
21135
|
-
}).split(`
|
|
21136
|
-
`).map((line) => line.trim()).filter(Boolean).slice(0, maxFiles);
|
|
21137
|
-
if (files.length === 0) {
|
|
21138
|
-
throw new Error("Reviewer startup blocked: git diff is empty. No patch context to review.");
|
|
21139
|
-
}
|
|
21140
|
-
const hunks = files.map((file) => {
|
|
21141
|
-
const diff = execSync2(`git diff -- ${shellQuote(file)}`, {
|
|
21281
|
+
function readCommandOutput(cwd, command) {
|
|
21282
|
+
try {
|
|
21283
|
+
return execSync2(command, {
|
|
21142
21284
|
cwd,
|
|
21143
21285
|
encoding: "utf8",
|
|
21144
21286
|
timeout: 1e4,
|
|
21145
21287
|
stdio: ["ignore", "pipe", "pipe"]
|
|
21146
21288
|
}).trim();
|
|
21147
|
-
|
|
21289
|
+
} catch {
|
|
21290
|
+
return "";
|
|
21291
|
+
}
|
|
21292
|
+
}
|
|
21293
|
+
function resolveDefaultBranch(cwd) {
|
|
21294
|
+
const headRef = readCommandOutput(cwd, "git symbolic-ref refs/remotes/origin/HEAD");
|
|
21295
|
+
if (headRef) {
|
|
21296
|
+
return headRef.split("/").pop() ?? "main";
|
|
21297
|
+
}
|
|
21298
|
+
const remoteHead = readCommandOutput(cwd, "git remote show origin");
|
|
21299
|
+
const match = remoteHead.match(/HEAD branch:\s*(.+)/);
|
|
21300
|
+
return match?.[1]?.trim() || "main";
|
|
21301
|
+
}
|
|
21302
|
+
function readMergeBase(cwd) {
|
|
21303
|
+
const baseBranch = resolveDefaultBranch(cwd);
|
|
21304
|
+
return readCommandOutput(cwd, `git merge-base ${shellQuote(baseBranch)} HEAD`);
|
|
21305
|
+
}
|
|
21306
|
+
function extractInjectedFileDiff(hunks, file) {
|
|
21307
|
+
const marker = `### ${file}
|
|
21308
|
+
`;
|
|
21309
|
+
const start = hunks.indexOf(marker);
|
|
21310
|
+
if (start < 0)
|
|
21311
|
+
return "";
|
|
21312
|
+
const rest = hunks.slice(start + marker.length);
|
|
21313
|
+
const nextHeader = rest.indexOf(`
|
|
21314
|
+
|
|
21315
|
+
### `);
|
|
21316
|
+
return (nextHeader >= 0 ? rest.slice(0, nextHeader) : rest).trim();
|
|
21317
|
+
}
|
|
21318
|
+
function parseInjectedReviewerDiffContext(variables) {
|
|
21319
|
+
const source = variables?.reviewer_diff_source?.trim();
|
|
21320
|
+
const stat2 = variables?.reviewer_diff_stat?.trim();
|
|
21321
|
+
const filesRaw = variables?.reviewer_diff_files?.trim();
|
|
21322
|
+
const hunks = variables?.reviewer_diff_hunks?.trim();
|
|
21323
|
+
if (!source || !filesRaw || !hunks)
|
|
21324
|
+
return null;
|
|
21325
|
+
const files = filesRaw.split(`
|
|
21326
|
+
`).map((line) => line.trim()).filter(Boolean);
|
|
21327
|
+
if (files.length === 0)
|
|
21328
|
+
return null;
|
|
21329
|
+
return {
|
|
21330
|
+
source,
|
|
21331
|
+
stat: stat2 || "(no stat)",
|
|
21332
|
+
files,
|
|
21333
|
+
hunks
|
|
21334
|
+
};
|
|
21335
|
+
}
|
|
21336
|
+
function getPatchSources(cwd, variables) {
|
|
21337
|
+
const mergeBase = readMergeBase(cwd);
|
|
21338
|
+
const injectedContext = parseInjectedReviewerDiffContext(variables);
|
|
21339
|
+
return [
|
|
21340
|
+
...injectedContext ? [{
|
|
21341
|
+
source: injectedContext.source,
|
|
21342
|
+
stat: injectedContext.stat,
|
|
21343
|
+
files: injectedContext.files,
|
|
21344
|
+
diffForFile: (file) => extractInjectedFileDiff(injectedContext.hunks, file)
|
|
21345
|
+
}] : [],
|
|
21346
|
+
{
|
|
21347
|
+
source: "unstaged diff",
|
|
21348
|
+
stat: readCommandOutput(cwd, "git diff --stat"),
|
|
21349
|
+
files: readCommandOutput(cwd, "git diff --name-only").split(`
|
|
21350
|
+
`).map((line) => line.trim()).filter(Boolean),
|
|
21351
|
+
diffForFile: (file) => readCommandOutput(cwd, `git diff -- ${shellQuote(file)}`)
|
|
21352
|
+
},
|
|
21353
|
+
{
|
|
21354
|
+
source: "staged diff",
|
|
21355
|
+
stat: readCommandOutput(cwd, "git diff --cached --stat"),
|
|
21356
|
+
files: readCommandOutput(cwd, "git diff --cached --name-only").split(`
|
|
21357
|
+
`).map((line) => line.trim()).filter(Boolean),
|
|
21358
|
+
diffForFile: (file) => readCommandOutput(cwd, `git diff --cached -- ${shellQuote(file)}`)
|
|
21359
|
+
},
|
|
21360
|
+
{
|
|
21361
|
+
source: "branch-vs-base diff",
|
|
21362
|
+
stat: mergeBase ? readCommandOutput(cwd, `git diff --stat ${shellQuote(mergeBase)}..HEAD`) : "",
|
|
21363
|
+
files: mergeBase ? readCommandOutput(cwd, `git diff --name-only ${shellQuote(mergeBase)}..HEAD`).split(`
|
|
21364
|
+
`).map((line) => line.trim()).filter(Boolean) : [],
|
|
21365
|
+
diffForFile: (file) => mergeBase ? readCommandOutput(cwd, `git diff ${shellQuote(mergeBase)}..HEAD -- ${shellQuote(file)}`) : ""
|
|
21366
|
+
}
|
|
21367
|
+
];
|
|
21368
|
+
}
|
|
21369
|
+
function buildReviewerDiffContext(cwd, variables, maxFiles = 20) {
|
|
21370
|
+
for (const source of getPatchSources(cwd, variables)) {
|
|
21371
|
+
const files = source.files.slice(0, maxFiles);
|
|
21372
|
+
if (files.length === 0)
|
|
21373
|
+
continue;
|
|
21374
|
+
const hunks = files.map((file) => {
|
|
21375
|
+
const diff = source.diffForFile(file);
|
|
21376
|
+
return diff ? `### ${file}
|
|
21148
21377
|
${diff}` : `### ${file}
|
|
21149
21378
|
(no hunks)`;
|
|
21150
|
-
|
|
21379
|
+
}).join(`
|
|
21151
21380
|
|
|
21152
21381
|
`);
|
|
21153
|
-
|
|
21382
|
+
if (hunks.trim()) {
|
|
21383
|
+
return {
|
|
21384
|
+
source: source.source,
|
|
21385
|
+
stat: source.stat,
|
|
21386
|
+
files,
|
|
21387
|
+
hunks
|
|
21388
|
+
};
|
|
21389
|
+
}
|
|
21390
|
+
}
|
|
21391
|
+
throw new Error("Reviewer startup blocked: no patch context found in injected diff, unstaged diff, staged diff, or branch-vs-base diff.");
|
|
21154
21392
|
}
|
|
21155
21393
|
function buildReviewerDiffInstruction(context) {
|
|
21156
21394
|
return `
|
|
@@ -21160,6 +21398,9 @@ function buildReviewerDiffInstruction(context) {
|
|
|
21160
21398
|
Review only patch below. Ignore unrelated files, repo-wide exploration, and filesystem hunting.
|
|
21161
21399
|
If patch context is empty, stop and fail fast.
|
|
21162
21400
|
|
|
21401
|
+
Patch source:
|
|
21402
|
+
${context.source}
|
|
21403
|
+
|
|
21163
21404
|
Diff stat:
|
|
21164
21405
|
${context.stat || "(no stat)"}
|
|
21165
21406
|
|
|
@@ -21332,7 +21573,7 @@ ${buildBeadBoundaryInstruction(runCwd, options.worktreeBoundary)}`.trim();
|
|
|
21332
21573
|
execution.extensions?.gitnexus === false ? "pi-gitnexus" : undefined
|
|
21333
21574
|
].filter((value) => Boolean(value));
|
|
21334
21575
|
validateBeforeRun(spec, permissionLevel);
|
|
21335
|
-
const runCwd =
|
|
21576
|
+
const runCwd = resolve4(options.workingDirectory ?? process.cwd());
|
|
21336
21577
|
const preScripts = spec.specialist.skills?.scripts?.filter((s) => s.phase === "pre") ?? [];
|
|
21337
21578
|
const preResults = preScripts.map((s) => runScript(s.run ?? s.path, runCwd)).filter((_, i) => preScripts[i].inject_output);
|
|
21338
21579
|
const preScriptOutput = formatScriptOutput(preResults);
|
|
@@ -21357,7 +21598,23 @@ ${buildBeadBoundaryInstruction(runCwd, options.worktreeBoundary)}`.trim();
|
|
|
21357
21598
|
...beadVariables
|
|
21358
21599
|
};
|
|
21359
21600
|
const taskTemplate = options.inputBeadId ? renderTemplate(prompt.task_template, beadTemplateVariables) : prompt.task_template;
|
|
21360
|
-
|
|
21601
|
+
let renderedTask = renderTemplate(taskTemplate, variables);
|
|
21602
|
+
let mandatoryRulesBlock = "";
|
|
21603
|
+
try {
|
|
21604
|
+
mandatoryRulesBlock = buildMandatoryRulesBlock({ cwd: runCwd });
|
|
21605
|
+
if (mandatoryRulesBlock.trim()) {
|
|
21606
|
+
const rulesTokens = Math.ceil(mandatoryRulesBlock.length / 4);
|
|
21607
|
+
if (rulesTokens <= 2000) {
|
|
21608
|
+
renderedTask = `${renderedTask}
|
|
21609
|
+
|
|
21610
|
+
${mandatoryRulesBlock}`;
|
|
21611
|
+
} else {
|
|
21612
|
+
console.warn(`[specialist runner] Skipping MANDATORY_RULES injection: rules block too large (${rulesTokens} tokens, limit 2000)`);
|
|
21613
|
+
}
|
|
21614
|
+
}
|
|
21615
|
+
} catch (error2) {
|
|
21616
|
+
console.warn(`[specialist runner] Skipping MANDATORY_RULES injection: ${String(error2)}`);
|
|
21617
|
+
}
|
|
21361
21618
|
const promptHash = createHash2("sha256").update(renderedTask).digest("hex").slice(0, 16);
|
|
21362
21619
|
await hooks.emit("post_render", invocationId, metadata.name, metadata.version, {
|
|
21363
21620
|
prompt_hash: promptHash,
|
|
@@ -21398,8 +21655,8 @@ Respond like smart caveman. Cut all filler, keep technical substance.
|
|
|
21398
21655
|
---
|
|
21399
21656
|
`;
|
|
21400
21657
|
try {
|
|
21401
|
-
const gitnexusMetaPath =
|
|
21402
|
-
if (
|
|
21658
|
+
const gitnexusMetaPath = resolve4(runCwd, ".gitnexus/meta.json");
|
|
21659
|
+
if (existsSync6(gitnexusMetaPath)) {
|
|
21403
21660
|
agentsMd += `
|
|
21404
21661
|
|
|
21405
21662
|
---
|
|
@@ -21452,8 +21709,8 @@ ${memoryInjection.block}
|
|
|
21452
21709
|
memoryTokens = memoryInjection.estimatedTokens;
|
|
21453
21710
|
}
|
|
21454
21711
|
try {
|
|
21455
|
-
const gitnexusMetaPath =
|
|
21456
|
-
if (
|
|
21712
|
+
const gitnexusMetaPath = resolve4(runCwd, ".gitnexus/meta.json");
|
|
21713
|
+
if (existsSync6(gitnexusMetaPath)) {
|
|
21457
21714
|
const symbolCandidates = (beadForMemory.title.match(/\b(?:[A-Z][a-z0-9]+(?:[A-Z][a-z0-9]+)+|[a-z]+[A-Z][A-Za-z0-9]*)\b/g) ?? []).slice(0, 2);
|
|
21458
21715
|
const summaries = [];
|
|
21459
21716
|
for (const symbol of symbolCandidates) {
|
|
@@ -21503,8 +21760,37 @@ ${summaries.join(`
|
|
|
21503
21760
|
}
|
|
21504
21761
|
})
|
|
21505
21762
|
});
|
|
21763
|
+
const mandatoryRulesInjection = (() => {
|
|
21764
|
+
if (!mandatoryRulesBlock.trim())
|
|
21765
|
+
return null;
|
|
21766
|
+
const setsLoaded = mandatoryRulesBlock.match(/^###\s+(.+)$/gm)?.map((line) => line.replace(/^###\s+/, "").trim()) ?? [];
|
|
21767
|
+
const ruleCount = (mandatoryRulesBlock.match(/^- \[[^\]]+\]/gm) ?? []).length;
|
|
21768
|
+
const payload = {
|
|
21769
|
+
source: "mandatory_rules_injection",
|
|
21770
|
+
data: {
|
|
21771
|
+
sets_loaded: setsLoaded,
|
|
21772
|
+
rules_count: ruleCount,
|
|
21773
|
+
inline_rules_count: ruleCount,
|
|
21774
|
+
globals_disabled: false,
|
|
21775
|
+
token_estimate: estimateInjectedTokens(mandatoryRulesBlock)
|
|
21776
|
+
}
|
|
21777
|
+
};
|
|
21778
|
+
return {
|
|
21779
|
+
payload,
|
|
21780
|
+
summary: JSON.stringify({
|
|
21781
|
+
kind: "meta",
|
|
21782
|
+
...payload
|
|
21783
|
+
})
|
|
21784
|
+
};
|
|
21785
|
+
})();
|
|
21786
|
+
if (mandatoryRulesInjection) {
|
|
21787
|
+
onEvent?.("meta", {
|
|
21788
|
+
...mandatoryRulesInjection.payload,
|
|
21789
|
+
summary: mandatoryRulesInjection.summary
|
|
21790
|
+
});
|
|
21791
|
+
}
|
|
21506
21792
|
if (metadata.name === "reviewer" && options.reusedFromJobId) {
|
|
21507
|
-
const reviewerDiffContext = buildReviewerDiffContext(runCwd);
|
|
21793
|
+
const reviewerDiffContext = buildReviewerDiffContext(runCwd, options.variables);
|
|
21508
21794
|
agentsMd += buildReviewerDiffInstruction(reviewerDiffContext);
|
|
21509
21795
|
}
|
|
21510
21796
|
const responseFormat = execution.response_format ?? "text";
|
|
@@ -21723,6 +22009,7 @@ var PERMISSION_GATED_TOOLS, RETRY_BASE_DELAY_MS = 1000, RETRY_MAX_JITTER = 0.2,
|
|
|
21723
22009
|
var init_runner = __esm(() => {
|
|
21724
22010
|
init_session();
|
|
21725
22011
|
init_circuitBreaker();
|
|
22012
|
+
init_mandatory_rules();
|
|
21726
22013
|
init_beads();
|
|
21727
22014
|
init_memory_retrieval();
|
|
21728
22015
|
PERMISSION_GATED_TOOLS = {
|
|
@@ -21964,16 +22251,16 @@ __export(exports_version, {
|
|
|
21964
22251
|
import { createRequire } from "module";
|
|
21965
22252
|
import { fileURLToPath } from "url";
|
|
21966
22253
|
import { dirname as dirname4, join as join7 } from "path";
|
|
21967
|
-
import { existsSync as
|
|
22254
|
+
import { existsSync as existsSync7 } from "fs";
|
|
21968
22255
|
async function run2() {
|
|
21969
22256
|
const req = createRequire(import.meta.url);
|
|
21970
22257
|
const here = dirname4(fileURLToPath(import.meta.url));
|
|
21971
22258
|
const bundlePkgPath = join7(here, "..", "package.json");
|
|
21972
22259
|
const sourcePkgPath = join7(here, "..", "..", "package.json");
|
|
21973
22260
|
let pkg;
|
|
21974
|
-
if (
|
|
22261
|
+
if (existsSync7(bundlePkgPath)) {
|
|
21975
22262
|
pkg = req("../package.json");
|
|
21976
|
-
} else if (
|
|
22263
|
+
} else if (existsSync7(sourcePkgPath)) {
|
|
21977
22264
|
pkg = req("../../package.json");
|
|
21978
22265
|
} else {
|
|
21979
22266
|
console.error("Cannot find package.json");
|
|
@@ -22121,6 +22408,17 @@ function mapCallbackEventToTimelineEvent(callbackEvent, context) {
|
|
|
22121
22408
|
backend: "injected",
|
|
22122
22409
|
...context.memoryInjection ? { memory_injection: context.memoryInjection } : {}
|
|
22123
22410
|
};
|
|
22411
|
+
case "meta": {
|
|
22412
|
+
const payload = context.metaPayload;
|
|
22413
|
+
return {
|
|
22414
|
+
t,
|
|
22415
|
+
type: TIMELINE_EVENT_TYPES.META,
|
|
22416
|
+
model: payload?.model ?? "meta",
|
|
22417
|
+
backend: payload?.backend ?? "injected",
|
|
22418
|
+
...payload?.source ? { source: payload.source } : {},
|
|
22419
|
+
...payload?.data ? { data: payload.data } : {}
|
|
22420
|
+
};
|
|
22421
|
+
}
|
|
22124
22422
|
case "text":
|
|
22125
22423
|
return {
|
|
22126
22424
|
t,
|
|
@@ -22400,7 +22698,7 @@ var init_epic_lifecycle = __esm(() => {
|
|
|
22400
22698
|
});
|
|
22401
22699
|
|
|
22402
22700
|
// src/specialist/process-liveness.ts
|
|
22403
|
-
import { readFileSync as
|
|
22701
|
+
import { readFileSync as readFileSync5 } from "fs";
|
|
22404
22702
|
function isValidPid(pid) {
|
|
22405
22703
|
return Number.isInteger(pid) && pid > 0;
|
|
22406
22704
|
}
|
|
@@ -22414,7 +22712,7 @@ function isAliveBySignal(pid) {
|
|
|
22414
22712
|
}
|
|
22415
22713
|
function parseBootTimeMs() {
|
|
22416
22714
|
try {
|
|
22417
|
-
const procStat =
|
|
22715
|
+
const procStat = readFileSync5("/proc/stat", "utf-8");
|
|
22418
22716
|
const bootLine = procStat.split(`
|
|
22419
22717
|
`).find((line) => line.startsWith("btime "));
|
|
22420
22718
|
if (!bootLine)
|
|
@@ -22429,7 +22727,7 @@ function parseBootTimeMs() {
|
|
|
22429
22727
|
}
|
|
22430
22728
|
function parseProcessStartTimeMs(pid) {
|
|
22431
22729
|
try {
|
|
22432
|
-
const statRaw =
|
|
22730
|
+
const statRaw = readFileSync5(`/proc/${pid}/stat`, "utf-8");
|
|
22433
22731
|
const closeParenIndex = statRaw.lastIndexOf(")");
|
|
22434
22732
|
if (closeParenIndex < 0)
|
|
22435
22733
|
return;
|
|
@@ -22791,12 +23089,12 @@ var init_tmux_utils = () => {};
|
|
|
22791
23089
|
import {
|
|
22792
23090
|
appendFileSync,
|
|
22793
23091
|
closeSync,
|
|
22794
|
-
existsSync as
|
|
23092
|
+
existsSync as existsSync8,
|
|
22795
23093
|
fsyncSync,
|
|
22796
23094
|
mkdirSync as mkdirSync3,
|
|
22797
23095
|
openSync,
|
|
22798
23096
|
readdirSync,
|
|
22799
|
-
readFileSync as
|
|
23097
|
+
readFileSync as readFileSync6,
|
|
22800
23098
|
renameSync,
|
|
22801
23099
|
rmSync,
|
|
22802
23100
|
statSync as statSync2,
|
|
@@ -23136,8 +23434,8 @@ class Supervisor {
|
|
|
23136
23434
|
} finally {
|
|
23137
23435
|
this.pendingSqliteOperations -= 1;
|
|
23138
23436
|
if (this.pendingSqliteOperations === 0) {
|
|
23139
|
-
for (const
|
|
23140
|
-
|
|
23437
|
+
for (const resolve5 of this.pendingSqliteDrainResolvers) {
|
|
23438
|
+
resolve5();
|
|
23141
23439
|
}
|
|
23142
23440
|
this.pendingSqliteDrainResolvers.clear();
|
|
23143
23441
|
}
|
|
@@ -23146,8 +23444,8 @@ class Supervisor {
|
|
|
23146
23444
|
async waitForPendingSqliteOperations() {
|
|
23147
23445
|
if (this.pendingSqliteOperations === 0)
|
|
23148
23446
|
return;
|
|
23149
|
-
await new Promise((
|
|
23150
|
-
this.pendingSqliteDrainResolvers.add(
|
|
23447
|
+
await new Promise((resolve5) => {
|
|
23448
|
+
this.pendingSqliteDrainResolvers.add(resolve5);
|
|
23151
23449
|
});
|
|
23152
23450
|
}
|
|
23153
23451
|
async dispose() {
|
|
@@ -23207,10 +23505,10 @@ class Supervisor {
|
|
|
23207
23505
|
}
|
|
23208
23506
|
}
|
|
23209
23507
|
const path = this.statusPath(id);
|
|
23210
|
-
if (!
|
|
23508
|
+
if (!existsSync8(path))
|
|
23211
23509
|
return null;
|
|
23212
23510
|
try {
|
|
23213
|
-
const status = JSON.parse(
|
|
23511
|
+
const status = JSON.parse(readFileSync6(path, "utf-8"));
|
|
23214
23512
|
return this.withComputedLiveness(status);
|
|
23215
23513
|
} catch {
|
|
23216
23514
|
return null;
|
|
@@ -23244,15 +23542,15 @@ class Supervisor {
|
|
|
23244
23542
|
console.warn(`[supervisor] SQLite listStatuses failed, falling back to file state: ${String(error2)}`);
|
|
23245
23543
|
}
|
|
23246
23544
|
}
|
|
23247
|
-
if (!
|
|
23545
|
+
if (!existsSync8(this.resolvedJobsDir))
|
|
23248
23546
|
return [];
|
|
23249
23547
|
const jobs = [];
|
|
23250
23548
|
for (const entry of readdirSync(this.resolvedJobsDir)) {
|
|
23251
23549
|
const path = join8(this.resolvedJobsDir, entry, "status.json");
|
|
23252
|
-
if (!
|
|
23550
|
+
if (!existsSync8(path))
|
|
23253
23551
|
continue;
|
|
23254
23552
|
try {
|
|
23255
|
-
const status = JSON.parse(
|
|
23553
|
+
const status = JSON.parse(readFileSync6(path, "utf-8"));
|
|
23256
23554
|
jobs.push(this.withComputedLiveness(status));
|
|
23257
23555
|
} catch {}
|
|
23258
23556
|
}
|
|
@@ -23326,7 +23624,7 @@ class Supervisor {
|
|
|
23326
23624
|
}
|
|
23327
23625
|
}
|
|
23328
23626
|
gc() {
|
|
23329
|
-
if (!
|
|
23627
|
+
if (!existsSync8(this.resolvedJobsDir))
|
|
23330
23628
|
return;
|
|
23331
23629
|
const cutoff = Date.now() - JOB_TTL_DAYS * 86400000;
|
|
23332
23630
|
for (const entry of readdirSync(this.resolvedJobsDir)) {
|
|
@@ -23341,7 +23639,7 @@ class Supervisor {
|
|
|
23341
23639
|
}
|
|
23342
23640
|
}
|
|
23343
23641
|
crashRecovery() {
|
|
23344
|
-
if (!
|
|
23642
|
+
if (!existsSync8(this.resolvedJobsDir))
|
|
23345
23643
|
return;
|
|
23346
23644
|
const thresholds = {
|
|
23347
23645
|
...STALL_DETECTION_DEFAULTS,
|
|
@@ -23350,10 +23648,10 @@ class Supervisor {
|
|
|
23350
23648
|
const now = Date.now();
|
|
23351
23649
|
for (const entry of readdirSync(this.resolvedJobsDir)) {
|
|
23352
23650
|
const statusPath = join8(this.resolvedJobsDir, entry, "status.json");
|
|
23353
|
-
if (!
|
|
23651
|
+
if (!existsSync8(statusPath))
|
|
23354
23652
|
continue;
|
|
23355
23653
|
try {
|
|
23356
|
-
const s = JSON.parse(
|
|
23654
|
+
const s = JSON.parse(readFileSync6(statusPath, "utf-8"));
|
|
23357
23655
|
if (s.status === "running" || s.status === "starting") {
|
|
23358
23656
|
if (!s.pid)
|
|
23359
23657
|
continue;
|
|
@@ -23574,8 +23872,8 @@ class Supervisor {
|
|
|
23574
23872
|
let keepAliveExitResolved = false;
|
|
23575
23873
|
let isReadOnlySpecialist = false;
|
|
23576
23874
|
let resolveKeepAliveExit;
|
|
23577
|
-
const keepAliveExitPromise = new Promise((
|
|
23578
|
-
resolveKeepAliveExit =
|
|
23875
|
+
const keepAliveExitPromise = new Promise((resolve5) => {
|
|
23876
|
+
resolveKeepAliveExit = resolve5;
|
|
23579
23877
|
});
|
|
23580
23878
|
const finishKeepAlive = (exit) => {
|
|
23581
23879
|
if (keepAliveExitResolved)
|
|
@@ -23817,29 +24115,35 @@ ${appendError}
|
|
|
23817
24115
|
}
|
|
23818
24116
|
const toolCallId = details?.toolCallId;
|
|
23819
24117
|
const toolState = toolCallId ? activeToolCalls.get(toolCallId) : latestUncorrelatedToolState;
|
|
23820
|
-
const
|
|
23821
|
-
if (eventType !== "memory_injection" || !details?.summary)
|
|
24118
|
+
const parsedMeta = (() => {
|
|
24119
|
+
if (eventType !== "memory_injection" && eventType !== "meta" || !details?.summary)
|
|
23822
24120
|
return;
|
|
23823
24121
|
try {
|
|
23824
|
-
|
|
23825
|
-
const injection = parsed.memory_injection;
|
|
23826
|
-
if (!injection)
|
|
23827
|
-
return;
|
|
23828
|
-
return {
|
|
23829
|
-
static_tokens: injection.static_tokens ?? 0,
|
|
23830
|
-
memory_tokens: injection.memory_tokens ?? 0,
|
|
23831
|
-
gitnexus_tokens: injection.gitnexus_tokens ?? 0,
|
|
23832
|
-
total_tokens: injection.total_tokens ?? 0
|
|
23833
|
-
};
|
|
24122
|
+
return JSON.parse(details.summary);
|
|
23834
24123
|
} catch {
|
|
23835
24124
|
return;
|
|
23836
24125
|
}
|
|
23837
24126
|
})();
|
|
23838
|
-
|
|
24127
|
+
const metaDetails = details;
|
|
24128
|
+
const memoryInjection = parsedMeta?.memory_injection ? {
|
|
24129
|
+
static_tokens: parsedMeta.memory_injection.static_tokens ?? 0,
|
|
24130
|
+
memory_tokens: parsedMeta.memory_injection.memory_tokens ?? 0,
|
|
24131
|
+
gitnexus_tokens: parsedMeta.memory_injection.gitnexus_tokens ?? 0,
|
|
24132
|
+
total_tokens: parsedMeta.memory_injection.total_tokens ?? 0
|
|
24133
|
+
} : undefined;
|
|
24134
|
+
const mandatoryRulesInjection = parsedMeta?.source === "mandatory_rules_injection" && parsedMeta.data ? {
|
|
24135
|
+
sets_loaded: parsedMeta.data.sets_loaded ?? [],
|
|
24136
|
+
rules_count: parsedMeta.data.rules_count ?? 0,
|
|
24137
|
+
inline_rules_count: parsedMeta.data.inline_rules_count ?? 0,
|
|
24138
|
+
globals_disabled: parsedMeta.data.globals_disabled ?? false,
|
|
24139
|
+
token_estimate: parsedMeta.data.token_estimate ?? 0
|
|
24140
|
+
} : undefined;
|
|
24141
|
+
if (memoryInjection || mandatoryRulesInjection) {
|
|
23839
24142
|
setStatus({
|
|
23840
24143
|
startup_context: {
|
|
23841
24144
|
...statusSnapshot.startup_context ?? {},
|
|
23842
|
-
memory_injection: memoryInjection
|
|
24145
|
+
...memoryInjection ? { memory_injection: memoryInjection } : {},
|
|
24146
|
+
...mandatoryRulesInjection ? { mandatory_rules_injection: mandatoryRulesInjection } : {}
|
|
23843
24147
|
}
|
|
23844
24148
|
});
|
|
23845
24149
|
}
|
|
@@ -23871,7 +24175,13 @@ ${appendError}
|
|
|
23871
24175
|
extension: details?.extension,
|
|
23872
24176
|
errorMessage: details?.errorMessage
|
|
23873
24177
|
},
|
|
23874
|
-
memoryInjection
|
|
24178
|
+
memoryInjection,
|
|
24179
|
+
metaPayload: eventType === "meta" ? {
|
|
24180
|
+
model: details?.model,
|
|
24181
|
+
backend: metaDetails?.backend,
|
|
24182
|
+
source: metaDetails?.source,
|
|
24183
|
+
data: metaDetails?.data
|
|
24184
|
+
} : undefined
|
|
23875
24185
|
});
|
|
23876
24186
|
if (timelineEvent) {
|
|
23877
24187
|
appendTimelineEvent(timelineEvent);
|
|
@@ -23956,7 +24266,7 @@ ${appendError}
|
|
|
23956
24266
|
setStatus({ bead_id: beadId });
|
|
23957
24267
|
}, (fn) => {
|
|
23958
24268
|
steerFn = fn;
|
|
23959
|
-
if (!
|
|
24269
|
+
if (!existsSync8(fifoPath))
|
|
23960
24270
|
return;
|
|
23961
24271
|
fifoFd = openSync(fifoPath, "r+");
|
|
23962
24272
|
fifoReadStream = createReadStream("", { fd: fifoFd, autoClose: false });
|
|
@@ -24252,7 +24562,7 @@ ${appendError}
|
|
|
24252
24562
|
} catch {}
|
|
24253
24563
|
closeSync(eventsFd);
|
|
24254
24564
|
try {
|
|
24255
|
-
if (
|
|
24565
|
+
if (existsSync8(fifoPath))
|
|
24256
24566
|
rmSync(fifoPath);
|
|
24257
24567
|
} catch {}
|
|
24258
24568
|
if (statusSnapshot.tmux_session) {
|
|
@@ -24301,7 +24611,7 @@ __export(exports_list, {
|
|
|
24301
24611
|
ArgParseError: () => ArgParseError
|
|
24302
24612
|
});
|
|
24303
24613
|
import { spawnSync as spawnSync7 } from "child_process";
|
|
24304
|
-
import { existsSync as
|
|
24614
|
+
import { existsSync as existsSync9, readdirSync as readdirSync2, readFileSync as readFileSync7 } from "fs";
|
|
24305
24615
|
import { join as join9 } from "path";
|
|
24306
24616
|
import readline from "readline";
|
|
24307
24617
|
function permissionBadge(permission) {
|
|
@@ -24334,14 +24644,14 @@ function toLiveJob(status) {
|
|
|
24334
24644
|
}
|
|
24335
24645
|
function readJobStatus(statusPath) {
|
|
24336
24646
|
try {
|
|
24337
|
-
return JSON.parse(
|
|
24647
|
+
return JSON.parse(readFileSync7(statusPath, "utf-8"));
|
|
24338
24648
|
} catch {
|
|
24339
24649
|
return null;
|
|
24340
24650
|
}
|
|
24341
24651
|
}
|
|
24342
24652
|
function listLiveJobs(showDead) {
|
|
24343
24653
|
const jobsDir = join9(process.cwd(), ".specialists", "jobs");
|
|
24344
|
-
if (!
|
|
24654
|
+
if (!existsSync9(jobsDir))
|
|
24345
24655
|
return [];
|
|
24346
24656
|
const jobs = readdirSync2(jobsDir).map((entry) => toLiveJob(readJobStatus(join9(jobsDir, entry, "status.json")))).filter((job) => job !== null).filter((job) => showDead || !job.isDead).sort((a, b) => b.startedAtMs - a.startedAtMs);
|
|
24347
24657
|
return jobs;
|
|
@@ -24360,7 +24670,7 @@ function renderLiveSelector(jobs, selectedIndex) {
|
|
|
24360
24670
|
];
|
|
24361
24671
|
}
|
|
24362
24672
|
function selectLiveJob(jobs) {
|
|
24363
|
-
return new Promise((
|
|
24673
|
+
return new Promise((resolve5) => {
|
|
24364
24674
|
const input = process.stdin;
|
|
24365
24675
|
const output = process.stdout;
|
|
24366
24676
|
const wasRawMode = input.isTTY ? input.isRaw : false;
|
|
@@ -24376,7 +24686,7 @@ function selectLiveJob(jobs) {
|
|
|
24376
24686
|
readline.moveCursor(output, 0, -renderedLineCount);
|
|
24377
24687
|
readline.clearScreenDown(output);
|
|
24378
24688
|
}
|
|
24379
|
-
|
|
24689
|
+
resolve5(selected);
|
|
24380
24690
|
};
|
|
24381
24691
|
const render = () => {
|
|
24382
24692
|
if (renderedLineCount > 0) {
|
|
@@ -24903,9 +25213,9 @@ var exports_init = {};
|
|
|
24903
25213
|
__export(exports_init, {
|
|
24904
25214
|
run: () => run6
|
|
24905
25215
|
});
|
|
24906
|
-
import { copyFileSync, cpSync, existsSync as
|
|
25216
|
+
import { copyFileSync, cpSync, existsSync as existsSync10, lstatSync, mkdirSync as mkdirSync4, readdirSync as readdirSync3, readFileSync as readFileSync8, readlinkSync, renameSync as renameSync2, symlinkSync, unlinkSync, writeFileSync as writeFileSync4 } from "fs";
|
|
24907
25217
|
import { spawnSync as spawnSync9 } from "child_process";
|
|
24908
|
-
import { basename as basename3, dirname as dirname5, join as join10, relative, resolve as
|
|
25218
|
+
import { basename as basename3, dirname as dirname5, join as join10, relative, resolve as resolve5 } from "path";
|
|
24909
25219
|
import { fileURLToPath as fileURLToPath2 } from "url";
|
|
24910
25220
|
function ok(msg) {
|
|
24911
25221
|
console.log(` ${green4("\u2713")} ${msg}`);
|
|
@@ -24920,7 +25230,7 @@ function isInstalled(bin) {
|
|
|
24920
25230
|
return spawnSync9("which", [bin], { encoding: "utf8", timeout: 2000 }).status === 0;
|
|
24921
25231
|
}
|
|
24922
25232
|
function assertXtrmPrerequisites(cwd) {
|
|
24923
|
-
const hasXtrmDir =
|
|
25233
|
+
const hasXtrmDir = existsSync10(join10(cwd, ".xtrm"));
|
|
24924
25234
|
const hasXtCli = isInstalled("xt");
|
|
24925
25235
|
if (hasXtrmDir && hasXtCli)
|
|
24926
25236
|
return;
|
|
@@ -24942,10 +25252,10 @@ function warnMissingOptionalPrerequisites() {
|
|
|
24942
25252
|
}
|
|
24943
25253
|
}
|
|
24944
25254
|
function loadJson(path, fallback) {
|
|
24945
|
-
if (!
|
|
25255
|
+
if (!existsSync10(path))
|
|
24946
25256
|
return structuredClone(fallback);
|
|
24947
25257
|
try {
|
|
24948
|
-
return JSON.parse(
|
|
25258
|
+
return JSON.parse(readFileSync8(path, "utf-8"));
|
|
24949
25259
|
} catch {
|
|
24950
25260
|
return structuredClone(fallback);
|
|
24951
25261
|
}
|
|
@@ -24957,19 +25267,19 @@ function saveJson(path, value) {
|
|
|
24957
25267
|
function resolvePackagePath(relativePath) {
|
|
24958
25268
|
const configPath = `config/${relativePath}`;
|
|
24959
25269
|
let resolved = fileURLToPath2(new URL(`../${configPath}`, import.meta.url));
|
|
24960
|
-
if (
|
|
25270
|
+
if (existsSync10(resolved))
|
|
24961
25271
|
return resolved;
|
|
24962
25272
|
resolved = fileURLToPath2(new URL(`../../${configPath}`, import.meta.url));
|
|
24963
|
-
if (
|
|
25273
|
+
if (existsSync10(resolved))
|
|
24964
25274
|
return resolved;
|
|
24965
25275
|
return null;
|
|
24966
25276
|
}
|
|
24967
25277
|
function migrateLegacySpecialists(cwd, scope) {
|
|
24968
25278
|
const sourceDir = join10(cwd, ".specialists", scope, "specialists");
|
|
24969
|
-
if (!
|
|
25279
|
+
if (!existsSync10(sourceDir))
|
|
24970
25280
|
return;
|
|
24971
25281
|
const targetDir = join10(cwd, ".specialists", scope);
|
|
24972
|
-
if (!
|
|
25282
|
+
if (!existsSync10(targetDir)) {
|
|
24973
25283
|
mkdirSync4(targetDir, { recursive: true });
|
|
24974
25284
|
}
|
|
24975
25285
|
const files = readdirSync3(sourceDir).filter((f) => f.endsWith(".specialist.json") || f.endsWith(".specialist.json"));
|
|
@@ -24980,7 +25290,7 @@ function migrateLegacySpecialists(cwd, scope) {
|
|
|
24980
25290
|
for (const file of files) {
|
|
24981
25291
|
const src = join10(sourceDir, file);
|
|
24982
25292
|
const dest = join10(targetDir, file);
|
|
24983
|
-
if (
|
|
25293
|
+
if (existsSync10(dest)) {
|
|
24984
25294
|
skipped++;
|
|
24985
25295
|
continue;
|
|
24986
25296
|
}
|
|
@@ -25006,7 +25316,7 @@ function copyCanonicalSpecialists(cwd) {
|
|
|
25006
25316
|
skip("no specialist files found in package");
|
|
25007
25317
|
return;
|
|
25008
25318
|
}
|
|
25009
|
-
if (!
|
|
25319
|
+
if (!existsSync10(targetDir)) {
|
|
25010
25320
|
mkdirSync4(targetDir, { recursive: true });
|
|
25011
25321
|
}
|
|
25012
25322
|
let copied = 0;
|
|
@@ -25014,7 +25324,7 @@ function copyCanonicalSpecialists(cwd) {
|
|
|
25014
25324
|
for (const file of files) {
|
|
25015
25325
|
const src = join10(sourceDir, file);
|
|
25016
25326
|
const dest = join10(targetDir, file);
|
|
25017
|
-
if (
|
|
25327
|
+
if (existsSync10(dest)) {
|
|
25018
25328
|
copyFileSync(src, dest);
|
|
25019
25329
|
refreshed++;
|
|
25020
25330
|
} else {
|
|
@@ -25041,7 +25351,7 @@ function copyCanonicalNodeConfigs(cwd) {
|
|
|
25041
25351
|
skip("no node config files found in package");
|
|
25042
25352
|
return;
|
|
25043
25353
|
}
|
|
25044
|
-
if (!
|
|
25354
|
+
if (!existsSync10(targetDir)) {
|
|
25045
25355
|
mkdirSync4(targetDir, { recursive: true });
|
|
25046
25356
|
}
|
|
25047
25357
|
let copied = 0;
|
|
@@ -25049,7 +25359,7 @@ function copyCanonicalNodeConfigs(cwd) {
|
|
|
25049
25359
|
for (const file of files) {
|
|
25050
25360
|
const src = join10(sourceDir, file);
|
|
25051
25361
|
const dest = join10(targetDir, file);
|
|
25052
|
-
if (
|
|
25362
|
+
if (existsSync10(dest)) {
|
|
25053
25363
|
copyFileSync(src, dest);
|
|
25054
25364
|
refreshed++;
|
|
25055
25365
|
} else {
|
|
@@ -25088,7 +25398,7 @@ function installProjectHooks(cwd) {
|
|
|
25088
25398
|
for (const file of hooks) {
|
|
25089
25399
|
const src = join10(sourceDir, file);
|
|
25090
25400
|
const xtrmDest = join10(targetDir, file);
|
|
25091
|
-
if (
|
|
25401
|
+
if (existsSync10(xtrmDest)) {
|
|
25092
25402
|
skippedCopies++;
|
|
25093
25403
|
} else {
|
|
25094
25404
|
copyFileSync(src, xtrmDest);
|
|
@@ -25096,7 +25406,7 @@ function installProjectHooks(cwd) {
|
|
|
25096
25406
|
}
|
|
25097
25407
|
const claudeHookPath = join10(claudeHooksDir, file);
|
|
25098
25408
|
const relativeTarget = `../../.xtrm/hooks/specialists/${file}`;
|
|
25099
|
-
if (
|
|
25409
|
+
if (existsSync10(claudeHookPath)) {
|
|
25100
25410
|
const stats = lstatSync(claudeHookPath);
|
|
25101
25411
|
if (!stats.isSymbolicLink()) {
|
|
25102
25412
|
unlinkSync(claudeHookPath);
|
|
@@ -25104,7 +25414,7 @@ function installProjectHooks(cwd) {
|
|
|
25104
25414
|
rewiredLinks++;
|
|
25105
25415
|
continue;
|
|
25106
25416
|
}
|
|
25107
|
-
const currentTarget =
|
|
25417
|
+
const currentTarget = resolve5(dirname5(claudeHookPath), readlinkSync(claudeHookPath));
|
|
25108
25418
|
if (currentTarget !== xtrmDest) {
|
|
25109
25419
|
unlinkSync(claudeHookPath);
|
|
25110
25420
|
symlinkSync(relativeTarget, claudeHookPath);
|
|
@@ -25131,7 +25441,7 @@ function installProjectHooks(cwd) {
|
|
|
25131
25441
|
function ensureProjectHookWiring(cwd) {
|
|
25132
25442
|
const settingsPath = join10(cwd, ".claude", "settings.json");
|
|
25133
25443
|
const settingsDir = join10(cwd, ".claude");
|
|
25134
|
-
if (!
|
|
25444
|
+
if (!existsSync10(settingsDir)) {
|
|
25135
25445
|
mkdirSync4(settingsDir, { recursive: true });
|
|
25136
25446
|
}
|
|
25137
25447
|
const settings = loadJson(settingsPath, {});
|
|
@@ -25167,7 +25477,7 @@ function ensureProjectHookWiring(cwd) {
|
|
|
25167
25477
|
}
|
|
25168
25478
|
}
|
|
25169
25479
|
function ensureRootSymlink(rootPath, expectedTargetPath) {
|
|
25170
|
-
if (!
|
|
25480
|
+
if (!existsSync10(rootPath)) {
|
|
25171
25481
|
mkdirSync4(dirname5(rootPath), { recursive: true });
|
|
25172
25482
|
const relTarget = relative(dirname5(rootPath), expectedTargetPath);
|
|
25173
25483
|
symlinkSync(relTarget, rootPath);
|
|
@@ -25179,14 +25489,14 @@ function ensureRootSymlink(rootPath, expectedTargetPath) {
|
|
|
25179
25489
|
throw new Error(`${rootPath} must be a symlink to ${expectedTargetPath}. Aborting.`);
|
|
25180
25490
|
}
|
|
25181
25491
|
const linkTarget = readlinkSync(rootPath);
|
|
25182
|
-
const resolvedTarget =
|
|
25183
|
-
const resolvedExpected =
|
|
25492
|
+
const resolvedTarget = resolve5(dirname5(rootPath), linkTarget);
|
|
25493
|
+
const resolvedExpected = resolve5(expectedTargetPath);
|
|
25184
25494
|
if (resolvedTarget === resolvedExpected) {
|
|
25185
25495
|
return;
|
|
25186
25496
|
}
|
|
25187
25497
|
const legacyTargets = [
|
|
25188
|
-
|
|
25189
|
-
|
|
25498
|
+
resolve5(expectedTargetPath, "claude"),
|
|
25499
|
+
resolve5(expectedTargetPath, "pi")
|
|
25190
25500
|
];
|
|
25191
25501
|
if (legacyTargets.includes(resolvedTarget)) {
|
|
25192
25502
|
unlinkSync(rootPath);
|
|
@@ -25213,14 +25523,14 @@ function ensureActiveSkillSymlink(defaultSkillPath, activeLinkPath) {
|
|
|
25213
25523
|
if (!stats.isSymbolicLink()) {
|
|
25214
25524
|
throw new Error(`${activeLinkPath} already exists and is not a symlink.`);
|
|
25215
25525
|
}
|
|
25216
|
-
const currentTarget =
|
|
25217
|
-
if (currentTarget !==
|
|
25526
|
+
const currentTarget = resolve5(dirname5(activeLinkPath), readlinkSync(activeLinkPath));
|
|
25527
|
+
if (currentTarget !== resolve5(defaultSkillPath)) {
|
|
25218
25528
|
throw new Error(`${activeLinkPath} points to an unexpected target.`);
|
|
25219
25529
|
}
|
|
25220
25530
|
}
|
|
25221
25531
|
function installProjectSkills(cwd, syncSkills) {
|
|
25222
25532
|
const xtrmRoot = join10(cwd, ".xtrm");
|
|
25223
|
-
if (!
|
|
25533
|
+
if (!existsSync10(xtrmRoot)) {
|
|
25224
25534
|
throw new Error(".xtrm/ is missing. Install xtrm first, then run specialists init.");
|
|
25225
25535
|
}
|
|
25226
25536
|
const sourceDir = resolvePackagePath("skills");
|
|
@@ -25244,7 +25554,7 @@ function installProjectSkills(cwd, syncSkills) {
|
|
|
25244
25554
|
for (const skill of skills) {
|
|
25245
25555
|
const src = join10(sourceDir, skill);
|
|
25246
25556
|
const defaultSkillPath = join10(defaultRoot, skill);
|
|
25247
|
-
if (
|
|
25557
|
+
if (existsSync10(defaultSkillPath)) {
|
|
25248
25558
|
if (syncSkills) {
|
|
25249
25559
|
cpSync(src, defaultSkillPath, { recursive: true, force: true });
|
|
25250
25560
|
refreshed++;
|
|
@@ -25266,7 +25576,7 @@ function createSpecialistsDirs(cwd) {
|
|
|
25266
25576
|
const userDir = join10(cwd, ".specialists", "user");
|
|
25267
25577
|
let created = 0;
|
|
25268
25578
|
for (const dir of [defaultDir, userDir]) {
|
|
25269
|
-
if (!
|
|
25579
|
+
if (!existsSync10(dir)) {
|
|
25270
25580
|
mkdirSync4(dir, { recursive: true });
|
|
25271
25581
|
created++;
|
|
25272
25582
|
}
|
|
@@ -25282,7 +25592,7 @@ function createRuntimeDirs(cwd) {
|
|
|
25282
25592
|
];
|
|
25283
25593
|
let created = 0;
|
|
25284
25594
|
for (const dir of runtimeDirs) {
|
|
25285
|
-
if (!
|
|
25595
|
+
if (!existsSync10(dir)) {
|
|
25286
25596
|
mkdirSync4(dir, { recursive: true });
|
|
25287
25597
|
created++;
|
|
25288
25598
|
}
|
|
@@ -25306,7 +25616,7 @@ function ensureProjectMcp(cwd) {
|
|
|
25306
25616
|
}
|
|
25307
25617
|
function ensureGitignore(cwd) {
|
|
25308
25618
|
const gitignorePath = join10(cwd, ".gitignore");
|
|
25309
|
-
const existing =
|
|
25619
|
+
const existing = existsSync10(gitignorePath) ? readFileSync8(gitignorePath, "utf-8") : "";
|
|
25310
25620
|
let added = 0;
|
|
25311
25621
|
const lines = existing.split(`
|
|
25312
25622
|
`);
|
|
@@ -25331,7 +25641,7 @@ function ensureObservabilityDb(cwd) {
|
|
|
25331
25641
|
skip("observability DB path resolves inside jobs directory \u2014 skipped");
|
|
25332
25642
|
return;
|
|
25333
25643
|
}
|
|
25334
|
-
const alreadyExists =
|
|
25644
|
+
const alreadyExists = existsSync10(location.dbPath);
|
|
25335
25645
|
if (alreadyExists) {
|
|
25336
25646
|
skip("observability database already exists (not touched)");
|
|
25337
25647
|
return;
|
|
@@ -25352,8 +25662,8 @@ function ensureObservabilityDb(cwd) {
|
|
|
25352
25662
|
}
|
|
25353
25663
|
function ensureAgentsMd(cwd) {
|
|
25354
25664
|
const agentsPath = join10(cwd, "AGENTS.md");
|
|
25355
|
-
if (
|
|
25356
|
-
const existing =
|
|
25665
|
+
if (existsSync10(agentsPath)) {
|
|
25666
|
+
const existing = readFileSync8(agentsPath, "utf-8");
|
|
25357
25667
|
if (existing.includes(AGENTS_MARKER)) {
|
|
25358
25668
|
skip("AGENTS.md already has Specialists section");
|
|
25359
25669
|
} else {
|
|
@@ -25368,10 +25678,10 @@ function ensureAgentsMd(cwd) {
|
|
|
25368
25678
|
}
|
|
25369
25679
|
}
|
|
25370
25680
|
function readJsonObject(path) {
|
|
25371
|
-
if (!
|
|
25681
|
+
if (!existsSync10(path))
|
|
25372
25682
|
return {};
|
|
25373
25683
|
try {
|
|
25374
|
-
return JSON.parse(
|
|
25684
|
+
return JSON.parse(readFileSync8(path, "utf-8"));
|
|
25375
25685
|
} catch {
|
|
25376
25686
|
return {};
|
|
25377
25687
|
}
|
|
@@ -25399,14 +25709,14 @@ function hasHookCommand(settings, eventName, command) {
|
|
|
25399
25709
|
function validateInitPostconditions(cwd) {
|
|
25400
25710
|
const warnings = [];
|
|
25401
25711
|
const xtrmHooksDir = join10(cwd, ".xtrm", "hooks", "specialists");
|
|
25402
|
-
const xtrmHookFiles =
|
|
25712
|
+
const xtrmHookFiles = existsSync10(xtrmHooksDir) ? readdirSync3(xtrmHooksDir).filter((file) => file.endsWith(".mjs")) : [];
|
|
25403
25713
|
if (xtrmHookFiles.length === 0) {
|
|
25404
25714
|
warnings.push(".xtrm/hooks/specialists/ is missing or has no .mjs hooks");
|
|
25405
25715
|
}
|
|
25406
25716
|
const claudeHooksDir = join10(cwd, ".claude", "hooks");
|
|
25407
25717
|
for (const hookFile of xtrmHookFiles) {
|
|
25408
25718
|
const claudeHookPath = join10(claudeHooksDir, hookFile);
|
|
25409
|
-
if (!
|
|
25719
|
+
if (!existsSync10(claudeHookPath)) {
|
|
25410
25720
|
warnings.push(`.claude/hooks/${hookFile} is missing`);
|
|
25411
25721
|
continue;
|
|
25412
25722
|
}
|
|
@@ -25415,8 +25725,8 @@ function validateInitPostconditions(cwd) {
|
|
|
25415
25725
|
warnings.push(`.claude/hooks/${hookFile} is not a symlink`);
|
|
25416
25726
|
continue;
|
|
25417
25727
|
}
|
|
25418
|
-
const expectedTarget =
|
|
25419
|
-
const resolvedTarget =
|
|
25728
|
+
const expectedTarget = resolve5(xtrmHooksDir, hookFile);
|
|
25729
|
+
const resolvedTarget = resolve5(dirname5(claudeHookPath), readlinkSync(claudeHookPath));
|
|
25420
25730
|
if (resolvedTarget !== expectedTarget) {
|
|
25421
25731
|
warnings.push(`.claude/hooks/${hookFile} points to unexpected target`);
|
|
25422
25732
|
}
|
|
@@ -25441,12 +25751,12 @@ function validateInitPostconditions(cwd) {
|
|
|
25441
25751
|
}
|
|
25442
25752
|
const runtimeDirs = [join10(cwd, ".specialists", "jobs"), join10(cwd, ".specialists", "ready")];
|
|
25443
25753
|
for (const runtimeDir of runtimeDirs) {
|
|
25444
|
-
if (!
|
|
25754
|
+
if (!existsSync10(runtimeDir)) {
|
|
25445
25755
|
warnings.push(`${relative(cwd, runtimeDir)} is missing`);
|
|
25446
25756
|
}
|
|
25447
25757
|
}
|
|
25448
25758
|
const defaultSkillsRoot = join10(cwd, ".xtrm", "skills", "default");
|
|
25449
|
-
const defaultSkills =
|
|
25759
|
+
const defaultSkills = existsSync10(defaultSkillsRoot) ? readdirSync3(defaultSkillsRoot, { withFileTypes: true }).filter((entry) => entry.isDirectory()) : [];
|
|
25450
25760
|
if (defaultSkills.length === 0) {
|
|
25451
25761
|
warnings.push(".xtrm/skills/default/ is missing or has no skill directories");
|
|
25452
25762
|
}
|
|
@@ -25461,7 +25771,7 @@ function validateInitPostconditions(cwd) {
|
|
|
25461
25771
|
}
|
|
25462
25772
|
];
|
|
25463
25773
|
for (const symlink of rootSymlinks) {
|
|
25464
|
-
if (!
|
|
25774
|
+
if (!existsSync10(symlink.linkPath)) {
|
|
25465
25775
|
warnings.push(`${relative(cwd, symlink.linkPath)} is missing`);
|
|
25466
25776
|
continue;
|
|
25467
25777
|
}
|
|
@@ -25470,8 +25780,8 @@ function validateInitPostconditions(cwd) {
|
|
|
25470
25780
|
warnings.push(`${relative(cwd, symlink.linkPath)} is not a symlink`);
|
|
25471
25781
|
continue;
|
|
25472
25782
|
}
|
|
25473
|
-
const resolvedTarget =
|
|
25474
|
-
if (resolvedTarget !==
|
|
25783
|
+
const resolvedTarget = resolve5(dirname5(symlink.linkPath), readlinkSync(symlink.linkPath));
|
|
25784
|
+
if (resolvedTarget !== resolve5(symlink.expectedTarget)) {
|
|
25475
25785
|
warnings.push(`${relative(cwd, symlink.linkPath)} points to an unexpected target`);
|
|
25476
25786
|
}
|
|
25477
25787
|
}
|
|
@@ -25645,8 +25955,8 @@ var exports_db = {};
|
|
|
25645
25955
|
__export(exports_db, {
|
|
25646
25956
|
run: () => run8
|
|
25647
25957
|
});
|
|
25648
|
-
import { existsSync as
|
|
25649
|
-
import { dirname as dirname6, join as join11, resolve as
|
|
25958
|
+
import { existsSync as existsSync11, mkdirSync as mkdirSync5, readdirSync as readdirSync4, readFileSync as readFileSync9, writeFileSync as writeFileSync5 } from "fs";
|
|
25959
|
+
import { dirname as dirname6, join as join11, resolve as resolve6 } from "path";
|
|
25650
25960
|
function formatBytes(bytes) {
|
|
25651
25961
|
if (bytes < 1024)
|
|
25652
25962
|
return `${bytes} B`;
|
|
@@ -25795,7 +26105,7 @@ function parsePruneOptions(argv) {
|
|
|
25795
26105
|
}
|
|
25796
26106
|
function parseStatusFile(jobDirectoryPath, fallbackJobId) {
|
|
25797
26107
|
const statusPath = join11(jobDirectoryPath, "status.json");
|
|
25798
|
-
const statusRaw =
|
|
26108
|
+
const statusRaw = readFileSync9(statusPath, "utf-8");
|
|
25799
26109
|
const parsed = JSON.parse(statusRaw);
|
|
25800
26110
|
const jobId = typeof parsed.id === "string" && parsed.id.length > 0 ? parsed.id : fallbackJobId;
|
|
25801
26111
|
const specialist = typeof parsed.specialist === "string" && parsed.specialist.length > 0 ? parsed.specialist : "unknown";
|
|
@@ -25810,9 +26120,9 @@ function parseStatusFile(jobDirectoryPath, fallbackJobId) {
|
|
|
25810
26120
|
};
|
|
25811
26121
|
}
|
|
25812
26122
|
function replayEvents(eventsPath, sqliteClient, status) {
|
|
25813
|
-
if (!
|
|
26123
|
+
if (!existsSync11(eventsPath))
|
|
25814
26124
|
return 0;
|
|
25815
|
-
const rawContent =
|
|
26125
|
+
const rawContent = readFileSync9(eventsPath, "utf-8");
|
|
25816
26126
|
const lines = rawContent.split(`
|
|
25817
26127
|
`).map((line) => line.trim()).filter((line) => line.length > 0);
|
|
25818
26128
|
let importedEvents = 0;
|
|
@@ -25838,7 +26148,7 @@ function runBackfill(options) {
|
|
|
25838
26148
|
};
|
|
25839
26149
|
try {
|
|
25840
26150
|
const jobsDirectoryPath = resolveJobsDir(process.cwd());
|
|
25841
|
-
if (!
|
|
26151
|
+
if (!existsSync11(jobsDirectoryPath)) {
|
|
25842
26152
|
console.log("No jobs directory found. Nothing to backfill.");
|
|
25843
26153
|
return;
|
|
25844
26154
|
}
|
|
@@ -25848,7 +26158,7 @@ function runBackfill(options) {
|
|
|
25848
26158
|
continue;
|
|
25849
26159
|
const jobDirectoryPath = join11(jobsDirectoryPath, jobEntry.name);
|
|
25850
26160
|
const statusPath = join11(jobDirectoryPath, "status.json");
|
|
25851
|
-
if (!
|
|
26161
|
+
if (!existsSync11(statusPath))
|
|
25852
26162
|
continue;
|
|
25853
26163
|
try {
|
|
25854
26164
|
const status = parseStatusFile(jobDirectoryPath, jobEntry.name);
|
|
@@ -25961,14 +26271,14 @@ ${bold7("specialists db prune")}
|
|
|
25961
26271
|
}
|
|
25962
26272
|
}
|
|
25963
26273
|
function parseBenchmarkExportOptions(argv) {
|
|
25964
|
-
const defaultOutput =
|
|
26274
|
+
const defaultOutput = resolve6(process.cwd(), ".specialists/benchmarks/executor-benchmark-rows.jsonl");
|
|
25965
26275
|
let outputPath = defaultOutput;
|
|
25966
26276
|
let epicId;
|
|
25967
26277
|
let includePrepJobs = false;
|
|
25968
26278
|
for (let i = 0;i < argv.length; i += 1) {
|
|
25969
26279
|
const argument = argv[i];
|
|
25970
26280
|
if (argument === "--output" && argv[i + 1]) {
|
|
25971
|
-
outputPath =
|
|
26281
|
+
outputPath = resolve6(process.cwd(), argv[i + 1]);
|
|
25972
26282
|
i += 1;
|
|
25973
26283
|
continue;
|
|
25974
26284
|
}
|
|
@@ -26201,7 +26511,7 @@ __export(exports_validate, {
|
|
|
26201
26511
|
ArgParseError: () => ArgParseError3
|
|
26202
26512
|
});
|
|
26203
26513
|
import { readFile as readFile3 } from "fs/promises";
|
|
26204
|
-
import { existsSync as
|
|
26514
|
+
import { existsSync as existsSync12 } from "fs";
|
|
26205
26515
|
import { join as join12 } from "path";
|
|
26206
26516
|
function parseArgs4(argv) {
|
|
26207
26517
|
const name = argv[0];
|
|
@@ -26221,11 +26531,11 @@ function findSpecialistFile(name) {
|
|
|
26221
26531
|
];
|
|
26222
26532
|
for (const dir of scanDirs) {
|
|
26223
26533
|
const jsonCandidate = join12(dir, `${name}.specialist.json`);
|
|
26224
|
-
if (
|
|
26534
|
+
if (existsSync12(jsonCandidate)) {
|
|
26225
26535
|
return jsonCandidate;
|
|
26226
26536
|
}
|
|
26227
26537
|
const yamlCandidate = join12(dir, `${name}.specialist.json`);
|
|
26228
|
-
if (
|
|
26538
|
+
if (existsSync12(yamlCandidate)) {
|
|
26229
26539
|
process.stderr.write(`[specialists] DEPRECATED: YAML specialist config detected at ${yamlCandidate}. Please migrate to .specialist.json
|
|
26230
26540
|
`);
|
|
26231
26541
|
return yamlCandidate;
|
|
@@ -26320,7 +26630,7 @@ __export(exports_edit, {
|
|
|
26320
26630
|
run: () => run10
|
|
26321
26631
|
});
|
|
26322
26632
|
import { spawnSync as spawnSync10 } from "child_process";
|
|
26323
|
-
import { existsSync as
|
|
26633
|
+
import { existsSync as existsSync13, readdirSync as readdirSync5, readFileSync as readFileSync10, writeFileSync as writeFileSync6 } from "fs";
|
|
26324
26634
|
import { join as join13 } from "path";
|
|
26325
26635
|
function loadPresets() {
|
|
26326
26636
|
const paths = [
|
|
@@ -26328,9 +26638,9 @@ function loadPresets() {
|
|
|
26328
26638
|
join13(process.cwd(), "config", "specialists", "presets.json")
|
|
26329
26639
|
];
|
|
26330
26640
|
for (const p of paths) {
|
|
26331
|
-
if (
|
|
26641
|
+
if (existsSync13(p)) {
|
|
26332
26642
|
try {
|
|
26333
|
-
const data = JSON.parse(
|
|
26643
|
+
const data = JSON.parse(readFileSync10(p, "utf-8"));
|
|
26334
26644
|
return data;
|
|
26335
26645
|
} catch {
|
|
26336
26646
|
return {};
|
|
@@ -26528,7 +26838,7 @@ ${usage()}`);
|
|
|
26528
26838
|
if (action === "get" && (pendingArrayOp || filePath)) {
|
|
26529
26839
|
fail("Error: --get cannot be combined with --append/--remove/--file");
|
|
26530
26840
|
}
|
|
26531
|
-
if (filePath && !
|
|
26841
|
+
if (filePath && !existsSync13(filePath)) {
|
|
26532
26842
|
fail(`Error: file not found: ${filePath}`);
|
|
26533
26843
|
}
|
|
26534
26844
|
return { name, all, scope, dryRun, action, path, value, filePath, preset };
|
|
@@ -26663,7 +26973,7 @@ function formatOutputValue(value) {
|
|
|
26663
26973
|
}
|
|
26664
26974
|
function openAllConfigSpecialistsInEditor() {
|
|
26665
26975
|
const configDir = join13(process.cwd(), "config", "specialists");
|
|
26666
|
-
if (!
|
|
26976
|
+
if (!existsSync13(configDir)) {
|
|
26667
26977
|
fail(`Error: missing directory: ${configDir}`);
|
|
26668
26978
|
}
|
|
26669
26979
|
const files = readdirSync5(configDir).filter((file) => file.endsWith(".specialist.json")).sort().map((file) => join13(configDir, file));
|
|
@@ -26683,7 +26993,7 @@ function getRawValue(args, resolvedPath) {
|
|
|
26683
26993
|
if (!MULTILINE_FILE_PATHS.has(resolvedPath.normalizedPath)) {
|
|
26684
26994
|
fail(`Error: --file is only supported for: ${Array.from(MULTILINE_FILE_PATHS).join(", ")}`);
|
|
26685
26995
|
}
|
|
26686
|
-
return
|
|
26996
|
+
return readFileSync10(args.filePath, "utf-8");
|
|
26687
26997
|
}
|
|
26688
26998
|
function getAtPath(root, segments) {
|
|
26689
26999
|
let current = root;
|
|
@@ -26793,7 +27103,7 @@ async function run10() {
|
|
|
26793
27103
|
}
|
|
26794
27104
|
const targets2 = await resolveTargets(args);
|
|
26795
27105
|
for (const target of targets2) {
|
|
26796
|
-
const raw =
|
|
27106
|
+
const raw = readFileSync10(target.filePath, "utf-8");
|
|
26797
27107
|
const doc2 = JSON.parse(raw);
|
|
26798
27108
|
for (const [fieldPath, fieldValue] of Object.entries(preset.fields)) {
|
|
26799
27109
|
const resolved = resolvePath2(fieldPath);
|
|
@@ -26819,7 +27129,7 @@ async function run10() {
|
|
|
26819
27129
|
fail("Error: no specialists found");
|
|
26820
27130
|
}
|
|
26821
27131
|
for (const target of targets) {
|
|
26822
|
-
const raw =
|
|
27132
|
+
const raw = readFileSync10(target.filePath, "utf-8");
|
|
26823
27133
|
let doc2;
|
|
26824
27134
|
try {
|
|
26825
27135
|
const parsed = JSON.parse(raw);
|
|
@@ -26962,8 +27272,8 @@ var init_config = __esm(() => {
|
|
|
26962
27272
|
});
|
|
26963
27273
|
|
|
26964
27274
|
// src/specialist/worktree.ts
|
|
26965
|
-
import { existsSync as
|
|
26966
|
-
import { join as join14, resolve as
|
|
27275
|
+
import { existsSync as existsSync14, symlinkSync as symlinkSync2, mkdirSync as mkdirSync6 } from "fs";
|
|
27276
|
+
import { join as join14, resolve as resolve7 } from "path";
|
|
26967
27277
|
import { spawnSync as spawnSync11, execFileSync as execFileSync2 } from "child_process";
|
|
26968
27278
|
function deriveBranchName(beadId, specialistName) {
|
|
26969
27279
|
return `feature/${beadId}-${slugify(specialistName)}`;
|
|
@@ -26996,11 +27306,11 @@ function provisionWorktree(options) {
|
|
|
26996
27306
|
const branch = deriveBranchName(options.beadId, options.specialistName);
|
|
26997
27307
|
const existingPath = findExistingWorktree(branch, cwd);
|
|
26998
27308
|
if (existingPath) {
|
|
26999
|
-
return { branch, worktreePath:
|
|
27309
|
+
return { branch, worktreePath: resolve7(existingPath), reused: true };
|
|
27000
27310
|
}
|
|
27001
27311
|
const worktreeBase = options.worktreeBase ?? join14(commonRoot, ".worktrees", options.beadId);
|
|
27002
27312
|
const worktreeName = deriveWorktreeName(options.beadId, options.specialistName);
|
|
27003
|
-
const worktreePath =
|
|
27313
|
+
const worktreePath = resolve7(join14(worktreeBase, worktreeName));
|
|
27004
27314
|
createWorktreeViaBd(worktreePath, branch, commonRoot);
|
|
27005
27315
|
symlinkPiNpmCache(commonRoot, worktreePath);
|
|
27006
27316
|
return { branch, worktreePath, reused: false };
|
|
@@ -27008,7 +27318,7 @@ function provisionWorktree(options) {
|
|
|
27008
27318
|
function symlinkPiNpmCache(commonRoot, worktreePath) {
|
|
27009
27319
|
const source = join14(commonRoot, ".pi", "npm");
|
|
27010
27320
|
const target = join14(worktreePath, ".pi", "npm");
|
|
27011
|
-
if (!
|
|
27321
|
+
if (!existsSync14(source) || existsSync14(target))
|
|
27012
27322
|
return;
|
|
27013
27323
|
try {
|
|
27014
27324
|
mkdirSync6(join14(worktreePath, ".pi"), { recursive: true });
|
|
@@ -27074,7 +27384,7 @@ __export(exports_merge, {
|
|
|
27074
27384
|
checkEpicUnresolvedGuard: () => checkEpicUnresolvedGuard,
|
|
27075
27385
|
assertMainRepoCleanForMerge: () => assertMainRepoCleanForMerge
|
|
27076
27386
|
});
|
|
27077
|
-
import { existsSync as
|
|
27387
|
+
import { existsSync as existsSync15, readdirSync as readdirSync6, readFileSync as readFileSync11 } from "fs";
|
|
27078
27388
|
import { spawnSync as spawnSync12 } from "child_process";
|
|
27079
27389
|
import { join as join15 } from "path";
|
|
27080
27390
|
function parseOptions(argv) {
|
|
@@ -27254,7 +27564,7 @@ Use 'sp epic merge ${membership.epicId}' to publish all chains together, or 'sp
|
|
|
27254
27564
|
}
|
|
27255
27565
|
function readAllJobStatuses() {
|
|
27256
27566
|
const jobsDir = resolveJobsDir();
|
|
27257
|
-
if (!
|
|
27567
|
+
if (!existsSync15(jobsDir))
|
|
27258
27568
|
return [];
|
|
27259
27569
|
const entries = readdirSync6(jobsDir, { withFileTypes: true });
|
|
27260
27570
|
const statuses = [];
|
|
@@ -27262,9 +27572,9 @@ function readAllJobStatuses() {
|
|
|
27262
27572
|
if (!entry.isDirectory())
|
|
27263
27573
|
continue;
|
|
27264
27574
|
const statusPath = join15(jobsDir, entry.name, "status.json");
|
|
27265
|
-
if (!
|
|
27575
|
+
if (!existsSync15(statusPath))
|
|
27266
27576
|
continue;
|
|
27267
|
-
const parsed = readJson(
|
|
27577
|
+
const parsed = readJson(readFileSync11(statusPath, "utf-8"));
|
|
27268
27578
|
if (!parsed || typeof parsed !== "object")
|
|
27269
27579
|
continue;
|
|
27270
27580
|
statuses.push(parsed);
|
|
@@ -27763,7 +28073,9 @@ function formatToolDetail(event) {
|
|
|
27763
28073
|
return `${toolName}: ${dim8("start")}`;
|
|
27764
28074
|
}
|
|
27765
28075
|
if (event.phase === "end" && event.is_error) {
|
|
27766
|
-
|
|
28076
|
+
const summary = event.result_summary?.split(`
|
|
28077
|
+
`)[0]?.trim().slice(0, 120);
|
|
28078
|
+
return summary ? `${toolName}: ${red2(summary)}` : `${toolName}: ${red2("error")}`;
|
|
27767
28079
|
}
|
|
27768
28080
|
return `${toolName}: ${dim8(event.phase)}`;
|
|
27769
28081
|
}
|
|
@@ -27781,6 +28093,8 @@ function formatEventLine(event, options) {
|
|
|
27781
28093
|
if (event.type === "meta") {
|
|
27782
28094
|
detailParts.push(`model=${event.model}`);
|
|
27783
28095
|
detailParts.push(`backend=${event.backend}`);
|
|
28096
|
+
if (event.source)
|
|
28097
|
+
detailParts.push(`source=${event.source}`);
|
|
27784
28098
|
} else if (event.type === "tool") {
|
|
27785
28099
|
detail = formatToolDetail(event);
|
|
27786
28100
|
} else if (event.type === "error") {
|
|
@@ -27920,7 +28234,7 @@ __export(exports_run, {
|
|
|
27920
28234
|
run: () => run13
|
|
27921
28235
|
});
|
|
27922
28236
|
import { join as join16 } from "path";
|
|
27923
|
-
import { readFileSync as
|
|
28237
|
+
import { readFileSync as readFileSync12 } from "fs";
|
|
27924
28238
|
import { randomBytes } from "crypto";
|
|
27925
28239
|
import { spawn as cpSpawn, execSync as execSync3 } from "child_process";
|
|
27926
28240
|
async function parseArgs6(argv) {
|
|
@@ -28035,13 +28349,13 @@ async function parseArgs6(argv) {
|
|
|
28035
28349
|
process.exit(1);
|
|
28036
28350
|
}
|
|
28037
28351
|
if (!prompt && !beadId && !process.stdin.isTTY) {
|
|
28038
|
-
prompt = await new Promise((
|
|
28352
|
+
prompt = await new Promise((resolve8) => {
|
|
28039
28353
|
let buf = "";
|
|
28040
28354
|
process.stdin.setEncoding("utf-8");
|
|
28041
28355
|
process.stdin.on("data", (chunk) => {
|
|
28042
28356
|
buf += chunk;
|
|
28043
28357
|
});
|
|
28044
|
-
process.stdin.on("end", () =>
|
|
28358
|
+
process.stdin.on("end", () => resolve8(buf.trim()));
|
|
28045
28359
|
});
|
|
28046
28360
|
}
|
|
28047
28361
|
if (!prompt && !beadId && !reuseJobId) {
|
|
@@ -28199,7 +28513,7 @@ function startEventTailer(jobId, jobsDir, mode, specialist, beadId) {
|
|
|
28199
28513
|
const drain = () => {
|
|
28200
28514
|
let content;
|
|
28201
28515
|
try {
|
|
28202
|
-
content =
|
|
28516
|
+
content = readFileSync12(eventsPath, "utf-8");
|
|
28203
28517
|
} catch {
|
|
28204
28518
|
return;
|
|
28205
28519
|
}
|
|
@@ -28275,6 +28589,59 @@ function buildReusedWorktreeAwarenessBlock(options) {
|
|
|
28275
28589
|
].join(`
|
|
28276
28590
|
`);
|
|
28277
28591
|
}
|
|
28592
|
+
function buildInjectedReviewerDiffVariables(cwd, maxFiles = 20) {
|
|
28593
|
+
const read = (command) => {
|
|
28594
|
+
try {
|
|
28595
|
+
return execSync3(command, {
|
|
28596
|
+
cwd,
|
|
28597
|
+
stdio: "pipe",
|
|
28598
|
+
encoding: "utf-8",
|
|
28599
|
+
timeout: 5000
|
|
28600
|
+
}).trim();
|
|
28601
|
+
} catch {
|
|
28602
|
+
return "";
|
|
28603
|
+
}
|
|
28604
|
+
};
|
|
28605
|
+
const MAX_TOTAL_HUNKS_CHARS = 12000;
|
|
28606
|
+
const MAX_FILE_DIFF_CHARS = 2000;
|
|
28607
|
+
const stat2 = read("git diff --stat");
|
|
28608
|
+
const files = read("git diff --name-only").split(`
|
|
28609
|
+
`).map((line) => line.trim()).filter(Boolean).slice(0, maxFiles);
|
|
28610
|
+
if (files.length === 0)
|
|
28611
|
+
return {};
|
|
28612
|
+
let remaining = MAX_TOTAL_HUNKS_CHARS;
|
|
28613
|
+
const sections = [];
|
|
28614
|
+
for (const file of files) {
|
|
28615
|
+
if (remaining <= 0)
|
|
28616
|
+
break;
|
|
28617
|
+
const diff = read(`git diff -- ${shellQuote2(file)}`);
|
|
28618
|
+
const truncated = diff.length > MAX_FILE_DIFF_CHARS ? `${diff.slice(0, MAX_FILE_DIFF_CHARS)}
|
|
28619
|
+
... [truncated]` : diff;
|
|
28620
|
+
const section = truncated ? `### ${file}
|
|
28621
|
+
${truncated}` : `### ${file}
|
|
28622
|
+
(no hunks)`;
|
|
28623
|
+
if (section.length > remaining) {
|
|
28624
|
+
sections.push(`${section.slice(0, remaining)}
|
|
28625
|
+
... [truncated]`);
|
|
28626
|
+
remaining = 0;
|
|
28627
|
+
break;
|
|
28628
|
+
}
|
|
28629
|
+
sections.push(section);
|
|
28630
|
+
remaining -= section.length + 2;
|
|
28631
|
+
}
|
|
28632
|
+
const hunks = sections.join(`
|
|
28633
|
+
|
|
28634
|
+
`);
|
|
28635
|
+
if (!hunks.trim())
|
|
28636
|
+
return {};
|
|
28637
|
+
return {
|
|
28638
|
+
reviewer_diff_source: "injected diff context",
|
|
28639
|
+
reviewer_diff_stat: stat2 || "(no stat)",
|
|
28640
|
+
reviewer_diff_files: files.join(`
|
|
28641
|
+
`),
|
|
28642
|
+
reviewer_diff_hunks: hunks
|
|
28643
|
+
};
|
|
28644
|
+
}
|
|
28278
28645
|
async function run13() {
|
|
28279
28646
|
const args = await parseArgs6(process.argv.slice(3));
|
|
28280
28647
|
const loader = new SpecialistLoader;
|
|
@@ -28300,7 +28667,7 @@ async function run13() {
|
|
|
28300
28667
|
const latestPath = join16(jobsDir2, "latest");
|
|
28301
28668
|
const oldLatest = (() => {
|
|
28302
28669
|
try {
|
|
28303
|
-
return
|
|
28670
|
+
return readFileSync12(latestPath, "utf-8").trim();
|
|
28304
28671
|
} catch {
|
|
28305
28672
|
return "";
|
|
28306
28673
|
}
|
|
@@ -28328,7 +28695,7 @@ async function run13() {
|
|
|
28328
28695
|
while (Date.now() < deadline) {
|
|
28329
28696
|
await new Promise((r) => setTimeout(r, 100));
|
|
28330
28697
|
try {
|
|
28331
|
-
const current =
|
|
28698
|
+
const current = readFileSync12(latestPath, "utf-8").trim();
|
|
28332
28699
|
if (current && current !== oldLatest) {
|
|
28333
28700
|
jobId2 = current;
|
|
28334
28701
|
break;
|
|
@@ -28416,13 +28783,15 @@ async function run13() {
|
|
|
28416
28783
|
};
|
|
28417
28784
|
if (args.reuseJobId) {
|
|
28418
28785
|
const reviewedJobId = extractReviewedJobIdOverride(prompt) ?? args.reuseJobId;
|
|
28786
|
+
const injectedReviewerDiffVariables = workingDirectory && args.name === "reviewer" ? buildInjectedReviewerDiffVariables(workingDirectory) : {};
|
|
28419
28787
|
variables = {
|
|
28420
28788
|
...variables ?? {},
|
|
28421
28789
|
reviewed_job_id: reviewedJobId,
|
|
28422
28790
|
reused_worktree_awareness: buildReusedWorktreeAwarenessBlock({
|
|
28423
28791
|
reusedFromJobId: args.reuseJobId,
|
|
28424
28792
|
worktreeOwnerJobId
|
|
28425
|
-
})
|
|
28793
|
+
}),
|
|
28794
|
+
...injectedReviewerDiffVariables
|
|
28426
28795
|
};
|
|
28427
28796
|
}
|
|
28428
28797
|
if (!prompt && !effectiveBeadId) {
|
|
@@ -28583,7 +28952,7 @@ var init_node_resolve = __esm(() => {
|
|
|
28583
28952
|
});
|
|
28584
28953
|
|
|
28585
28954
|
// src/specialist/job-control.ts
|
|
28586
|
-
import { existsSync as
|
|
28955
|
+
import { existsSync as existsSync16, readFileSync as readFileSync13, writeFileSync as writeFileSync7 } from "fs";
|
|
28587
28956
|
import { join as join17 } from "path";
|
|
28588
28957
|
|
|
28589
28958
|
class JobControl {
|
|
@@ -28615,8 +28984,8 @@ class JobControl {
|
|
|
28615
28984
|
}
|
|
28616
28985
|
};
|
|
28617
28986
|
let resolveJobId;
|
|
28618
|
-
const jobIdPromise = new Promise((
|
|
28619
|
-
resolveJobId =
|
|
28987
|
+
const jobIdPromise = new Promise((resolve8) => {
|
|
28988
|
+
resolveJobId = resolve8;
|
|
28620
28989
|
});
|
|
28621
28990
|
this.supervisor = new Supervisor({
|
|
28622
28991
|
runner: this.runner,
|
|
@@ -28659,10 +29028,10 @@ class JobControl {
|
|
|
28659
29028
|
return sqliteResult;
|
|
28660
29029
|
} catch {}
|
|
28661
29030
|
const resultPath = this.resultPath(jobId);
|
|
28662
|
-
if (!
|
|
29031
|
+
if (!existsSync16(resultPath))
|
|
28663
29032
|
return null;
|
|
28664
29033
|
try {
|
|
28665
|
-
return
|
|
29034
|
+
return readFileSync13(resultPath, "utf-8");
|
|
28666
29035
|
} catch {
|
|
28667
29036
|
return null;
|
|
28668
29037
|
}
|
|
@@ -28681,7 +29050,7 @@ class JobControl {
|
|
|
28681
29050
|
if (deadline !== undefined && Date.now() >= deadline) {
|
|
28682
29051
|
throw new Error(`Timed out waiting for terminal status for job ${jobId}`);
|
|
28683
29052
|
}
|
|
28684
|
-
await new Promise((
|
|
29053
|
+
await new Promise((resolve8) => setTimeout(resolve8, backoffMs));
|
|
28685
29054
|
backoffMs = Math.min(backoffMs * 2, MAX_BACKOFF_MS);
|
|
28686
29055
|
}
|
|
28687
29056
|
}
|
|
@@ -28860,7 +29229,7 @@ function hashOutput(output2, salt) {
|
|
|
28860
29229
|
return createHash3("sha256").update(value).digest("hex");
|
|
28861
29230
|
}
|
|
28862
29231
|
function sleep2(ms) {
|
|
28863
|
-
return new Promise((
|
|
29232
|
+
return new Promise((resolve8) => setTimeout(resolve8, ms));
|
|
28864
29233
|
}
|
|
28865
29234
|
function toContextHealth(contextPct) {
|
|
28866
29235
|
if (contextPct === null)
|
|
@@ -30773,10 +31142,10 @@ var exports_node = {};
|
|
|
30773
31142
|
__export(exports_node, {
|
|
30774
31143
|
handleNodeCommand: () => handleNodeCommand
|
|
30775
31144
|
});
|
|
30776
|
-
import { existsSync as
|
|
31145
|
+
import { existsSync as existsSync17, readFileSync as readFileSync14, readdirSync as readdirSync7 } from "fs";
|
|
30777
31146
|
import { randomUUID } from "crypto";
|
|
30778
31147
|
import { spawnSync as spawnSync14 } from "child_process";
|
|
30779
|
-
import { basename as basename4, join as join18, resolve as
|
|
31148
|
+
import { basename as basename4, join as join18, resolve as resolve8 } from "path";
|
|
30780
31149
|
function parseNodeArgs(argv) {
|
|
30781
31150
|
const command = argv[0];
|
|
30782
31151
|
const supportedCommands = new Set(["run", "list", "promote", "members", "memory", "stop", "spawn-member", "create-bead", "complete", "wait-phase"]);
|
|
@@ -30960,8 +31329,8 @@ function toNodeName(filePath) {
|
|
|
30960
31329
|
function discoverNodeConfigs(cwd) {
|
|
30961
31330
|
const discoveredByName = new Map;
|
|
30962
31331
|
for (const directory of NODE_DISCOVERY_DIRS) {
|
|
30963
|
-
const absoluteDir =
|
|
30964
|
-
if (!
|
|
31332
|
+
const absoluteDir = resolve8(cwd, directory.path);
|
|
31333
|
+
if (!existsSync17(absoluteDir))
|
|
30965
31334
|
continue;
|
|
30966
31335
|
const files = readdirSync7(absoluteDir).filter((fileName) => fileName.endsWith(NODE_CONFIG_SUFFIX));
|
|
30967
31336
|
for (const fileName of files) {
|
|
@@ -30975,8 +31344,8 @@ function discoverNodeConfigs(cwd) {
|
|
|
30975
31344
|
return [...discoveredByName.values()].sort((left, right) => left.name.localeCompare(right.name));
|
|
30976
31345
|
}
|
|
30977
31346
|
function resolveNodeConfigPath(cwd, input2) {
|
|
30978
|
-
const explicitPath =
|
|
30979
|
-
if (
|
|
31347
|
+
const explicitPath = resolve8(cwd, input2);
|
|
31348
|
+
if (existsSync17(explicitPath)) {
|
|
30980
31349
|
return explicitPath;
|
|
30981
31350
|
}
|
|
30982
31351
|
const normalizedName = input2.endsWith(NODE_CONFIG_SUFFIX) ? input2.slice(0, -NODE_CONFIG_SUFFIX.length) : input2;
|
|
@@ -31071,7 +31440,7 @@ async function handleNodeRun(args) {
|
|
|
31071
31440
|
throw new Error("Observability SQLite DB is unavailable. Run: specialists db setup");
|
|
31072
31441
|
}
|
|
31073
31442
|
try {
|
|
31074
|
-
const rawConfig = args.inlineJson ? args.inlineJson :
|
|
31443
|
+
const rawConfig = args.inlineJson ? args.inlineJson : readFileSync14(resolveNodeConfigPath(process.cwd(), args.nodeConfigInput), "utf-8");
|
|
31075
31444
|
const config2 = parseNodeConfig(rawConfig);
|
|
31076
31445
|
const loader = new SpecialistLoader;
|
|
31077
31446
|
const runner = new SpecialistRunner({
|
|
@@ -31520,7 +31889,7 @@ async function handleNodeAction(args) {
|
|
|
31520
31889
|
if (deadline !== null && Date.now() >= deadline) {
|
|
31521
31890
|
throw new Error(`Timed out waiting for phase '${args.phaseId}' members: ${memberKeys.join(", ")}`);
|
|
31522
31891
|
}
|
|
31523
|
-
await new Promise((
|
|
31892
|
+
await new Promise((resolve9) => setTimeout(resolve9, 500));
|
|
31524
31893
|
}
|
|
31525
31894
|
} finally {
|
|
31526
31895
|
sqliteClient.close();
|
|
@@ -31607,7 +31976,7 @@ var init_node = __esm(() => {
|
|
|
31607
31976
|
});
|
|
31608
31977
|
|
|
31609
31978
|
// src/specialist/epic-reconciler.ts
|
|
31610
|
-
import { mkdirSync as mkdirSync7, openSync as openSync2, readFileSync as
|
|
31979
|
+
import { mkdirSync as mkdirSync7, openSync as openSync2, readFileSync as readFileSync15, rmSync as rmSync2, writeFileSync as writeFileSync8 } from "fs";
|
|
31611
31980
|
import { join as join19 } from "path";
|
|
31612
31981
|
function buildEpicLockPath(epicId) {
|
|
31613
31982
|
const location = resolveObservabilityDbLocation();
|
|
@@ -31624,7 +31993,7 @@ function withEpicAdvisoryLock(epicId, action) {
|
|
|
31624
31993
|
} catch {
|
|
31625
31994
|
let holder = "unknown";
|
|
31626
31995
|
try {
|
|
31627
|
-
holder =
|
|
31996
|
+
holder = readFileSync15(lockPath, "utf-8");
|
|
31628
31997
|
} catch {
|
|
31629
31998
|
holder = "unknown";
|
|
31630
31999
|
}
|
|
@@ -32600,7 +32969,7 @@ __export(exports_status, {
|
|
|
32600
32969
|
run: () => run14
|
|
32601
32970
|
});
|
|
32602
32971
|
import { spawnSync as spawnSync16 } from "child_process";
|
|
32603
|
-
import { existsSync as
|
|
32972
|
+
import { existsSync as existsSync18, readFileSync as readFileSync16 } from "fs";
|
|
32604
32973
|
import { join as join20 } from "path";
|
|
32605
32974
|
function ok2(msg) {
|
|
32606
32975
|
console.log(` ${green8("\u2713")} ${msg}`);
|
|
@@ -32693,9 +33062,9 @@ function countJobEvents(sqliteClient, jobsDir, jobId) {
|
|
|
32693
33062
|
console.warn(`SQLite events read failed for job ${jobId}; falling back to events.jsonl`, error2);
|
|
32694
33063
|
}
|
|
32695
33064
|
const eventsFile = join20(jobsDir, jobId, "events.jsonl");
|
|
32696
|
-
if (!
|
|
33065
|
+
if (!existsSync18(eventsFile))
|
|
32697
33066
|
return 0;
|
|
32698
|
-
const raw =
|
|
33067
|
+
const raw = readFileSync16(eventsFile, "utf-8").trim();
|
|
32699
33068
|
if (!raw)
|
|
32700
33069
|
return 0;
|
|
32701
33070
|
return raw.split(`
|
|
@@ -32727,9 +33096,9 @@ function getLatestContextSnapshot(sqliteClient, jobsDir, jobId) {
|
|
|
32727
33096
|
console.warn(`SQLite events read failed for job ${jobId}; falling back to events.jsonl`, error2);
|
|
32728
33097
|
}
|
|
32729
33098
|
const eventsFile = join20(jobsDir, jobId, "events.jsonl");
|
|
32730
|
-
if (!
|
|
33099
|
+
if (!existsSync18(eventsFile))
|
|
32731
33100
|
return null;
|
|
32732
|
-
const lines =
|
|
33101
|
+
const lines = readFileSync16(eventsFile, "utf-8").split(`
|
|
32733
33102
|
`);
|
|
32734
33103
|
for (let index = lines.length - 1;index >= 0; index -= 1) {
|
|
32735
33104
|
const line = lines[index].trim();
|
|
@@ -32834,11 +33203,11 @@ async function run14() {
|
|
|
32834
33203
|
`).slice(1).map((line) => line.split(/\s+/)[0]).filter(Boolean)) : new Set;
|
|
32835
33204
|
const bdInstalled = isInstalled2("bd");
|
|
32836
33205
|
const bdVersion = bdInstalled ? cmd("bd", ["--version"]) : null;
|
|
32837
|
-
const beadsPresent =
|
|
33206
|
+
const beadsPresent = existsSync18(join20(process.cwd(), ".beads"));
|
|
32838
33207
|
const specialistsBin = cmd("which", ["specialists"]);
|
|
32839
33208
|
const jobsDir = resolveJobsDir();
|
|
32840
33209
|
let jobs = [];
|
|
32841
|
-
if (
|
|
33210
|
+
if (existsSync18(jobsDir)) {
|
|
32842
33211
|
supervisor = new Supervisor({
|
|
32843
33212
|
runner: null,
|
|
32844
33213
|
runOptions: null,
|
|
@@ -32995,7 +33364,7 @@ __export(exports_ps, {
|
|
|
32995
33364
|
run: () => run15
|
|
32996
33365
|
});
|
|
32997
33366
|
import { spawnSync as spawnSync17 } from "child_process";
|
|
32998
|
-
import { existsSync as
|
|
33367
|
+
import { existsSync as existsSync19, readdirSync as readdirSync8, readFileSync as readFileSync17 } from "fs";
|
|
32999
33368
|
import { join as join21 } from "path";
|
|
33000
33369
|
function parseArgs7(argv) {
|
|
33001
33370
|
let nodeId;
|
|
@@ -33026,25 +33395,25 @@ function isVisibleStatus(status, all) {
|
|
|
33026
33395
|
return ACTIVE_STATES.includes(status);
|
|
33027
33396
|
}
|
|
33028
33397
|
function readStatusesFromFiles(jobsDir) {
|
|
33029
|
-
if (!
|
|
33398
|
+
if (!existsSync19(jobsDir))
|
|
33030
33399
|
return [];
|
|
33031
33400
|
const statuses = [];
|
|
33032
33401
|
for (const entry of readdirSync8(jobsDir)) {
|
|
33033
33402
|
const statusPath = join21(jobsDir, entry, "status.json");
|
|
33034
|
-
if (!
|
|
33403
|
+
if (!existsSync19(statusPath))
|
|
33035
33404
|
continue;
|
|
33036
33405
|
try {
|
|
33037
|
-
statuses.push(JSON.parse(
|
|
33406
|
+
statuses.push(JSON.parse(readFileSync17(statusPath, "utf-8")));
|
|
33038
33407
|
} catch {}
|
|
33039
33408
|
}
|
|
33040
33409
|
return statuses.sort((a, b) => b.started_at_ms - a.started_at_ms);
|
|
33041
33410
|
}
|
|
33042
33411
|
function readLastToolEventFromFile(jobsDir, jobId) {
|
|
33043
33412
|
const eventsPath = join21(jobsDir, jobId, "events.jsonl");
|
|
33044
|
-
if (!
|
|
33413
|
+
if (!existsSync19(eventsPath))
|
|
33045
33414
|
return;
|
|
33046
33415
|
try {
|
|
33047
|
-
const lines =
|
|
33416
|
+
const lines = readFileSync17(eventsPath, "utf-8").split(`
|
|
33048
33417
|
`);
|
|
33049
33418
|
for (let index = lines.length - 1;index >= 0; index -= 1) {
|
|
33050
33419
|
const line = lines[index]?.trim();
|
|
@@ -33802,7 +34171,7 @@ var exports_result = {};
|
|
|
33802
34171
|
__export(exports_result, {
|
|
33803
34172
|
run: () => run16
|
|
33804
34173
|
});
|
|
33805
|
-
import { existsSync as
|
|
34174
|
+
import { existsSync as existsSync20, readFileSync as readFileSync18 } from "fs";
|
|
33806
34175
|
import { join as join22 } from "path";
|
|
33807
34176
|
function parseArgs8(argv) {
|
|
33808
34177
|
let jobId;
|
|
@@ -33894,9 +34263,9 @@ function readTimelineEventsForResult(sqliteClient, jobsDir, jobId) {
|
|
|
33894
34263
|
} catch {}
|
|
33895
34264
|
}
|
|
33896
34265
|
const eventsPath = join22(jobsDir, jobId, "events.jsonl");
|
|
33897
|
-
if (!
|
|
34266
|
+
if (!existsSync20(eventsPath))
|
|
33898
34267
|
return [];
|
|
33899
|
-
return
|
|
34268
|
+
return readFileSync18(eventsPath, "utf-8").split(`
|
|
33900
34269
|
`).map((line) => line.trim()).filter(Boolean).map((line) => parseTimelineEvent(line)).filter((event) => event !== null);
|
|
33901
34270
|
}
|
|
33902
34271
|
function deriveStartupSnapshot(status, events) {
|
|
@@ -34037,10 +34406,10 @@ async function run16() {
|
|
|
34037
34406
|
} catch (error2) {
|
|
34038
34407
|
console.warn(`SQLite result read failed for job ${jobId}; falling back to result.txt`, error2);
|
|
34039
34408
|
}
|
|
34040
|
-
if (!
|
|
34409
|
+
if (!existsSync20(resultPath)) {
|
|
34041
34410
|
return null;
|
|
34042
34411
|
}
|
|
34043
|
-
return
|
|
34412
|
+
return readFileSync18(resultPath, "utf-8");
|
|
34044
34413
|
};
|
|
34045
34414
|
if (args.wait) {
|
|
34046
34415
|
const startMs = Date.now();
|
|
@@ -34214,7 +34583,7 @@ var init_result = __esm(() => {
|
|
|
34214
34583
|
});
|
|
34215
34584
|
|
|
34216
34585
|
// src/specialist/timeline-query.ts
|
|
34217
|
-
import { existsSync as
|
|
34586
|
+
import { existsSync as existsSync21, readdirSync as readdirSync9, readFileSync as readFileSync19 } from "fs";
|
|
34218
34587
|
import { basename as basename5, join as join23 } from "path";
|
|
34219
34588
|
function readJobEvents(jobDir) {
|
|
34220
34589
|
const jobId = basename5(jobDir);
|
|
@@ -34226,9 +34595,9 @@ function readJobEvents(jobDir) {
|
|
|
34226
34595
|
}
|
|
34227
34596
|
} catch {}
|
|
34228
34597
|
const eventsPath = join23(jobDir, "events.jsonl");
|
|
34229
|
-
if (!
|
|
34598
|
+
if (!existsSync21(eventsPath))
|
|
34230
34599
|
return [];
|
|
34231
|
-
const content =
|
|
34600
|
+
const content = readFileSync19(eventsPath, "utf-8");
|
|
34232
34601
|
const lines = content.split(`
|
|
34233
34602
|
`).filter(Boolean);
|
|
34234
34603
|
const events = [];
|
|
@@ -34244,7 +34613,7 @@ function readJobEventsById(jobsDir, jobId) {
|
|
|
34244
34613
|
return readJobEvents(join23(jobsDir, jobId));
|
|
34245
34614
|
}
|
|
34246
34615
|
function readAllJobEvents(jobsDir) {
|
|
34247
|
-
if (!
|
|
34616
|
+
if (!existsSync21(jobsDir))
|
|
34248
34617
|
return [];
|
|
34249
34618
|
const batches = [];
|
|
34250
34619
|
const entries = readdirSync9(jobsDir);
|
|
@@ -34261,9 +34630,9 @@ function readAllJobEvents(jobsDir) {
|
|
|
34261
34630
|
const statusPath = join23(jobDir, "status.json");
|
|
34262
34631
|
let specialist = "unknown";
|
|
34263
34632
|
let beadId;
|
|
34264
|
-
if (
|
|
34633
|
+
if (existsSync21(statusPath)) {
|
|
34265
34634
|
try {
|
|
34266
|
-
const status = JSON.parse(
|
|
34635
|
+
const status = JSON.parse(readFileSync19(statusPath, "utf-8"));
|
|
34267
34636
|
specialist = status.specialist ?? "unknown";
|
|
34268
34637
|
beadId = status.bead_id;
|
|
34269
34638
|
} catch {}
|
|
@@ -34360,9 +34729,9 @@ __export(exports_feed, {
|
|
|
34360
34729
|
});
|
|
34361
34730
|
import {
|
|
34362
34731
|
closeSync as closeSync2,
|
|
34363
|
-
existsSync as
|
|
34732
|
+
existsSync as existsSync22,
|
|
34364
34733
|
openSync as openSync3,
|
|
34365
|
-
readFileSync as
|
|
34734
|
+
readFileSync as readFileSync20,
|
|
34366
34735
|
readdirSync as readdirSync10,
|
|
34367
34736
|
statSync as statSync3
|
|
34368
34737
|
} from "fs";
|
|
@@ -34474,6 +34843,10 @@ function formatStartupContextLine(event) {
|
|
|
34474
34843
|
parts.push(`skills=${snapshot.skills.count}`);
|
|
34475
34844
|
return parts.length > 0 ? dim8(` \u21B3 startup ${parts.join(" ")}`) : null;
|
|
34476
34845
|
}
|
|
34846
|
+
if (event.type === "meta" && event.source === "mandatory_rules_injection" && event.data) {
|
|
34847
|
+
const data = event.data;
|
|
34848
|
+
return dim8(` \u21B3 mandatory_rules sets=${(data.sets_loaded ?? []).join(",") || "none"} rules=${data.rules_count ?? 0} tokens=~${data.token_estimate ?? 0}`);
|
|
34849
|
+
}
|
|
34477
34850
|
if (event.type === "meta" && event.memory_injection) {
|
|
34478
34851
|
const mem = event.memory_injection;
|
|
34479
34852
|
return dim8(` \u21B3 memory static=${mem.static_tokens} dynamic=${mem.memory_tokens} gitnexus=${mem.gitnexus_tokens} total=${mem.total_tokens}`);
|
|
@@ -34507,7 +34880,7 @@ function readFileFresh(filePath) {
|
|
|
34507
34880
|
let fd = null;
|
|
34508
34881
|
try {
|
|
34509
34882
|
fd = openSync3(filePath, "r");
|
|
34510
|
-
return
|
|
34883
|
+
return readFileSync20(fd, "utf-8");
|
|
34511
34884
|
} catch {
|
|
34512
34885
|
return null;
|
|
34513
34886
|
} finally {
|
|
@@ -34733,7 +35106,7 @@ function filterMergedEventsByNode(sqliteClient, jobsDir, merged, nodeId) {
|
|
|
34733
35106
|
});
|
|
34734
35107
|
}
|
|
34735
35108
|
function listMatchingJobIds(sqliteClient, jobsDir, options) {
|
|
34736
|
-
if (!
|
|
35109
|
+
if (!existsSync22(jobsDir))
|
|
34737
35110
|
return [];
|
|
34738
35111
|
const jobIds = [];
|
|
34739
35112
|
for (const entry of readdirSync10(jobsDir)) {
|
|
@@ -34847,7 +35220,7 @@ async function followMerged(sqliteClient, jobsDir, options) {
|
|
|
34847
35220
|
}
|
|
34848
35221
|
const lastPrintedEventKey = new Map;
|
|
34849
35222
|
const seenMetaKey = new Map;
|
|
34850
|
-
await new Promise((
|
|
35223
|
+
await new Promise((resolve9) => {
|
|
34851
35224
|
const interval = setInterval(() => {
|
|
34852
35225
|
const batches = filteredBatches();
|
|
34853
35226
|
for (const jobId of listMatchingJobIds(sqliteClient, jobsDir, options)) {
|
|
@@ -34924,7 +35297,7 @@ async function followMerged(sqliteClient, jobsDir, options) {
|
|
|
34924
35297
|
}
|
|
34925
35298
|
if (!options.forever && trackedJobs.size > 0 && completedJobs.size === trackedJobs.size) {
|
|
34926
35299
|
clearInterval(interval);
|
|
34927
|
-
|
|
35300
|
+
resolve9();
|
|
34928
35301
|
}
|
|
34929
35302
|
}, 500);
|
|
34930
35303
|
});
|
|
@@ -34934,7 +35307,7 @@ async function run17() {
|
|
|
34934
35307
|
const sqliteClient = createObservabilitySqliteClient();
|
|
34935
35308
|
try {
|
|
34936
35309
|
const jobsDir = join24(process.cwd(), ".specialists", "jobs");
|
|
34937
|
-
if (!
|
|
35310
|
+
if (!existsSync22(jobsDir)) {
|
|
34938
35311
|
console.log(dim8("No jobs directory found."));
|
|
34939
35312
|
return;
|
|
34940
35313
|
}
|
|
@@ -34973,7 +35346,7 @@ var exports_poll = {};
|
|
|
34973
35346
|
__export(exports_poll, {
|
|
34974
35347
|
run: () => run18
|
|
34975
35348
|
});
|
|
34976
|
-
import { existsSync as
|
|
35349
|
+
import { existsSync as existsSync23, readFileSync as readFileSync21 } from "fs";
|
|
34977
35350
|
import { join as join25 } from "path";
|
|
34978
35351
|
function parseArgs10(argv) {
|
|
34979
35352
|
let jobId;
|
|
@@ -35014,16 +35387,16 @@ function readJobState(jobsDir, jobId, cursor, outputCursor) {
|
|
|
35014
35387
|
const jobDir = join25(jobsDir, jobId);
|
|
35015
35388
|
const statusPath = join25(jobDir, "status.json");
|
|
35016
35389
|
let status = null;
|
|
35017
|
-
if (
|
|
35390
|
+
if (existsSync23(statusPath)) {
|
|
35018
35391
|
try {
|
|
35019
|
-
status = JSON.parse(
|
|
35392
|
+
status = JSON.parse(readFileSync21(statusPath, "utf-8"));
|
|
35020
35393
|
} catch {}
|
|
35021
35394
|
}
|
|
35022
35395
|
const resultPath = join25(jobDir, "result.txt");
|
|
35023
35396
|
let fullOutput = "";
|
|
35024
|
-
if (
|
|
35397
|
+
if (existsSync23(resultPath)) {
|
|
35025
35398
|
try {
|
|
35026
|
-
fullOutput =
|
|
35399
|
+
fullOutput = readFileSync21(resultPath, "utf-8");
|
|
35027
35400
|
} catch {}
|
|
35028
35401
|
}
|
|
35029
35402
|
const events = readJobEventsById(jobsDir, jobId);
|
|
@@ -35057,7 +35430,7 @@ async function run18() {
|
|
|
35057
35430
|
const { jobId, cursor, outputCursor } = parseArgs10(process.argv.slice(3));
|
|
35058
35431
|
const jobsDir = join25(process.cwd(), ".specialists", "jobs");
|
|
35059
35432
|
const jobDir = join25(jobsDir, jobId);
|
|
35060
|
-
if (!
|
|
35433
|
+
if (!existsSync23(jobDir)) {
|
|
35061
35434
|
const result2 = {
|
|
35062
35435
|
job_id: jobId,
|
|
35063
35436
|
status: "error",
|
|
@@ -35205,15 +35578,15 @@ async function run21() {
|
|
|
35205
35578
|
}
|
|
35206
35579
|
|
|
35207
35580
|
// src/specialist/worktree-gc.ts
|
|
35208
|
-
import { existsSync as
|
|
35581
|
+
import { existsSync as existsSync24, readdirSync as readdirSync11, readFileSync as readFileSync22 } from "fs";
|
|
35209
35582
|
import { join as join26 } from "path";
|
|
35210
35583
|
import { spawnSync as spawnSync18 } from "child_process";
|
|
35211
35584
|
function readJobStatus2(jobDir) {
|
|
35212
35585
|
const statusPath = join26(jobDir, "status.json");
|
|
35213
|
-
if (!
|
|
35586
|
+
if (!existsSync24(statusPath))
|
|
35214
35587
|
return null;
|
|
35215
35588
|
try {
|
|
35216
|
-
return JSON.parse(
|
|
35589
|
+
return JSON.parse(readFileSync22(statusPath, "utf-8"));
|
|
35217
35590
|
} catch {
|
|
35218
35591
|
return null;
|
|
35219
35592
|
}
|
|
@@ -35225,7 +35598,7 @@ function isActive(status) {
|
|
|
35225
35598
|
return ACTIVE_STATUSES.has(status);
|
|
35226
35599
|
}
|
|
35227
35600
|
function collectWorktreeGcCandidates(jobsDir) {
|
|
35228
|
-
if (!
|
|
35601
|
+
if (!existsSync24(jobsDir))
|
|
35229
35602
|
return [];
|
|
35230
35603
|
const candidates = [];
|
|
35231
35604
|
for (const entry of readdirSync11(jobsDir, { withFileTypes: true })) {
|
|
@@ -35241,7 +35614,7 @@ function collectWorktreeGcCandidates(jobsDir) {
|
|
|
35241
35614
|
const { worktree_path: worktreePath, branch } = status;
|
|
35242
35615
|
if (!worktreePath)
|
|
35243
35616
|
continue;
|
|
35244
|
-
if (!
|
|
35617
|
+
if (!existsSync24(worktreePath))
|
|
35245
35618
|
continue;
|
|
35246
35619
|
candidates.push({
|
|
35247
35620
|
jobId: status.id,
|
|
@@ -35287,9 +35660,9 @@ __export(exports_clean, {
|
|
|
35287
35660
|
run: () => run22
|
|
35288
35661
|
});
|
|
35289
35662
|
import {
|
|
35290
|
-
existsSync as
|
|
35663
|
+
existsSync as existsSync25,
|
|
35291
35664
|
readdirSync as readdirSync12,
|
|
35292
|
-
readFileSync as
|
|
35665
|
+
readFileSync as readFileSync23,
|
|
35293
35666
|
rmSync as rmSync3,
|
|
35294
35667
|
statSync as statSync4
|
|
35295
35668
|
} from "fs";
|
|
@@ -35381,11 +35754,11 @@ function readCompletedJobDirectory(baseDirectory, entry) {
|
|
|
35381
35754
|
if (containsProtectedSqliteArtifact(directoryPath))
|
|
35382
35755
|
return null;
|
|
35383
35756
|
const statusFilePath = join27(directoryPath, "status.json");
|
|
35384
|
-
if (!
|
|
35757
|
+
if (!existsSync25(statusFilePath))
|
|
35385
35758
|
return null;
|
|
35386
35759
|
let statusData;
|
|
35387
35760
|
try {
|
|
35388
|
-
statusData = JSON.parse(
|
|
35761
|
+
statusData = JSON.parse(readFileSync23(statusFilePath, "utf-8"));
|
|
35389
35762
|
} catch {
|
|
35390
35763
|
return null;
|
|
35391
35764
|
}
|
|
@@ -35482,7 +35855,7 @@ async function run22() {
|
|
|
35482
35855
|
printUsageAndExit2(message);
|
|
35483
35856
|
}
|
|
35484
35857
|
const jobsDirectoryPath = resolveJobsDir();
|
|
35485
|
-
if (!
|
|
35858
|
+
if (!existsSync25(jobsDirectoryPath)) {
|
|
35486
35859
|
console.log("No jobs directory found.");
|
|
35487
35860
|
return;
|
|
35488
35861
|
}
|
|
@@ -35667,7 +36040,7 @@ async function waitForProcessExit(pid, timeoutMs) {
|
|
|
35667
36040
|
while (Date.now() < deadline) {
|
|
35668
36041
|
if (!isProcessAlive(pid))
|
|
35669
36042
|
return true;
|
|
35670
|
-
await new Promise((
|
|
36043
|
+
await new Promise((resolve9) => setTimeout(resolve9, 100));
|
|
35671
36044
|
}
|
|
35672
36045
|
return !isProcessAlive(pid);
|
|
35673
36046
|
}
|
|
@@ -35777,7 +36150,7 @@ __export(exports_attach, {
|
|
|
35777
36150
|
run: () => run25
|
|
35778
36151
|
});
|
|
35779
36152
|
import { execFileSync as execFileSync3, spawnSync as spawnSync20 } from "child_process";
|
|
35780
|
-
import { readFileSync as
|
|
36153
|
+
import { readFileSync as readFileSync24 } from "fs";
|
|
35781
36154
|
import { join as join28 } from "path";
|
|
35782
36155
|
function exitWithError(message) {
|
|
35783
36156
|
console.error(message);
|
|
@@ -35785,7 +36158,7 @@ function exitWithError(message) {
|
|
|
35785
36158
|
}
|
|
35786
36159
|
function readStatus(statusPath, jobId) {
|
|
35787
36160
|
try {
|
|
35788
|
-
return JSON.parse(
|
|
36161
|
+
return JSON.parse(readFileSync24(statusPath, "utf-8"));
|
|
35789
36162
|
} catch (error2) {
|
|
35790
36163
|
if (error2 && typeof error2 === "object" && "code" in error2 && error2.code === "ENOENT") {
|
|
35791
36164
|
exitWithError(`Job \`${jobId}\` not found. Run \`specialists status\` to see active jobs.`);
|
|
@@ -36061,8 +36434,8 @@ __export(exports_doctor, {
|
|
|
36061
36434
|
});
|
|
36062
36435
|
import { createHash as createHash4 } from "crypto";
|
|
36063
36436
|
import { spawnSync as spawnSync21 } from "child_process";
|
|
36064
|
-
import { existsSync as
|
|
36065
|
-
import { dirname as dirname7, join as join29, relative as relative2, resolve as
|
|
36437
|
+
import { existsSync as existsSync26, lstatSync as lstatSync2, mkdirSync as mkdirSync8, readdirSync as readdirSync13, readFileSync as readFileSync25, readlinkSync as readlinkSync2, writeFileSync as writeFileSync11 } from "fs";
|
|
36438
|
+
import { dirname as dirname7, join as join29, relative as relative2, resolve as resolve9 } from "path";
|
|
36066
36439
|
function ok3(msg) {
|
|
36067
36440
|
console.log(` ${green14("\u2713")} ${msg}`);
|
|
36068
36441
|
}
|
|
@@ -36091,10 +36464,10 @@ function isInstalled3(bin) {
|
|
|
36091
36464
|
return spawnSync21("which", [bin], { encoding: "utf8", timeout: 2000 }).status === 0;
|
|
36092
36465
|
}
|
|
36093
36466
|
function loadJson2(path) {
|
|
36094
|
-
if (!
|
|
36467
|
+
if (!existsSync26(path))
|
|
36095
36468
|
return null;
|
|
36096
36469
|
try {
|
|
36097
|
-
return JSON.parse(
|
|
36470
|
+
return JSON.parse(readFileSync25(path, "utf8"));
|
|
36098
36471
|
} catch {
|
|
36099
36472
|
return null;
|
|
36100
36473
|
}
|
|
@@ -36137,7 +36510,7 @@ function checkBd() {
|
|
|
36137
36510
|
return false;
|
|
36138
36511
|
}
|
|
36139
36512
|
ok3(`bd installed ${dim13(sp("bd", ["--version"]).stdout || "")}`);
|
|
36140
|
-
if (
|
|
36513
|
+
if (existsSync26(join29(CWD, ".beads")))
|
|
36141
36514
|
ok3(".beads/ present in project");
|
|
36142
36515
|
else
|
|
36143
36516
|
warn3(".beads/ not found in project");
|
|
@@ -36158,7 +36531,7 @@ function checkHooks() {
|
|
|
36158
36531
|
let allPresent = true;
|
|
36159
36532
|
for (const name of HOOK_NAMES) {
|
|
36160
36533
|
const canonicalPath = join29(HOOKS_DIR, name);
|
|
36161
|
-
if (!
|
|
36534
|
+
if (!existsSync26(canonicalPath)) {
|
|
36162
36535
|
fail4(`${relative2(CWD, canonicalPath)} ${red7("missing")}`);
|
|
36163
36536
|
fix("specialists init");
|
|
36164
36537
|
allPresent = false;
|
|
@@ -36220,7 +36593,7 @@ function checkMCP() {
|
|
|
36220
36593
|
}
|
|
36221
36594
|
function hashFile(path) {
|
|
36222
36595
|
const hash = createHash4("sha256");
|
|
36223
|
-
hash.update(
|
|
36596
|
+
hash.update(readFileSync25(path));
|
|
36224
36597
|
return hash.digest("hex");
|
|
36225
36598
|
}
|
|
36226
36599
|
function collectFileHashes(rootDir) {
|
|
@@ -36238,12 +36611,12 @@ function collectFileHashes(rootDir) {
|
|
|
36238
36611
|
hashes.set(relPath, hashFile(fullPath));
|
|
36239
36612
|
}
|
|
36240
36613
|
};
|
|
36241
|
-
if (
|
|
36614
|
+
if (existsSync26(rootDir))
|
|
36242
36615
|
visit2(rootDir);
|
|
36243
36616
|
return hashes;
|
|
36244
36617
|
}
|
|
36245
36618
|
function isSymlinkTo(linkPath, expectedTargetPath) {
|
|
36246
|
-
if (!
|
|
36619
|
+
if (!existsSync26(linkPath))
|
|
36247
36620
|
return { ok: false, reason: "missing" };
|
|
36248
36621
|
let stats;
|
|
36249
36622
|
try {
|
|
@@ -36255,8 +36628,8 @@ function isSymlinkTo(linkPath, expectedTargetPath) {
|
|
|
36255
36628
|
return { ok: false, reason: "not-symlink" };
|
|
36256
36629
|
try {
|
|
36257
36630
|
const rawTarget = readlinkSync2(linkPath);
|
|
36258
|
-
const resolvedTarget =
|
|
36259
|
-
const resolvedExpected =
|
|
36631
|
+
const resolvedTarget = resolve9(dirname7(linkPath), rawTarget);
|
|
36632
|
+
const resolvedExpected = resolve9(expectedTargetPath);
|
|
36260
36633
|
if (resolvedTarget !== resolvedExpected) {
|
|
36261
36634
|
return { ok: false, reason: "wrong-target", target: rawTarget };
|
|
36262
36635
|
}
|
|
@@ -36267,12 +36640,12 @@ function isSymlinkTo(linkPath, expectedTargetPath) {
|
|
|
36267
36640
|
}
|
|
36268
36641
|
function checkSkillDrift() {
|
|
36269
36642
|
section3("Skill drift (.xtrm skill sync)");
|
|
36270
|
-
if (!
|
|
36643
|
+
if (!existsSync26(CONFIG_SKILLS_DIR)) {
|
|
36271
36644
|
fail4("config/skills/ missing");
|
|
36272
36645
|
fix("restore config/skills/ from git");
|
|
36273
36646
|
return false;
|
|
36274
36647
|
}
|
|
36275
|
-
if (!
|
|
36648
|
+
if (!existsSync26(XTRM_DEFAULT_SKILLS_DIR)) {
|
|
36276
36649
|
fail4(".xtrm/skills/default/ missing");
|
|
36277
36650
|
fix("specialists init --sync-skills");
|
|
36278
36651
|
return false;
|
|
@@ -36315,7 +36688,7 @@ function checkSkillDrift() {
|
|
|
36315
36688
|
let linksOk = true;
|
|
36316
36689
|
for (const scope of ["claude", "pi"]) {
|
|
36317
36690
|
const activeRoot = join29(XTRM_ACTIVE_SKILLS_DIR, scope);
|
|
36318
|
-
if (!
|
|
36691
|
+
if (!existsSync26(activeRoot)) {
|
|
36319
36692
|
fail4(`${relative2(CWD, activeRoot)}/ missing`);
|
|
36320
36693
|
fix("specialists init --sync-skills");
|
|
36321
36694
|
linksOk = false;
|
|
@@ -36374,14 +36747,14 @@ function checkRuntimeDirs() {
|
|
|
36374
36747
|
const jobsDir = join29(rootDir, "jobs");
|
|
36375
36748
|
const readyDir = join29(rootDir, "ready");
|
|
36376
36749
|
let allOk = true;
|
|
36377
|
-
if (!
|
|
36750
|
+
if (!existsSync26(rootDir)) {
|
|
36378
36751
|
warn3(".specialists/ not found in current project");
|
|
36379
36752
|
fix("specialists init");
|
|
36380
36753
|
allOk = false;
|
|
36381
36754
|
} else {
|
|
36382
36755
|
ok3(".specialists/ present");
|
|
36383
36756
|
for (const [subDir, label] of [[jobsDir, "jobs"], [readyDir, "ready"]]) {
|
|
36384
|
-
if (!
|
|
36757
|
+
if (!existsSync26(subDir)) {
|
|
36385
36758
|
warn3(`.specialists/${label}/ missing \u2014 auto-creating`);
|
|
36386
36759
|
mkdirSync8(subDir, { recursive: true });
|
|
36387
36760
|
ok3(`.specialists/${label}/ created`);
|
|
@@ -36414,7 +36787,7 @@ function compareVersions(left, right) {
|
|
|
36414
36787
|
}
|
|
36415
36788
|
function setStatusError(statusPath) {
|
|
36416
36789
|
try {
|
|
36417
|
-
const raw =
|
|
36790
|
+
const raw = readFileSync25(statusPath, "utf8");
|
|
36418
36791
|
const status = JSON.parse(raw);
|
|
36419
36792
|
status.status = "error";
|
|
36420
36793
|
writeFileSync11(statusPath, `${JSON.stringify(status, null, 2)}
|
|
@@ -36437,10 +36810,10 @@ function cleanupProcesses(jobsDir, dryRun) {
|
|
|
36437
36810
|
};
|
|
36438
36811
|
for (const jobId of entries) {
|
|
36439
36812
|
const statusPath = join29(jobsDir, jobId, "status.json");
|
|
36440
|
-
if (!
|
|
36813
|
+
if (!existsSync26(statusPath))
|
|
36441
36814
|
continue;
|
|
36442
36815
|
try {
|
|
36443
|
-
const status = JSON.parse(
|
|
36816
|
+
const status = JSON.parse(readFileSync25(statusPath, "utf8"));
|
|
36444
36817
|
result.total += 1;
|
|
36445
36818
|
if (status.status !== "running" && status.status !== "starting")
|
|
36446
36819
|
continue;
|
|
@@ -36517,7 +36890,7 @@ ${bold13("specialists doctor orphans")}
|
|
|
36517
36890
|
function checkZombieJobs() {
|
|
36518
36891
|
section3("Background jobs");
|
|
36519
36892
|
const jobsDir = join29(CWD, ".specialists", "jobs");
|
|
36520
|
-
if (!
|
|
36893
|
+
if (!existsSync26(jobsDir)) {
|
|
36521
36894
|
hint("No .specialists/jobs/ \u2014 skipping");
|
|
36522
36895
|
return true;
|
|
36523
36896
|
}
|
|
@@ -36772,7 +37145,7 @@ var init_help = __esm(() => {
|
|
|
36772
37145
|
];
|
|
36773
37146
|
});
|
|
36774
37147
|
|
|
36775
|
-
// node_modules/zod/v4/core/core.js
|
|
37148
|
+
// ../../../node_modules/zod/v4/core/core.js
|
|
36776
37149
|
var NEVER2 = Object.freeze({
|
|
36777
37150
|
status: "aborted"
|
|
36778
37151
|
});
|
|
@@ -36832,7 +37205,7 @@ function config(newConfig) {
|
|
|
36832
37205
|
Object.assign(globalConfig, newConfig);
|
|
36833
37206
|
return globalConfig;
|
|
36834
37207
|
}
|
|
36835
|
-
// node_modules/zod/v4/core/util.js
|
|
37208
|
+
// ../../../node_modules/zod/v4/core/util.js
|
|
36836
37209
|
var exports_util = {};
|
|
36837
37210
|
__export(exports_util, {
|
|
36838
37211
|
unwrapMessage: () => unwrapMessage,
|
|
@@ -37346,7 +37719,7 @@ class Class {
|
|
|
37346
37719
|
constructor(..._args) {}
|
|
37347
37720
|
}
|
|
37348
37721
|
|
|
37349
|
-
// node_modules/zod/v4/core/errors.js
|
|
37722
|
+
// ../../../node_modules/zod/v4/core/errors.js
|
|
37350
37723
|
var initializer = (inst, def) => {
|
|
37351
37724
|
inst.name = "$ZodError";
|
|
37352
37725
|
Object.defineProperty(inst, "_zod", {
|
|
@@ -37420,7 +37793,7 @@ function formatError(error, _mapper) {
|
|
|
37420
37793
|
return fieldErrors;
|
|
37421
37794
|
}
|
|
37422
37795
|
|
|
37423
|
-
// node_modules/zod/v4/core/parse.js
|
|
37796
|
+
// ../../../node_modules/zod/v4/core/parse.js
|
|
37424
37797
|
var _parse = (_Err) => (schema, value, _ctx, _params) => {
|
|
37425
37798
|
const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
|
|
37426
37799
|
const result = schema._zod.run({ value, issues: [] }, ctx);
|
|
@@ -37469,7 +37842,7 @@ var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
|
|
|
37469
37842
|
} : { success: true, data: result.value };
|
|
37470
37843
|
};
|
|
37471
37844
|
var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
|
|
37472
|
-
// node_modules/zod/v4/core/regexes.js
|
|
37845
|
+
// ../../../node_modules/zod/v4/core/regexes.js
|
|
37473
37846
|
var cuid = /^[cC][^\s-]{8,}$/;
|
|
37474
37847
|
var cuid2 = /^[0-9a-z]+$/;
|
|
37475
37848
|
var ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
|
|
@@ -37527,7 +37900,7 @@ var _null = /null/i;
|
|
|
37527
37900
|
var lowercase = /^[^A-Z]*$/;
|
|
37528
37901
|
var uppercase = /^[^a-z]*$/;
|
|
37529
37902
|
|
|
37530
|
-
// node_modules/zod/v4/core/checks.js
|
|
37903
|
+
// ../../../node_modules/zod/v4/core/checks.js
|
|
37531
37904
|
var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
|
|
37532
37905
|
var _a;
|
|
37533
37906
|
inst._zod ?? (inst._zod = {});
|
|
@@ -37911,7 +38284,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
|
|
|
37911
38284
|
};
|
|
37912
38285
|
});
|
|
37913
38286
|
|
|
37914
|
-
// node_modules/zod/v4/core/doc.js
|
|
38287
|
+
// ../../../node_modules/zod/v4/core/doc.js
|
|
37915
38288
|
class Doc {
|
|
37916
38289
|
constructor(args = []) {
|
|
37917
38290
|
this.content = [];
|
|
@@ -37949,14 +38322,14 @@ class Doc {
|
|
|
37949
38322
|
}
|
|
37950
38323
|
}
|
|
37951
38324
|
|
|
37952
|
-
// node_modules/zod/v4/core/versions.js
|
|
38325
|
+
// ../../../node_modules/zod/v4/core/versions.js
|
|
37953
38326
|
var version = {
|
|
37954
38327
|
major: 4,
|
|
37955
38328
|
minor: 0,
|
|
37956
38329
|
patch: 0
|
|
37957
38330
|
};
|
|
37958
38331
|
|
|
37959
|
-
// node_modules/zod/v4/core/schemas.js
|
|
38332
|
+
// ../../../node_modules/zod/v4/core/schemas.js
|
|
37960
38333
|
var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
|
|
37961
38334
|
var _a;
|
|
37962
38335
|
inst ?? (inst = {});
|
|
@@ -39187,7 +39560,7 @@ function handleRefineResult(result, payload, input, inst) {
|
|
|
39187
39560
|
payload.issues.push(issue(_iss));
|
|
39188
39561
|
}
|
|
39189
39562
|
}
|
|
39190
|
-
// node_modules/zod/v4/locales/en.js
|
|
39563
|
+
// ../../../node_modules/zod/v4/locales/en.js
|
|
39191
39564
|
var parsedType = (data) => {
|
|
39192
39565
|
const t = typeof data;
|
|
39193
39566
|
switch (t) {
|
|
@@ -39304,7 +39677,7 @@ function en_default2() {
|
|
|
39304
39677
|
localeError: error()
|
|
39305
39678
|
};
|
|
39306
39679
|
}
|
|
39307
|
-
// node_modules/zod/v4/core/registries.js
|
|
39680
|
+
// ../../../node_modules/zod/v4/core/registries.js
|
|
39308
39681
|
var $output = Symbol("ZodOutput");
|
|
39309
39682
|
var $input = Symbol("ZodInput");
|
|
39310
39683
|
|
|
@@ -39354,7 +39727,7 @@ function registry() {
|
|
|
39354
39727
|
return new $ZodRegistry;
|
|
39355
39728
|
}
|
|
39356
39729
|
var globalRegistry = /* @__PURE__ */ registry();
|
|
39357
|
-
// node_modules/zod/v4/core/api.js
|
|
39730
|
+
// ../../../node_modules/zod/v4/core/api.js
|
|
39358
39731
|
function _string(Class2, params) {
|
|
39359
39732
|
return new Class2({
|
|
39360
39733
|
type: "string",
|
|
@@ -39789,7 +40162,7 @@ function _refine(Class2, fn, _params) {
|
|
|
39789
40162
|
});
|
|
39790
40163
|
return schema;
|
|
39791
40164
|
}
|
|
39792
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js
|
|
40165
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js
|
|
39793
40166
|
function isZ4Schema(s) {
|
|
39794
40167
|
const schema = s;
|
|
39795
40168
|
return !!schema._zod;
|
|
@@ -39851,7 +40224,7 @@ function getLiteralValue(schema) {
|
|
|
39851
40224
|
return directValue;
|
|
39852
40225
|
return;
|
|
39853
40226
|
}
|
|
39854
|
-
// node_modules/zod/v4/classic/iso.js
|
|
40227
|
+
// ../../../node_modules/zod/v4/classic/iso.js
|
|
39855
40228
|
var exports_iso = {};
|
|
39856
40229
|
__export(exports_iso, {
|
|
39857
40230
|
time: () => time2,
|
|
@@ -39892,7 +40265,7 @@ function duration2(params) {
|
|
|
39892
40265
|
return _isoDuration(ZodISODuration, params);
|
|
39893
40266
|
}
|
|
39894
40267
|
|
|
39895
|
-
// node_modules/zod/v4/classic/errors.js
|
|
40268
|
+
// ../../../node_modules/zod/v4/classic/errors.js
|
|
39896
40269
|
var initializer2 = (inst, issues) => {
|
|
39897
40270
|
$ZodError.init(inst, issues);
|
|
39898
40271
|
inst.name = "ZodError";
|
|
@@ -39921,13 +40294,13 @@ var ZodRealError = $constructor("ZodError", initializer2, {
|
|
|
39921
40294
|
Parent: Error
|
|
39922
40295
|
});
|
|
39923
40296
|
|
|
39924
|
-
// node_modules/zod/v4/classic/parse.js
|
|
40297
|
+
// ../../../node_modules/zod/v4/classic/parse.js
|
|
39925
40298
|
var parse3 = /* @__PURE__ */ _parse(ZodRealError);
|
|
39926
40299
|
var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
|
|
39927
40300
|
var safeParse3 = /* @__PURE__ */ _safeParse(ZodRealError);
|
|
39928
40301
|
var safeParseAsync2 = /* @__PURE__ */ _safeParseAsync(ZodRealError);
|
|
39929
40302
|
|
|
39930
|
-
// node_modules/zod/v4/classic/schemas.js
|
|
40303
|
+
// ../../../node_modules/zod/v4/classic/schemas.js
|
|
39931
40304
|
var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
|
|
39932
40305
|
$ZodType.init(inst, def);
|
|
39933
40306
|
inst.def = def;
|
|
@@ -40532,10 +40905,10 @@ function superRefine(fn) {
|
|
|
40532
40905
|
function preprocess(fn, schema) {
|
|
40533
40906
|
return pipe(transform(fn), schema);
|
|
40534
40907
|
}
|
|
40535
|
-
// node_modules/zod/v4/classic/external.js
|
|
40908
|
+
// ../../../node_modules/zod/v4/classic/external.js
|
|
40536
40909
|
config(en_default2());
|
|
40537
40910
|
|
|
40538
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
|
|
40911
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
|
|
40539
40912
|
var LATEST_PROTOCOL_VERSION = "2025-11-25";
|
|
40540
40913
|
var SUPPORTED_PROTOCOL_VERSIONS = [LATEST_PROTOCOL_VERSION, "2025-06-18", "2025-03-26", "2024-11-05", "2024-10-07"];
|
|
40541
40914
|
var RELATED_TASK_META_KEY = "io.modelcontextprotocol/related-task";
|
|
@@ -41367,12 +41740,12 @@ class UrlElicitationRequiredError extends McpError {
|
|
|
41367
41740
|
}
|
|
41368
41741
|
}
|
|
41369
41742
|
|
|
41370
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js
|
|
41743
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js
|
|
41371
41744
|
function isTerminal(status) {
|
|
41372
41745
|
return status === "completed" || status === "failed" || status === "cancelled";
|
|
41373
41746
|
}
|
|
41374
41747
|
|
|
41375
|
-
// node_modules/zod-to-json-schema/dist/esm/Options.js
|
|
41748
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/Options.js
|
|
41376
41749
|
var ignoreOverride = Symbol("Let zodToJsonSchema decide on which parser to use");
|
|
41377
41750
|
var defaultOptions = {
|
|
41378
41751
|
name: undefined,
|
|
@@ -41405,7 +41778,7 @@ var getDefaultOptions = (options) => typeof options === "string" ? {
|
|
|
41405
41778
|
...defaultOptions,
|
|
41406
41779
|
...options
|
|
41407
41780
|
};
|
|
41408
|
-
// node_modules/zod-to-json-schema/dist/esm/Refs.js
|
|
41781
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/Refs.js
|
|
41409
41782
|
var getRefs = (options) => {
|
|
41410
41783
|
const _options = getDefaultOptions(options);
|
|
41411
41784
|
const currentPath = _options.name !== undefined ? [..._options.basePath, _options.definitionPath, _options.name] : _options.basePath;
|
|
@@ -41424,7 +41797,7 @@ var getRefs = (options) => {
|
|
|
41424
41797
|
]))
|
|
41425
41798
|
};
|
|
41426
41799
|
};
|
|
41427
|
-
// node_modules/zod-to-json-schema/dist/esm/errorMessages.js
|
|
41800
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/errorMessages.js
|
|
41428
41801
|
function addErrorMessage(res, key, errorMessage, refs) {
|
|
41429
41802
|
if (!refs?.errorMessages)
|
|
41430
41803
|
return;
|
|
@@ -41439,7 +41812,7 @@ function setResponseValueAndErrors(res, key, value, errorMessage, refs) {
|
|
|
41439
41812
|
res[key] = value;
|
|
41440
41813
|
addErrorMessage(res, key, errorMessage, refs);
|
|
41441
41814
|
}
|
|
41442
|
-
// node_modules/zod-to-json-schema/dist/esm/getRelativePath.js
|
|
41815
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/getRelativePath.js
|
|
41443
41816
|
var getRelativePath = (pathA, pathB) => {
|
|
41444
41817
|
let i = 0;
|
|
41445
41818
|
for (;i < pathA.length && i < pathB.length; i++) {
|
|
@@ -41448,7 +41821,7 @@ var getRelativePath = (pathA, pathB) => {
|
|
|
41448
41821
|
}
|
|
41449
41822
|
return [(pathA.length - i).toString(), ...pathB.slice(i)].join("/");
|
|
41450
41823
|
};
|
|
41451
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/any.js
|
|
41824
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/any.js
|
|
41452
41825
|
function parseAnyDef(refs) {
|
|
41453
41826
|
if (refs.target !== "openAi") {
|
|
41454
41827
|
return {};
|
|
@@ -41464,7 +41837,7 @@ function parseAnyDef(refs) {
|
|
|
41464
41837
|
};
|
|
41465
41838
|
}
|
|
41466
41839
|
|
|
41467
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/array.js
|
|
41840
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/array.js
|
|
41468
41841
|
function parseArrayDef(def, refs) {
|
|
41469
41842
|
const res = {
|
|
41470
41843
|
type: "array"
|
|
@@ -41488,7 +41861,7 @@ function parseArrayDef(def, refs) {
|
|
|
41488
41861
|
return res;
|
|
41489
41862
|
}
|
|
41490
41863
|
|
|
41491
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js
|
|
41864
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js
|
|
41492
41865
|
function parseBigintDef(def, refs) {
|
|
41493
41866
|
const res = {
|
|
41494
41867
|
type: "integer",
|
|
@@ -41534,24 +41907,24 @@ function parseBigintDef(def, refs) {
|
|
|
41534
41907
|
return res;
|
|
41535
41908
|
}
|
|
41536
41909
|
|
|
41537
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js
|
|
41910
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js
|
|
41538
41911
|
function parseBooleanDef() {
|
|
41539
41912
|
return {
|
|
41540
41913
|
type: "boolean"
|
|
41541
41914
|
};
|
|
41542
41915
|
}
|
|
41543
41916
|
|
|
41544
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/branded.js
|
|
41917
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/branded.js
|
|
41545
41918
|
function parseBrandedDef(_def, refs) {
|
|
41546
41919
|
return parseDef(_def.type._def, refs);
|
|
41547
41920
|
}
|
|
41548
41921
|
|
|
41549
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/catch.js
|
|
41922
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/catch.js
|
|
41550
41923
|
var parseCatchDef = (def, refs) => {
|
|
41551
41924
|
return parseDef(def.innerType._def, refs);
|
|
41552
41925
|
};
|
|
41553
41926
|
|
|
41554
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/date.js
|
|
41927
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/date.js
|
|
41555
41928
|
function parseDateDef(def, refs, overrideDateStrategy) {
|
|
41556
41929
|
const strategy = overrideDateStrategy ?? refs.dateStrategy;
|
|
41557
41930
|
if (Array.isArray(strategy)) {
|
|
@@ -41596,7 +41969,7 @@ var integerDateParser = (def, refs) => {
|
|
|
41596
41969
|
return res;
|
|
41597
41970
|
};
|
|
41598
41971
|
|
|
41599
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/default.js
|
|
41972
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/default.js
|
|
41600
41973
|
function parseDefaultDef(_def, refs) {
|
|
41601
41974
|
return {
|
|
41602
41975
|
...parseDef(_def.innerType._def, refs),
|
|
@@ -41604,12 +41977,12 @@ function parseDefaultDef(_def, refs) {
|
|
|
41604
41977
|
};
|
|
41605
41978
|
}
|
|
41606
41979
|
|
|
41607
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/effects.js
|
|
41980
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/effects.js
|
|
41608
41981
|
function parseEffectsDef(_def, refs) {
|
|
41609
41982
|
return refs.effectStrategy === "input" ? parseDef(_def.schema._def, refs) : parseAnyDef(refs);
|
|
41610
41983
|
}
|
|
41611
41984
|
|
|
41612
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/enum.js
|
|
41985
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/enum.js
|
|
41613
41986
|
function parseEnumDef(def) {
|
|
41614
41987
|
return {
|
|
41615
41988
|
type: "string",
|
|
@@ -41617,7 +41990,7 @@ function parseEnumDef(def) {
|
|
|
41617
41990
|
};
|
|
41618
41991
|
}
|
|
41619
41992
|
|
|
41620
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js
|
|
41993
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js
|
|
41621
41994
|
var isJsonSchema7AllOfType = (type) => {
|
|
41622
41995
|
if ("type" in type && type.type === "string")
|
|
41623
41996
|
return false;
|
|
@@ -41659,7 +42032,7 @@ function parseIntersectionDef(def, refs) {
|
|
|
41659
42032
|
} : undefined;
|
|
41660
42033
|
}
|
|
41661
42034
|
|
|
41662
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/literal.js
|
|
42035
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/literal.js
|
|
41663
42036
|
function parseLiteralDef(def, refs) {
|
|
41664
42037
|
const parsedType2 = typeof def.value;
|
|
41665
42038
|
if (parsedType2 !== "bigint" && parsedType2 !== "number" && parsedType2 !== "boolean" && parsedType2 !== "string") {
|
|
@@ -41679,7 +42052,7 @@ function parseLiteralDef(def, refs) {
|
|
|
41679
42052
|
};
|
|
41680
42053
|
}
|
|
41681
42054
|
|
|
41682
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/string.js
|
|
42055
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/string.js
|
|
41683
42056
|
var emojiRegex2 = undefined;
|
|
41684
42057
|
var zodPatterns = {
|
|
41685
42058
|
cuid: /^[cC][^\s-]{8,}$/,
|
|
@@ -41976,7 +42349,7 @@ function stringifyRegExpWithFlags(regex, refs) {
|
|
|
41976
42349
|
return pattern;
|
|
41977
42350
|
}
|
|
41978
42351
|
|
|
41979
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/record.js
|
|
42352
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/record.js
|
|
41980
42353
|
function parseRecordDef(def, refs) {
|
|
41981
42354
|
if (refs.target === "openAi") {
|
|
41982
42355
|
console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");
|
|
@@ -42028,7 +42401,7 @@ function parseRecordDef(def, refs) {
|
|
|
42028
42401
|
return schema;
|
|
42029
42402
|
}
|
|
42030
42403
|
|
|
42031
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/map.js
|
|
42404
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/map.js
|
|
42032
42405
|
function parseMapDef(def, refs) {
|
|
42033
42406
|
if (refs.mapStrategy === "record") {
|
|
42034
42407
|
return parseRecordDef(def, refs);
|
|
@@ -42053,7 +42426,7 @@ function parseMapDef(def, refs) {
|
|
|
42053
42426
|
};
|
|
42054
42427
|
}
|
|
42055
42428
|
|
|
42056
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js
|
|
42429
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js
|
|
42057
42430
|
function parseNativeEnumDef(def) {
|
|
42058
42431
|
const object3 = def.values;
|
|
42059
42432
|
const actualKeys = Object.keys(def.values).filter((key) => {
|
|
@@ -42067,7 +42440,7 @@ function parseNativeEnumDef(def) {
|
|
|
42067
42440
|
};
|
|
42068
42441
|
}
|
|
42069
42442
|
|
|
42070
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/never.js
|
|
42443
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/never.js
|
|
42071
42444
|
function parseNeverDef(refs) {
|
|
42072
42445
|
return refs.target === "openAi" ? undefined : {
|
|
42073
42446
|
not: parseAnyDef({
|
|
@@ -42077,7 +42450,7 @@ function parseNeverDef(refs) {
|
|
|
42077
42450
|
};
|
|
42078
42451
|
}
|
|
42079
42452
|
|
|
42080
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/null.js
|
|
42453
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/null.js
|
|
42081
42454
|
function parseNullDef(refs) {
|
|
42082
42455
|
return refs.target === "openApi3" ? {
|
|
42083
42456
|
enum: ["null"],
|
|
@@ -42087,7 +42460,7 @@ function parseNullDef(refs) {
|
|
|
42087
42460
|
};
|
|
42088
42461
|
}
|
|
42089
42462
|
|
|
42090
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/union.js
|
|
42463
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/union.js
|
|
42091
42464
|
var primitiveMappings = {
|
|
42092
42465
|
ZodString: "string",
|
|
42093
42466
|
ZodNumber: "number",
|
|
@@ -42155,7 +42528,7 @@ var asAnyOf = (def, refs) => {
|
|
|
42155
42528
|
return anyOf.length ? { anyOf } : undefined;
|
|
42156
42529
|
};
|
|
42157
42530
|
|
|
42158
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js
|
|
42531
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js
|
|
42159
42532
|
function parseNullableDef(def, refs) {
|
|
42160
42533
|
if (["ZodString", "ZodNumber", "ZodBigInt", "ZodBoolean", "ZodNull"].includes(def.innerType._def.typeName) && (!def.innerType._def.checks || !def.innerType._def.checks.length)) {
|
|
42161
42534
|
if (refs.target === "openApi3") {
|
|
@@ -42187,7 +42560,7 @@ function parseNullableDef(def, refs) {
|
|
|
42187
42560
|
return base && { anyOf: [base, { type: "null" }] };
|
|
42188
42561
|
}
|
|
42189
42562
|
|
|
42190
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/number.js
|
|
42563
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/number.js
|
|
42191
42564
|
function parseNumberDef(def, refs) {
|
|
42192
42565
|
const res = {
|
|
42193
42566
|
type: "number"
|
|
@@ -42236,7 +42609,7 @@ function parseNumberDef(def, refs) {
|
|
|
42236
42609
|
return res;
|
|
42237
42610
|
}
|
|
42238
42611
|
|
|
42239
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/object.js
|
|
42612
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/object.js
|
|
42240
42613
|
function parseObjectDef(def, refs) {
|
|
42241
42614
|
const forceOptionalIntoNullable = refs.target === "openAi";
|
|
42242
42615
|
const result = {
|
|
@@ -42306,7 +42679,7 @@ function safeIsOptional(schema) {
|
|
|
42306
42679
|
}
|
|
42307
42680
|
}
|
|
42308
42681
|
|
|
42309
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/optional.js
|
|
42682
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/optional.js
|
|
42310
42683
|
var parseOptionalDef = (def, refs) => {
|
|
42311
42684
|
if (refs.currentPath.toString() === refs.propertyPath?.toString()) {
|
|
42312
42685
|
return parseDef(def.innerType._def, refs);
|
|
@@ -42325,7 +42698,7 @@ var parseOptionalDef = (def, refs) => {
|
|
|
42325
42698
|
} : parseAnyDef(refs);
|
|
42326
42699
|
};
|
|
42327
42700
|
|
|
42328
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js
|
|
42701
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js
|
|
42329
42702
|
var parsePipelineDef = (def, refs) => {
|
|
42330
42703
|
if (refs.pipeStrategy === "input") {
|
|
42331
42704
|
return parseDef(def.in._def, refs);
|
|
@@ -42345,12 +42718,12 @@ var parsePipelineDef = (def, refs) => {
|
|
|
42345
42718
|
};
|
|
42346
42719
|
};
|
|
42347
42720
|
|
|
42348
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/promise.js
|
|
42721
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/promise.js
|
|
42349
42722
|
function parsePromiseDef(def, refs) {
|
|
42350
42723
|
return parseDef(def.type._def, refs);
|
|
42351
42724
|
}
|
|
42352
42725
|
|
|
42353
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/set.js
|
|
42726
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/set.js
|
|
42354
42727
|
function parseSetDef(def, refs) {
|
|
42355
42728
|
const items = parseDef(def.valueType._def, {
|
|
42356
42729
|
...refs,
|
|
@@ -42370,7 +42743,7 @@ function parseSetDef(def, refs) {
|
|
|
42370
42743
|
return schema;
|
|
42371
42744
|
}
|
|
42372
42745
|
|
|
42373
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js
|
|
42746
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js
|
|
42374
42747
|
function parseTupleDef(def, refs) {
|
|
42375
42748
|
if (def.rest) {
|
|
42376
42749
|
return {
|
|
@@ -42398,24 +42771,24 @@ function parseTupleDef(def, refs) {
|
|
|
42398
42771
|
}
|
|
42399
42772
|
}
|
|
42400
42773
|
|
|
42401
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js
|
|
42774
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js
|
|
42402
42775
|
function parseUndefinedDef(refs) {
|
|
42403
42776
|
return {
|
|
42404
42777
|
not: parseAnyDef(refs)
|
|
42405
42778
|
};
|
|
42406
42779
|
}
|
|
42407
42780
|
|
|
42408
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js
|
|
42781
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js
|
|
42409
42782
|
function parseUnknownDef(refs) {
|
|
42410
42783
|
return parseAnyDef(refs);
|
|
42411
42784
|
}
|
|
42412
42785
|
|
|
42413
|
-
// node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js
|
|
42786
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js
|
|
42414
42787
|
var parseReadonlyDef = (def, refs) => {
|
|
42415
42788
|
return parseDef(def.innerType._def, refs);
|
|
42416
42789
|
};
|
|
42417
42790
|
|
|
42418
|
-
// node_modules/zod-to-json-schema/dist/esm/selectParser.js
|
|
42791
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/selectParser.js
|
|
42419
42792
|
var selectParser = (def, typeName, refs) => {
|
|
42420
42793
|
switch (typeName) {
|
|
42421
42794
|
case ZodFirstPartyTypeKind.ZodString:
|
|
@@ -42493,7 +42866,7 @@ var selectParser = (def, typeName, refs) => {
|
|
|
42493
42866
|
}
|
|
42494
42867
|
};
|
|
42495
42868
|
|
|
42496
|
-
// node_modules/zod-to-json-schema/dist/esm/parseDef.js
|
|
42869
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/parseDef.js
|
|
42497
42870
|
function parseDef(def, refs, forceResolution = false) {
|
|
42498
42871
|
const seenItem = refs.seen.get(def);
|
|
42499
42872
|
if (refs.override) {
|
|
@@ -42548,7 +42921,7 @@ var addMeta = (def, refs, jsonSchema) => {
|
|
|
42548
42921
|
}
|
|
42549
42922
|
return jsonSchema;
|
|
42550
42923
|
};
|
|
42551
|
-
// node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js
|
|
42924
|
+
// ../../../node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js
|
|
42552
42925
|
var zodToJsonSchema = (schema, options) => {
|
|
42553
42926
|
const refs = getRefs(options);
|
|
42554
42927
|
let definitions = typeof options === "object" && options.definitions ? Object.entries(options.definitions).reduce((acc, [name2, schema2]) => ({
|
|
@@ -42608,7 +42981,7 @@ var zodToJsonSchema = (schema, options) => {
|
|
|
42608
42981
|
}
|
|
42609
42982
|
return combined;
|
|
42610
42983
|
};
|
|
42611
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js
|
|
42984
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js
|
|
42612
42985
|
function getMethodLiteral(schema) {
|
|
42613
42986
|
const shape = getObjectShape(schema);
|
|
42614
42987
|
const methodSchema = shape?.method;
|
|
@@ -42629,7 +43002,7 @@ function parseWithCompat(schema, data) {
|
|
|
42629
43002
|
return result.data;
|
|
42630
43003
|
}
|
|
42631
43004
|
|
|
42632
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js
|
|
43005
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js
|
|
42633
43006
|
var DEFAULT_REQUEST_TIMEOUT_MSEC = 60000;
|
|
42634
43007
|
|
|
42635
43008
|
class Protocol {
|
|
@@ -43464,7 +43837,7 @@ function mergeCapabilities(base, additional) {
|
|
|
43464
43837
|
return result;
|
|
43465
43838
|
}
|
|
43466
43839
|
|
|
43467
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js
|
|
43840
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js
|
|
43468
43841
|
var import_ajv = __toESM(require_ajv(), 1);
|
|
43469
43842
|
var import_ajv_formats = __toESM(require_dist(), 1);
|
|
43470
43843
|
function createDefaultAjvInstance() {
|
|
@@ -43504,7 +43877,7 @@ class AjvJsonSchemaValidator {
|
|
|
43504
43877
|
}
|
|
43505
43878
|
}
|
|
43506
43879
|
|
|
43507
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js
|
|
43880
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js
|
|
43508
43881
|
class ExperimentalServerTasks {
|
|
43509
43882
|
constructor(_server) {
|
|
43510
43883
|
this._server = _server;
|
|
@@ -43582,7 +43955,7 @@ class ExperimentalServerTasks {
|
|
|
43582
43955
|
}
|
|
43583
43956
|
}
|
|
43584
43957
|
|
|
43585
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js
|
|
43958
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js
|
|
43586
43959
|
function assertToolsCallTaskCapability(requests, method, entityName) {
|
|
43587
43960
|
if (!requests) {
|
|
43588
43961
|
throw new Error(`${entityName} does not support task creation (required for ${method})`);
|
|
@@ -43617,7 +43990,7 @@ function assertClientRequestTaskCapability(requests, method, entityName) {
|
|
|
43617
43990
|
}
|
|
43618
43991
|
}
|
|
43619
43992
|
|
|
43620
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js
|
|
43993
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js
|
|
43621
43994
|
class Server extends Protocol {
|
|
43622
43995
|
constructor(_serverInfo, options) {
|
|
43623
43996
|
super(options);
|
|
@@ -43950,10 +44323,10 @@ class Server extends Protocol {
|
|
|
43950
44323
|
}
|
|
43951
44324
|
}
|
|
43952
44325
|
|
|
43953
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
44326
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
43954
44327
|
import process2 from "process";
|
|
43955
44328
|
|
|
43956
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js
|
|
44329
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js
|
|
43957
44330
|
class ReadBuffer {
|
|
43958
44331
|
append(chunk) {
|
|
43959
44332
|
this._buffer = this._buffer ? Buffer.concat([this._buffer, chunk]) : chunk;
|
|
@@ -43983,7 +44356,7 @@ function serializeMessage(message) {
|
|
|
43983
44356
|
`;
|
|
43984
44357
|
}
|
|
43985
44358
|
|
|
43986
|
-
// node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
44359
|
+
// ../../../node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js
|
|
43987
44360
|
class StdioServerTransport {
|
|
43988
44361
|
constructor(_stdin = process2.stdin, _stdout = process2.stdout) {
|
|
43989
44362
|
this._stdin = _stdin;
|