pipebrain-mcp 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.js +26 -10
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -15098,6 +15098,13 @@ var DisplayIdError = class extends Error {
|
|
|
15098
15098
|
};
|
|
15099
15099
|
var PROJECT_KEY = /^[A-Z]{2,5}$/;
|
|
15100
15100
|
var DELIVERABLE_RE = /^([A-Z]{2,5})-C([1-9][0-9]*)\/([a-z0-9]+)$/;
|
|
15101
|
+
var INT4_MAX = 2147483647;
|
|
15102
|
+
function matchDisplayId(re, value, numberGroup) {
|
|
15103
|
+
const match = re.exec(value);
|
|
15104
|
+
if (match === null)
|
|
15105
|
+
return null;
|
|
15106
|
+
return Number(match[numberGroup]) > INT4_MAX ? null : match;
|
|
15107
|
+
}
|
|
15101
15108
|
function assertKey(key) {
|
|
15102
15109
|
if (!PROJECT_KEY.test(key)) {
|
|
15103
15110
|
throw new DisplayIdError("project key must be 2\u20135 uppercase letters (A\u2013Z)", key);
|
|
@@ -15114,7 +15121,7 @@ function formatContentDisplayId(key, number4) {
|
|
|
15114
15121
|
return `${key}-C${number4}`;
|
|
15115
15122
|
}
|
|
15116
15123
|
function parseDeliverableDisplayId(value) {
|
|
15117
|
-
const match = DELIVERABLE_RE
|
|
15124
|
+
const match = matchDisplayId(DELIVERABLE_RE, value, 2);
|
|
15118
15125
|
if (match === null) {
|
|
15119
15126
|
throw new DisplayIdError("not a valid deliverable display id (expected `KEY-C{N}/{platform}`)", value);
|
|
15120
15127
|
}
|
|
@@ -15585,6 +15592,9 @@ var orgInstructionSchema = external_exports.object({
|
|
|
15585
15592
|
});
|
|
15586
15593
|
|
|
15587
15594
|
// ../../libs/domain/dist/inputs.js
|
|
15595
|
+
var int4Schema = positiveIntSchema.max(2147483647, {
|
|
15596
|
+
message: "must be no greater than 2147483647"
|
|
15597
|
+
});
|
|
15588
15598
|
var criterionInputSchema = external_exports.strictObject({
|
|
15589
15599
|
text: markdownSchema.min(1, { message: "criterion text must not be empty" }),
|
|
15590
15600
|
verification: verificationSchema.optional(),
|
|
@@ -15699,7 +15709,7 @@ var setCriteriaInputSchema = external_exports.strictObject({
|
|
|
15699
15709
|
var setCriterionStateInputSchema = external_exports.strictObject({
|
|
15700
15710
|
criterionId: uuidSchema.optional(),
|
|
15701
15711
|
issue: issueRefSchema.optional(),
|
|
15702
|
-
criterionNumber:
|
|
15712
|
+
criterionNumber: int4Schema.optional(),
|
|
15703
15713
|
state: criterionStateSchema,
|
|
15704
15714
|
evidence: markdownSchema.optional()
|
|
15705
15715
|
}).refine((v) => {
|
|
@@ -15718,9 +15728,7 @@ var askQuestionsInputSchema = external_exports.strictObject({
|
|
|
15718
15728
|
issue: issueRefSchema,
|
|
15719
15729
|
questions: external_exports.array(questionInputSchema).min(1, { message: "ask at least one question" })
|
|
15720
15730
|
});
|
|
15721
|
-
var questionNumberSchema =
|
|
15722
|
-
message: "question number is out of range"
|
|
15723
|
-
});
|
|
15731
|
+
var questionNumberSchema = int4Schema;
|
|
15724
15732
|
var withdrawQuestionInputSchema = external_exports.strictObject({
|
|
15725
15733
|
issue: issueRefSchema,
|
|
15726
15734
|
number: questionNumberSchema
|
|
@@ -15755,7 +15763,8 @@ var updateRequirementInputSchema = external_exports.strictObject({
|
|
|
15755
15763
|
});
|
|
15756
15764
|
var approveRequirementInputSchema = external_exports.strictObject({
|
|
15757
15765
|
requirement: requirementRefSchema,
|
|
15758
|
-
|
|
15766
|
+
// → requirement_revisions.revision_number, an `integer` column (PIPE-149).
|
|
15767
|
+
revision: int4Schema.optional()
|
|
15759
15768
|
});
|
|
15760
15769
|
var createDecisionInputSchema = external_exports.strictObject({
|
|
15761
15770
|
project: projectRefSchema,
|
|
@@ -15879,7 +15888,8 @@ var updateSecretDescriptionInputSchema = external_exports.strictObject({
|
|
|
15879
15888
|
});
|
|
15880
15889
|
var rollbackSecretInputSchema = external_exports.strictObject({
|
|
15881
15890
|
env: external_exports.string().min(1, { message: "environment must not be empty" }),
|
|
15882
|
-
version
|
|
15891
|
+
// → secret_versions.version, an `integer` column (PIPE-149).
|
|
15892
|
+
version: int4Schema
|
|
15883
15893
|
});
|
|
15884
15894
|
var secretRefSchema = external_exports.strictObject({
|
|
15885
15895
|
project: projectKeySchema,
|
|
@@ -15999,7 +16009,8 @@ var listAssetsFilterSchema = external_exports.strictObject({
|
|
|
15999
16009
|
var createChatMessageReferenceInputSchema = external_exports.strictObject({
|
|
16000
16010
|
entityType: chatEntityTypeSchema,
|
|
16001
16011
|
entityId: uuidSchema,
|
|
16002
|
-
|
|
16012
|
+
// → requirement_revisions.revision_number, an `integer` column (PIPE-149).
|
|
16013
|
+
revision: int4Schema.optional()
|
|
16003
16014
|
});
|
|
16004
16015
|
var createChatMessageInputSchema = external_exports.strictObject({
|
|
16005
16016
|
body: external_exports.string().min(1, { message: "message body must not be empty" }).max(8e3, { message: "message body must be at most 8000 characters" }),
|
|
@@ -17188,10 +17199,15 @@ Every loose end has one destination, and none of them is prose. Anything you not
|
|
|
17188
17199
|
// `issue` is OPTIONAL: the criterionId-only form needs no issue ref. The
|
|
17189
17200
|
// exactly-one-of rule can't be expressed in a raw shape, so the handler
|
|
17190
17201
|
// enforces it via the shared `@pipeline/domain` refine (mirror of §7).
|
|
17202
|
+
//
|
|
17203
|
+
// `criterionNumber` takes `int4Schema` so the ADVERTISED JSON Schema carries
|
|
17204
|
+
// the real ceiling (PIPE-149) — hand-rolling it from `positiveIntSchema` told
|
|
17205
|
+
// clients the maximum was 2^53-1 while the column and the API both stop at
|
|
17206
|
+
// 2,147,483,647, so a client refusal that should happen never did.
|
|
17191
17207
|
inputSchema: {
|
|
17192
17208
|
issue: issueRefSchema.optional(),
|
|
17193
17209
|
criterionId: uuidSchema.optional(),
|
|
17194
|
-
criterionNumber:
|
|
17210
|
+
criterionNumber: int4Schema.optional(),
|
|
17195
17211
|
state: criterionStateSchema,
|
|
17196
17212
|
evidence: markdownSchema.optional()
|
|
17197
17213
|
}
|
|
@@ -17459,7 +17475,7 @@ function loadMcpConfig() {
|
|
|
17459
17475
|
}
|
|
17460
17476
|
|
|
17461
17477
|
// src/version.ts
|
|
17462
|
-
var VERSION = "0.
|
|
17478
|
+
var VERSION = "0.30.0";
|
|
17463
17479
|
|
|
17464
17480
|
// src/main.ts
|
|
17465
17481
|
var config2 = loadMcpConfig();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pipebrain-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "Pipebrain MCP server for Claude Code and Claude Desktop — issues, requirements, content, assets, and metadata-only secrets over the Pipebrain API.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|