@sirius-mcp/mcp 1.5.2 → 1.7.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/README.md +19 -4
- package/dist/adapters/fs/structure.d.ts.map +1 -1
- package/dist/adapters/fs/structure.js +16 -0
- package/dist/adapters/fs/structure.js.map +1 -1
- package/dist/adapters/mcp/crawl.js +1 -1
- package/dist/adapters/mcp/crawl.js.map +1 -1
- package/dist/adapters/mcp/get.js +1 -1
- package/dist/adapters/mcp/get.js.map +1 -1
- package/dist/adapters/mcp/index.d.ts +2 -0
- package/dist/adapters/mcp/index.d.ts.map +1 -1
- package/dist/adapters/mcp/index.js +5 -1
- package/dist/adapters/mcp/index.js.map +1 -1
- package/dist/adapters/mcp/init.js +1 -1
- package/dist/adapters/mcp/init.js.map +1 -1
- package/dist/adapters/mcp/list.js +1 -1
- package/dist/adapters/mcp/list.js.map +1 -1
- package/dist/adapters/mcp/query-counter.d.ts +17 -0
- package/dist/adapters/mcp/query-counter.d.ts.map +1 -0
- package/dist/adapters/mcp/query-counter.js +30 -0
- package/dist/adapters/mcp/query-counter.js.map +1 -0
- package/dist/adapters/mcp/reindex.js +1 -1
- package/dist/adapters/mcp/reindex.js.map +1 -1
- package/dist/adapters/mcp/resources.d.ts +4 -1
- package/dist/adapters/mcp/resources.d.ts.map +1 -1
- package/dist/adapters/mcp/resources.js +50 -1
- package/dist/adapters/mcp/resources.js.map +1 -1
- package/dist/adapters/mcp/search.js +1 -1
- package/dist/adapters/mcp/search.js.map +1 -1
- package/dist/adapters/mcp/upsert.js +1 -1
- package/dist/adapters/mcp/upsert.js.map +1 -1
- package/dist/adapters/update/check.d.ts +27 -0
- package/dist/adapters/update/check.d.ts.map +1 -1
- package/dist/adapters/update/check.js +40 -2
- package/dist/adapters/update/check.js.map +1 -1
- package/dist/app/crawl.js +3 -0
- package/dist/app/crawl.js.map +1 -1
- package/dist/app/drift.d.ts +61 -0
- package/dist/app/drift.d.ts.map +1 -0
- package/dist/app/drift.js +193 -0
- package/dist/app/drift.js.map +1 -0
- package/dist/app/list.d.ts +2 -2
- package/dist/app/precedence-contract.d.ts +14 -0
- package/dist/app/precedence-contract.d.ts.map +1 -0
- package/dist/app/precedence-contract.js +51 -0
- package/dist/app/precedence-contract.js.map +1 -0
- package/dist/app/upsert.d.ts +14 -2
- package/dist/app/upsert.d.ts.map +1 -1
- package/dist/domain/source-adapter.d.ts +1 -0
- package/dist/domain/source-adapter.d.ts.map +1 -1
- package/dist/domain/source-adapter.js.map +1 -1
- package/dist/domain/staleness.d.ts +30 -0
- package/dist/domain/staleness.d.ts.map +1 -0
- package/dist/domain/staleness.js +71 -0
- package/dist/domain/staleness.js.map +1 -0
- package/dist/errors.d.ts +30 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +88 -16
- package/dist/errors.js.map +1 -1
- package/dist/installer/cli-parser.d.ts.map +1 -1
- package/dist/installer/cli-parser.js +19 -5
- package/dist/installer/cli-parser.js.map +1 -1
- package/dist/installer/cli.d.ts.map +1 -1
- package/dist/installer/cli.js +73 -37
- package/dist/installer/cli.js.map +1 -1
- package/dist/installer/contract-seed.d.ts +6 -0
- package/dist/installer/contract-seed.d.ts.map +1 -0
- package/dist/installer/contract-seed.js +140 -0
- package/dist/installer/contract-seed.js.map +1 -0
- package/dist/installer/dispatch.d.ts.map +1 -1
- package/dist/installer/dispatch.js +3 -1
- package/dist/installer/dispatch.js.map +1 -1
- package/dist/installer/drift-command.d.ts +15 -0
- package/dist/installer/drift-command.d.ts.map +1 -0
- package/dist/installer/drift-command.js +78 -0
- package/dist/installer/drift-command.js.map +1 -0
- package/dist/installer/index.d.ts +4 -0
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +34 -5
- package/dist/installer/index.js.map +1 -1
- package/dist/installer/instruction-targets.d.ts +33 -0
- package/dist/installer/instruction-targets.d.ts.map +1 -0
- package/dist/installer/instruction-targets.js +199 -0
- package/dist/installer/instruction-targets.js.map +1 -0
- package/dist/installer/precedence.d.ts +59 -0
- package/dist/installer/precedence.d.ts.map +1 -0
- package/dist/installer/precedence.js +218 -0
- package/dist/installer/precedence.js.map +1 -0
- package/dist/installer/snippet-context.d.ts +49 -0
- package/dist/installer/snippet-context.d.ts.map +1 -0
- package/dist/installer/snippet-context.js +93 -0
- package/dist/installer/snippet-context.js.map +1 -0
- package/dist/installer/snippet-engine.d.ts +21 -0
- package/dist/installer/snippet-engine.d.ts.map +1 -0
- package/dist/installer/snippet-engine.js +122 -0
- package/dist/installer/snippet-engine.js.map +1 -0
- package/dist/installer/snippet-exec.d.ts +4 -0
- package/dist/installer/snippet-exec.d.ts.map +1 -0
- package/dist/installer/snippet-exec.js +105 -0
- package/dist/installer/snippet-exec.js.map +1 -0
- package/dist/installer/snippet-offer.d.ts +21 -0
- package/dist/installer/snippet-offer.d.ts.map +1 -0
- package/dist/installer/snippet-offer.js +108 -0
- package/dist/installer/snippet-offer.js.map +1 -0
- package/dist/installer/snippet-report.d.ts +14 -0
- package/dist/installer/snippet-report.d.ts.map +1 -0
- package/dist/installer/snippet-report.js +217 -0
- package/dist/installer/snippet-report.js.map +1 -0
- package/dist/installer/snippet.d.ts +4 -0
- package/dist/installer/snippet.d.ts.map +1 -0
- package/dist/installer/snippet.js +158 -0
- package/dist/installer/snippet.js.map +1 -0
- package/dist/installer/tui-render.d.ts +3 -0
- package/dist/installer/tui-render.d.ts.map +1 -0
- package/dist/installer/tui-render.js +31 -0
- package/dist/installer/tui-render.js.map +1 -0
- package/dist/installer/tui.d.ts +5 -3
- package/dist/installer/tui.d.ts.map +1 -1
- package/dist/installer/tui.js +7 -24
- package/dist/installer/tui.js.map +1 -1
- package/dist/installer/types.d.ts +42 -2
- package/dist/installer/types.d.ts.map +1 -1
- package/dist/installer/types.js.map +1 -1
- package/dist/installer/version.d.ts +2 -0
- package/dist/installer/version.d.ts.map +1 -0
- package/dist/installer/version.js +18 -0
- package/dist/installer/version.js.map +1 -0
- package/dist/schemas/document.d.ts +24 -2
- package/dist/schemas/document.d.ts.map +1 -1
- package/dist/schemas/document.js +52 -0
- package/dist/schemas/document.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -0
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type DurationComponents } from "../schemas/document.js";
|
|
2
|
+
export type DurationParts = DurationComponents;
|
|
3
|
+
export type Staleness = {
|
|
4
|
+
readonly verdict: "ok";
|
|
5
|
+
readonly overdueDays: 0;
|
|
6
|
+
} | {
|
|
7
|
+
readonly verdict: "stale";
|
|
8
|
+
readonly overdueDays: number;
|
|
9
|
+
} | {
|
|
10
|
+
readonly verdict: "invalid";
|
|
11
|
+
readonly overdueDays: 0;
|
|
12
|
+
};
|
|
13
|
+
export type ComputedStaleness = Extract<Staleness, {
|
|
14
|
+
verdict: "ok" | "stale";
|
|
15
|
+
}>;
|
|
16
|
+
export declare function parseDuration(duration: string): DurationParts | null;
|
|
17
|
+
/**
|
|
18
|
+
* Adds an ISO 8601 duration to a YYYY-MM-DD date using UTC calendar math.
|
|
19
|
+
* Month/year overflow clamps to the last valid day (Jan 31 + P1M -> Feb 28/29).
|
|
20
|
+
* Returns null when the date or duration cannot be parsed into a valid date.
|
|
21
|
+
*/
|
|
22
|
+
export declare function addDuration(updated: string, duration: string): Date | null;
|
|
23
|
+
/**
|
|
24
|
+
* Classifies staleness against a calendar date (YYYY-MM-DD, UTC).
|
|
25
|
+
* Stale only when today is strictly after updated + stale_after; the boundary
|
|
26
|
+
* day itself is still fresh. Unparseable durations or non-calendar dates yield
|
|
27
|
+
* verdict "invalid" — callers must surface it, never treat it as fresh.
|
|
28
|
+
*/
|
|
29
|
+
export declare function stalenessOf(updated: string, staleAfter: string, today: string): Staleness;
|
|
30
|
+
//# sourceMappingURL=staleness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"staleness.d.ts","sourceRoot":"","sources":["../../src/domain/staleness.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAE/C,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;CAAE,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,EAAE;IAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAAA;CAAE,CAAC,CAAC;AAIhF,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAKpE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAM1E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAezF"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { durationComponents, isIsoCalendarDate, isValidStaleAfterDuration, } from "../schemas/document.js";
|
|
2
|
+
const MS_PER_DAY = 86_400_000;
|
|
3
|
+
export function parseDuration(duration) {
|
|
4
|
+
if (!isValidStaleAfterDuration(duration)) {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
return durationComponents(duration);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Adds an ISO 8601 duration to a YYYY-MM-DD date using UTC calendar math.
|
|
11
|
+
* Month/year overflow clamps to the last valid day (Jan 31 + P1M -> Feb 28/29).
|
|
12
|
+
* Returns null when the date or duration cannot be parsed into a valid date.
|
|
13
|
+
*/
|
|
14
|
+
export function addDuration(updated, duration) {
|
|
15
|
+
const parts = parseDuration(duration);
|
|
16
|
+
if (!parts) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return addDurationParts(updated, parts);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Classifies staleness against a calendar date (YYYY-MM-DD, UTC).
|
|
23
|
+
* Stale only when today is strictly after updated + stale_after; the boundary
|
|
24
|
+
* day itself is still fresh. Unparseable durations or non-calendar dates yield
|
|
25
|
+
* verdict "invalid" — callers must surface it, never treat it as fresh.
|
|
26
|
+
*/
|
|
27
|
+
export function stalenessOf(updated, staleAfter, today) {
|
|
28
|
+
const parts = parseDuration(staleAfter);
|
|
29
|
+
const todayDate = utcDateAtMidnight(today);
|
|
30
|
+
if (!parts || !todayDate) {
|
|
31
|
+
return invalid();
|
|
32
|
+
}
|
|
33
|
+
const expiry = addDurationParts(updated, parts);
|
|
34
|
+
if (!expiry) {
|
|
35
|
+
return invalid();
|
|
36
|
+
}
|
|
37
|
+
const diffDays = Math.round((todayDate.getTime() - expiry.getTime()) / MS_PER_DAY);
|
|
38
|
+
if (diffDays > 0) {
|
|
39
|
+
return { verdict: "stale", overdueDays: diffDays };
|
|
40
|
+
}
|
|
41
|
+
return { verdict: "ok", overdueDays: 0 };
|
|
42
|
+
}
|
|
43
|
+
function invalid() {
|
|
44
|
+
return { verdict: "invalid", overdueDays: 0 };
|
|
45
|
+
}
|
|
46
|
+
function addDurationParts(updated, parts) {
|
|
47
|
+
const start = utcDateAtMidnight(updated);
|
|
48
|
+
if (!start) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const withCalendar = addCalendarMonths(start, parts.years, parts.months);
|
|
52
|
+
const expiry = new Date(withCalendar.getTime() + (parts.weeks * 7 + parts.days) * MS_PER_DAY);
|
|
53
|
+
return Number.isNaN(expiry.getTime()) ? null : expiry;
|
|
54
|
+
}
|
|
55
|
+
function utcDateAtMidnight(isoDate) {
|
|
56
|
+
if (!isIsoCalendarDate(isoDate)) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
const [year, month, day] = isoDate.split("-").map(Number);
|
|
60
|
+
return new Date(Date.UTC(year, month - 1, day));
|
|
61
|
+
}
|
|
62
|
+
function addCalendarMonths(date, years, months) {
|
|
63
|
+
const shifted = new Date(Date.UTC(date.getUTCFullYear() + years, date.getUTCMonth() + months, 1));
|
|
64
|
+
const lastDay = daysInUtcMonth(shifted.getUTCFullYear(), shifted.getUTCMonth());
|
|
65
|
+
shifted.setUTCDate(Math.min(date.getUTCDate(), lastDay));
|
|
66
|
+
return shifted;
|
|
67
|
+
}
|
|
68
|
+
function daysInUtcMonth(year, monthIndex) {
|
|
69
|
+
return new Date(Date.UTC(year, monthIndex + 1, 0)).getUTCDate();
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=staleness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"staleness.js","sourceRoot":"","sources":["../../src/domain/staleness.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -1,13 +1,36 @@
|
|
|
1
|
-
export
|
|
2
|
-
code: string;
|
|
3
|
-
message: string;
|
|
4
|
-
details?: Record<string, unknown>;
|
|
5
|
-
}
|
|
1
|
+
export type CanonicalErrorCode = "MISSING_REQUIRED_FIELD" | "INVALID_FRONTMATTER" | "INVALID_PATH" | "DOCUMENT_NOT_FOUND" | "QUERY_EMPTY" | "LIMIT_OUT_OF_BOUNDS" | "VALIDATION_ERROR" | "LICENSE_WRITE_BLOCKED" | "LICENSE_BLOCKED" | "ALREADY_INITIALIZED" | "INTERNAL_ERROR" | string;
|
|
6
2
|
export interface McpErrorDetails {
|
|
7
3
|
field?: string;
|
|
8
4
|
path?: string;
|
|
5
|
+
tool?: string;
|
|
6
|
+
expected?: string;
|
|
7
|
+
received?: unknown;
|
|
9
8
|
[key: string]: unknown;
|
|
10
9
|
}
|
|
10
|
+
export interface McpError {
|
|
11
|
+
status?: "refused";
|
|
12
|
+
code: string;
|
|
13
|
+
message: string;
|
|
14
|
+
reason?: string;
|
|
15
|
+
next_action?: string;
|
|
16
|
+
details?: McpErrorDetails;
|
|
17
|
+
}
|
|
18
|
+
export interface McpRefusal extends McpError {
|
|
19
|
+
status: "refused";
|
|
20
|
+
code: string;
|
|
21
|
+
message: string;
|
|
22
|
+
reason: string;
|
|
23
|
+
next_action: string;
|
|
24
|
+
details?: McpErrorDetails;
|
|
25
|
+
}
|
|
26
|
+
export interface McpOk<T = unknown> {
|
|
27
|
+
status: "ok";
|
|
28
|
+
data: T;
|
|
29
|
+
}
|
|
30
|
+
export type McpOutcome<T = unknown> = McpOk<T> | McpRefusal;
|
|
31
|
+
export declare function isMcpRefusal(error: unknown): error is McpRefusal;
|
|
32
|
+
export declare function mcpRefusal(code: string, message: string, reason: string, nextAction: string, details?: McpErrorDetails): McpRefusal;
|
|
33
|
+
export declare function mcpError(code: string, message: string, details?: McpErrorDetails): McpError;
|
|
11
34
|
export declare function toMcpError(error: unknown, fallbackCode?: string): McpError;
|
|
12
35
|
export declare function toMcpToolResult(error: McpError): {
|
|
13
36
|
content: [{
|
|
@@ -16,5 +39,6 @@ export declare function toMcpToolResult(error: McpError): {
|
|
|
16
39
|
}];
|
|
17
40
|
isError: true;
|
|
18
41
|
};
|
|
19
|
-
export declare function
|
|
42
|
+
export declare function deriveReason(code: string, message: string): string;
|
|
43
|
+
export declare function deriveNextAction(code: string, _message: string, details?: McpErrorDetails): string;
|
|
20
44
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,kBAAkB,GAC1B,wBAAwB,GACxB,qBAAqB,GACrB,cAAc,GACd,oBAAoB,GACpB,aAAa,GACb,qBAAqB,GACrB,kBAAkB,GAClB,uBAAuB,GACvB,iBAAiB,GACjB,qBAAqB,GACrB,gBAAgB,GAChB,MAAM,CAAC;AAEX,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,UAAW,SAAQ,QAAQ;IAC1C,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,OAAO;IAChC,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;AAE5D,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAUhE;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,eAAe,GACxB,UAAU,CASZ;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,QAAQ,CAWV;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,EACd,YAAY,SAAmB,GAC9B,QAAQ,CAoBV;AAgCD,wBAAgB,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG;IAChD,OAAO,EAAE,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1C,OAAO,EAAE,IAAI,CAAC;CACf,CAqBA;AAqCD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,eAAe,GACxB,MAAM,CAcR"}
|
package/dist/errors.js
CHANGED
|
@@ -1,4 +1,35 @@
|
|
|
1
1
|
import { ZodError } from "zod";
|
|
2
|
+
export function isMcpRefusal(error) {
|
|
3
|
+
return (typeof error === "object" &&
|
|
4
|
+
error !== null &&
|
|
5
|
+
error.status === "refused" &&
|
|
6
|
+
typeof error.code === "string" &&
|
|
7
|
+
typeof error.message === "string" &&
|
|
8
|
+
typeof error.reason === "string" &&
|
|
9
|
+
typeof error.next_action === "string");
|
|
10
|
+
}
|
|
11
|
+
export function mcpRefusal(code, message, reason, nextAction, details) {
|
|
12
|
+
return {
|
|
13
|
+
status: "refused",
|
|
14
|
+
code,
|
|
15
|
+
message,
|
|
16
|
+
reason,
|
|
17
|
+
next_action: nextAction,
|
|
18
|
+
details,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export function mcpError(code, message, details) {
|
|
22
|
+
const reason = deriveReason(code, message);
|
|
23
|
+
const nextAction = deriveNextAction(code, message, details);
|
|
24
|
+
return {
|
|
25
|
+
status: "refused",
|
|
26
|
+
code,
|
|
27
|
+
message,
|
|
28
|
+
reason,
|
|
29
|
+
next_action: nextAction,
|
|
30
|
+
details,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
2
33
|
export function toMcpError(error, fallbackCode = "INTERNAL_ERROR") {
|
|
3
34
|
const zod = zodErrorDetails(error);
|
|
4
35
|
if (zod) {
|
|
@@ -12,15 +43,9 @@ export function toMcpError(error, fallbackCode = "INTERNAL_ERROR") {
|
|
|
12
43
|
return error;
|
|
13
44
|
}
|
|
14
45
|
if (error instanceof Error) {
|
|
15
|
-
return
|
|
16
|
-
code: fallbackCode,
|
|
17
|
-
message: error.message,
|
|
18
|
-
};
|
|
46
|
+
return mcpError(fallbackCode, error.message);
|
|
19
47
|
}
|
|
20
|
-
return
|
|
21
|
-
code: fallbackCode,
|
|
22
|
-
message: typeof error === "string" ? error : String(error),
|
|
23
|
-
};
|
|
48
|
+
return mcpError(fallbackCode, typeof error === "string" ? error : String(error));
|
|
24
49
|
}
|
|
25
50
|
function zodErrorDetails(error) {
|
|
26
51
|
if (!(error instanceof ZodError)) {
|
|
@@ -28,9 +53,15 @@ function zodErrorDetails(error) {
|
|
|
28
53
|
}
|
|
29
54
|
const firstIssue = error.issues[0];
|
|
30
55
|
const field = firstIssue?.path.length ? String(firstIssue.path[0]) : undefined;
|
|
56
|
+
const message = `Validation failed: ${error.issues.map((issue) => issue.message).join("; ")}`;
|
|
31
57
|
return {
|
|
58
|
+
status: "refused",
|
|
32
59
|
code: "VALIDATION_ERROR",
|
|
33
|
-
message
|
|
60
|
+
message,
|
|
61
|
+
reason: "Input arguments failed schema validation constraints.",
|
|
62
|
+
next_action: field
|
|
63
|
+
? `Correct the parameter '${field}' to match the expected format and constraints, then retry.`
|
|
64
|
+
: "Check the tool arguments against its input schema and retry with valid parameters.",
|
|
34
65
|
details: { issues: error.issues, ...(field ? { field } : {}) },
|
|
35
66
|
};
|
|
36
67
|
}
|
|
@@ -42,17 +73,23 @@ function codedErrorDetails(error) {
|
|
|
42
73
|
if (typeof code !== "string") {
|
|
43
74
|
return null;
|
|
44
75
|
}
|
|
45
|
-
return
|
|
46
|
-
code,
|
|
47
|
-
message: error.message,
|
|
48
|
-
};
|
|
76
|
+
return mcpError(code, error.message);
|
|
49
77
|
}
|
|
50
78
|
export function toMcpToolResult(error) {
|
|
79
|
+
const refusal = {
|
|
80
|
+
status: "refused",
|
|
81
|
+
code: error.code,
|
|
82
|
+
message: error.message,
|
|
83
|
+
reason: error.reason ?? deriveReason(error.code, error.message),
|
|
84
|
+
next_action: error.next_action ??
|
|
85
|
+
deriveNextAction(error.code, error.message, error.details),
|
|
86
|
+
details: error.details,
|
|
87
|
+
};
|
|
51
88
|
return {
|
|
52
89
|
content: [
|
|
53
90
|
{
|
|
54
91
|
type: "text",
|
|
55
|
-
text: JSON.stringify(
|
|
92
|
+
text: JSON.stringify(refusal, null, 2),
|
|
56
93
|
},
|
|
57
94
|
],
|
|
58
95
|
isError: true,
|
|
@@ -66,7 +103,42 @@ function isMcpError(error) {
|
|
|
66
103
|
"message" in error &&
|
|
67
104
|
typeof error.message === "string");
|
|
68
105
|
}
|
|
69
|
-
|
|
70
|
-
|
|
106
|
+
const REASONS = {
|
|
107
|
+
VALIDATION_ERROR: "Input arguments failed schema validation constraints.",
|
|
108
|
+
MISSING_REQUIRED_FIELD: "A required property was not provided in the tool call.",
|
|
109
|
+
INVALID_PATH: "Requested path violates containment within .context store boundary.",
|
|
110
|
+
NOT_FOUND: "No document exists matching the requested type and slug ID.",
|
|
111
|
+
DOCUMENT_NOT_FOUND: "No document exists matching the requested type and slug ID.",
|
|
112
|
+
QUERY_EMPTY: "Search requires non-whitespace search terms.",
|
|
113
|
+
LIMIT_OUT_OF_BOUNDS: "Requested limit is outside the permissible pagination window (1 to 5).",
|
|
114
|
+
ALREADY_INITIALIZED: "The target project already has an active Sirius context store.",
|
|
115
|
+
LICENSE_WRITE_BLOCKED: "Context write is blocked under commercial enterprise mode without active license.",
|
|
116
|
+
LICENSE_BLOCKED: "Access to context is restricted under enterprise hard gate without valid credentials.",
|
|
117
|
+
};
|
|
118
|
+
const STATIC_NEXT_ACTIONS = {
|
|
119
|
+
INVALID_PATH: "Use a relative path inside .context/ (e.g. '.context/{type}/{id}.md') without '..' path traversal.",
|
|
120
|
+
NOT_FOUND: "Run 'context_search' with keywords or 'context_list' to discover valid document IDs before retrying 'context_get'.",
|
|
121
|
+
DOCUMENT_NOT_FOUND: "Run 'context_search' with keywords or 'context_list' to discover valid document IDs before retrying 'context_get'.",
|
|
122
|
+
QUERY_EMPTY: "Provide a search string containing at least 2 characters describing the topic, rule, or decision.",
|
|
123
|
+
LIMIT_OUT_OF_BOUNDS: "Set the 'limit' parameter to an integer between 1 and 5 (default is 5).",
|
|
124
|
+
ALREADY_INITIALIZED: "Use 'context_list' or 'context_search' to explore documents, or 'context_upsert' to create new ones.",
|
|
125
|
+
LICENSE_WRITE_BLOCKED: "Provide a valid SIRIUS_LICENSE_KEY or switch to solo community mode.",
|
|
126
|
+
LICENSE_BLOCKED: "Verify your license configuration or contact your Sirius administrator.",
|
|
127
|
+
};
|
|
128
|
+
export function deriveReason(code, message) {
|
|
129
|
+
return REASONS[code] ?? message;
|
|
130
|
+
}
|
|
131
|
+
export function deriveNextAction(code, _message, details) {
|
|
132
|
+
const field = details?.field;
|
|
133
|
+
if (code === "VALIDATION_ERROR") {
|
|
134
|
+
return field
|
|
135
|
+
? `Correct the parameter '${field}' to match the expected format and constraints, then retry.`
|
|
136
|
+
: "Check the tool arguments against its input schema and retry with valid parameters.";
|
|
137
|
+
}
|
|
138
|
+
if (code === "MISSING_REQUIRED_FIELD") {
|
|
139
|
+
return `Provide a non-empty value for the required field '${field || "parameter"}' and re-invoke the tool.`;
|
|
140
|
+
}
|
|
141
|
+
return (STATIC_NEXT_ACTIONS[code] ??
|
|
142
|
+
"Review the error details and retry the tool invocation with adjusted parameters.");
|
|
71
143
|
}
|
|
72
144
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-parser.d.ts","sourceRoot":"","sources":["../../src/installer/cli-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-parser.d.ts","sourceRoot":"","sources":["../../src/installer/cli-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,YAAY,CAAC;AA0DpB,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,CAoCnE"}
|
|
@@ -39,6 +39,14 @@ function parseBooleanFlag(arg, options) {
|
|
|
39
39
|
options.stdio = true;
|
|
40
40
|
return true;
|
|
41
41
|
}
|
|
42
|
+
if (arg === "--status") {
|
|
43
|
+
options.status = true;
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
if (arg === "--remove") {
|
|
47
|
+
options.remove = true;
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
42
50
|
return false;
|
|
43
51
|
}
|
|
44
52
|
export function parseInstallerArgs(args) {
|
|
@@ -52,20 +60,26 @@ export function parseInstallerArgs(args) {
|
|
|
52
60
|
force: false,
|
|
53
61
|
stdio: false,
|
|
54
62
|
};
|
|
55
|
-
const subcommands = ["install", "doctor", "uninstall", "setup"];
|
|
63
|
+
const subcommands = ["install", "doctor", "uninstall", "setup", "snippet", "drift"];
|
|
64
|
+
const extraArgs = [];
|
|
65
|
+
let subcommandAssigned = false;
|
|
56
66
|
for (let i = 0; i < args.length; i++) {
|
|
57
67
|
const arg = args[i];
|
|
58
|
-
if (
|
|
59
|
-
options.subcommand = arg
|
|
68
|
+
if (!subcommandAssigned && subcommands.includes(arg)) {
|
|
69
|
+
options.subcommand = arg;
|
|
70
|
+
subcommandAssigned = true;
|
|
60
71
|
continue;
|
|
61
72
|
}
|
|
62
73
|
if (parseValuedFlag(arg, args[i + 1], options)) {
|
|
63
74
|
i++;
|
|
64
75
|
}
|
|
65
|
-
else {
|
|
66
|
-
|
|
76
|
+
else if (!parseBooleanFlag(arg, options)) {
|
|
77
|
+
extraArgs.push(arg);
|
|
67
78
|
}
|
|
68
79
|
}
|
|
80
|
+
if (extraArgs.length > 0) {
|
|
81
|
+
options.extraArgs = extraArgs;
|
|
82
|
+
}
|
|
69
83
|
return options;
|
|
70
84
|
}
|
|
71
85
|
//# sourceMappingURL=cli-parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-parser.js","sourceRoot":"","sources":["../../src/installer/cli-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,MAAM,YAAY,CAAC;AAEpB,SAAS,eAAe,CACtB,GAAW,EACX,GAAuB,EACvB,OAAyB;IAEzB,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;QAC3C,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;QACzB,OAAO,CAAC,QAAQ,GAAG,GAAG,EAAE,WAAW,EAAkC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,GAAI,GAAG,EAAE,WAAW,EAAkB,IAAI,WAAW,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW,EAAE,OAAyB;IAC9D,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAc;IAC/C,MAAM,OAAO,GAAqB;QAChC,UAAU,EAAE,SAAS;QACrB,KAAK,EAAE,WAAW;QAClB,GAAG,EAAE,KAAK;QACV,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-parser.js","sourceRoot":"","sources":["../../src/installer/cli-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,WAAW,EAEjB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,WAAW,EAEjB,MAAM,YAAY,CAAC;AAwBpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,WAAW,KAAK;IACpB,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,WAAW,CAAC;CACnB;AA8ND,wBAAsB,eAAe,CACnC,OAAO,EAAE,gBAAgB,EACzB,WAAW,GAAE,OAAO,CAAC,KAAK,CAAM,GAC/B,OAAO,CAAC,MAAM,CAAC,CA6BjB"}
|
package/dist/installer/cli.js
CHANGED
|
@@ -6,6 +6,17 @@ import { detectAllTargets } from "./detector.js";
|
|
|
6
6
|
import { patchContent, removeContent } from "./patchers/index.js";
|
|
7
7
|
import { createBackup, atomicWrite } from "./backup.js";
|
|
8
8
|
import { generateUnifiedDiff, colorizeDiff } from "./diff.js";
|
|
9
|
+
import { runSnippetCommand } from "./snippet.js";
|
|
10
|
+
import { driftFlagConflict, runDriftCommand } from "./drift-command.js";
|
|
11
|
+
import { emitRefusal } from "./snippet-report.js";
|
|
12
|
+
import { readServerVersion } from "./version.js";
|
|
13
|
+
import { mcpRefusal } from "../errors.js";
|
|
14
|
+
function snippetFlagsRefusal(options) {
|
|
15
|
+
const flags = [options.status ? "--status" : null, options.remove ? "--remove" : null]
|
|
16
|
+
.filter(Boolean)
|
|
17
|
+
.join(" and ");
|
|
18
|
+
return mcpRefusal("CONFLICTING_FLAGS", `${flags} only apply to the 'sirius snippet' subcommand.`, "The flags request a snippet mode outside the snippet command.", "Run 'sirius snippet --status' or 'sirius snippet --remove'.");
|
|
19
|
+
}
|
|
9
20
|
export { parseInstallerArgs } from "./cli-parser.js";
|
|
10
21
|
const defaultIo = {
|
|
11
22
|
writeStdout: (d) => process.stdout.write(d),
|
|
@@ -127,41 +138,35 @@ function emitReport(report, options, io) {
|
|
|
127
138
|
io.writeStderr(`\n[sirius] Completed: ${report.summary.configured} configured, ${report.summary.skipped} skipped, ${report.summary.failed} failed.\n`);
|
|
128
139
|
}
|
|
129
140
|
}
|
|
130
|
-
|
|
131
|
-
const
|
|
132
|
-
const
|
|
133
|
-
|
|
134
|
-
|
|
141
|
+
async function runDoctorCommand(options, io, env) {
|
|
142
|
+
const detected = await detectAllTargets(options.scope, env);
|
|
143
|
+
const results = detected.map((d) => ({
|
|
144
|
+
targetId: d.target.id,
|
|
145
|
+
displayName: d.target.displayName,
|
|
146
|
+
category: d.target.category,
|
|
147
|
+
format: d.target.format,
|
|
148
|
+
targetPath: d.configPath,
|
|
149
|
+
action: d.state === "ALREADY_CONFIGURED" ? "ALREADY_CONFIGURED" : "SKIPPED",
|
|
150
|
+
message: `State: ${d.state}`,
|
|
151
|
+
}));
|
|
152
|
+
const report = {
|
|
153
|
+
version: readServerVersion(),
|
|
154
|
+
timestamp: new Date().toISOString(),
|
|
155
|
+
platform: env.platform,
|
|
156
|
+
arch: process.arch,
|
|
157
|
+
dryRun: false,
|
|
158
|
+
scope: options.scope,
|
|
159
|
+
summary: {
|
|
160
|
+
totalScanned: detected.length,
|
|
161
|
+
configured: detected.filter((d) => d.state === "ALREADY_CONFIGURED").length,
|
|
162
|
+
skipped: detected.filter((d) => d.state !== "ALREADY_CONFIGURED").length,
|
|
163
|
+
failed: 0,
|
|
164
|
+
},
|
|
165
|
+
targets: results,
|
|
135
166
|
};
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
targetId: d.target.id,
|
|
140
|
-
displayName: d.target.displayName,
|
|
141
|
-
category: d.target.category,
|
|
142
|
-
format: d.target.format,
|
|
143
|
-
targetPath: d.configPath,
|
|
144
|
-
action: d.state === "ALREADY_CONFIGURED" ? "ALREADY_CONFIGURED" : "SKIPPED",
|
|
145
|
-
message: `State: ${d.state}`,
|
|
146
|
-
}));
|
|
147
|
-
const report = {
|
|
148
|
-
version: "1.4.1",
|
|
149
|
-
timestamp: new Date().toISOString(),
|
|
150
|
-
platform: env.platform,
|
|
151
|
-
arch: process.arch,
|
|
152
|
-
dryRun: false,
|
|
153
|
-
scope: options.scope,
|
|
154
|
-
summary: {
|
|
155
|
-
totalScanned: detected.length,
|
|
156
|
-
configured: detected.filter((d) => d.state === "ALREADY_CONFIGURED").length,
|
|
157
|
-
skipped: detected.filter((d) => d.state !== "ALREADY_CONFIGURED").length,
|
|
158
|
-
failed: 0,
|
|
159
|
-
},
|
|
160
|
-
targets: results,
|
|
161
|
-
};
|
|
162
|
-
emitReport(report, options, io);
|
|
163
|
-
return 0;
|
|
164
|
-
}
|
|
167
|
+
emitReport(report, options, io);
|
|
168
|
+
}
|
|
169
|
+
async function runPatchTargets(options, io, env) {
|
|
165
170
|
const selected = resolveSelectedTargets(options);
|
|
166
171
|
const results = [];
|
|
167
172
|
for (const target of selected) {
|
|
@@ -185,19 +190,50 @@ export async function runInstallerCli(options, ioOverrides = {}) {
|
|
|
185
190
|
});
|
|
186
191
|
}
|
|
187
192
|
}
|
|
193
|
+
return results;
|
|
194
|
+
}
|
|
195
|
+
function resolveCliEnv(io) {
|
|
196
|
+
return io.env ?? { ...resolveTargetEnvironment(), ...(io.cwd ? { cwd: io.cwd } : {}) };
|
|
197
|
+
}
|
|
198
|
+
export async function runInstallerCli(options, ioOverrides = {}) {
|
|
199
|
+
const io = { ...defaultIo, ...ioOverrides };
|
|
200
|
+
const env = resolveCliEnv(io);
|
|
201
|
+
if ((options.status || options.remove) && options.subcommand !== "snippet") {
|
|
202
|
+
emitRefusal(io, options, snippetFlagsRefusal(options));
|
|
203
|
+
return 1;
|
|
204
|
+
}
|
|
205
|
+
if (options.subcommand === "snippet") {
|
|
206
|
+
return runSnippetCommand(options, io);
|
|
207
|
+
}
|
|
208
|
+
if (options.subcommand === "drift") {
|
|
209
|
+
const conflict = driftFlagConflict(options);
|
|
210
|
+
if (conflict) {
|
|
211
|
+
emitRefusal(io, options, conflict);
|
|
212
|
+
return 1;
|
|
213
|
+
}
|
|
214
|
+
return runDriftCommand(options, io);
|
|
215
|
+
}
|
|
216
|
+
if (options.subcommand === "doctor") {
|
|
217
|
+
await runDoctorCommand(options, io, env);
|
|
218
|
+
return 0;
|
|
219
|
+
}
|
|
220
|
+
const results = await runPatchTargets(options, io, env);
|
|
221
|
+
return finishPatchRun(options, io, env, results);
|
|
222
|
+
}
|
|
223
|
+
function finishPatchRun(options, io, env, results) {
|
|
188
224
|
const failedCount = results.filter((r) => r.action === "FAILED").length;
|
|
189
225
|
const configuredCount = results.filter((r) => r.action === "CONFIGURED" || r.action === "REMOVED").length;
|
|
190
226
|
const report = {
|
|
191
|
-
version:
|
|
227
|
+
version: readServerVersion(),
|
|
192
228
|
timestamp: new Date().toISOString(),
|
|
193
229
|
platform: env.platform,
|
|
194
230
|
arch: process.arch,
|
|
195
231
|
dryRun: options.dryRun,
|
|
196
232
|
scope: options.scope,
|
|
197
233
|
summary: {
|
|
198
|
-
totalScanned:
|
|
234
|
+
totalScanned: results.length,
|
|
199
235
|
configured: configuredCount,
|
|
200
|
-
skipped:
|
|
236
|
+
skipped: results.length - configuredCount - failedCount,
|
|
201
237
|
failed: failedCount,
|
|
202
238
|
},
|
|
203
239
|
targets: results,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAMN,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type SnippetLanguage, todayIso } from "./precedence.js";
|
|
2
|
+
export { todayIso };
|
|
3
|
+
export declare const CANONICAL_TEMPLATE_EN: string;
|
|
4
|
+
export declare const CANONICAL_TEMPLATE_PT: string;
|
|
5
|
+
export declare function buildPrecedenceContractMarkdown(language: SnippetLanguage, seedDate: string): string;
|
|
6
|
+
//# sourceMappingURL=contract-seed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-seed.d.ts","sourceRoot":"","sources":["../../src/installer/contract-seed.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAIpB,QAAQ,EACT,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,eAAO,MAAM,qBAAqB,QAkBtB,CAAC;AAEb,eAAO,MAAM,qBAAqB,QAmBtB,CAAC;AAoFb,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,MAAM,CAmBR"}
|