pi-outpost 0.35.0 → 0.35.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/contract/README.md +3 -1
- package/dist/contract/conformance/README.md +8 -0
- package/dist/contract/validate-structured-exchange.mjs +13 -2
- package/dist/pi-outpost-tools.mjs +12 -1
- package/dist/pi-outpost.mjs +101 -85
- package/dist/pi-outpost.sea.mjs +2 -2
- package/dist/sea-prep.blob +2 -2
- package/dist/web/assets/PdfViewer-CptfuY34.js +2 -0
- package/dist/web/assets/{abnfDiagram-YUKMZFIV-C_v5KfC7.js → abnfDiagram-YUKMZFIV-kB5t-7AM.js} +1 -1
- package/dist/web/assets/architecture-WOLXFQ4H-BuU5EQCD.js +1 -0
- package/dist/web/assets/{architectureDiagram-47P4ROYG-DTpA3_fr.js → architectureDiagram-47P4ROYG-C5hzR07F.js} +1 -1
- package/dist/web/assets/{blockDiagram-E7TT5TSB-JiGNkbrY.js → blockDiagram-E7TT5TSB-DdpYvXs8.js} +1 -1
- package/dist/web/assets/{c4Diagram-CRA5TL53-BqyaF5aA.js → c4Diagram-CRA5TL53-Di3h58ks.js} +1 -1
- package/dist/web/assets/channel-DVH-eaz_.js +1 -0
- package/dist/web/assets/{chunk-2BW5OAIV-SBPwGrjA.js → chunk-2BW5OAIV-BIIX2R6x.js} +1 -1
- package/dist/web/assets/{chunk-3YJQHVM4-MV5Ex8sq.js → chunk-3YJQHVM4-Dt99sj0b.js} +1 -1
- package/dist/web/assets/{chunk-4EA7E6EY-CKvXXyhx.js → chunk-4EA7E6EY-yvJMWemR.js} +1 -1
- package/dist/web/assets/{chunk-7TKQ45FW-D6DuC99K.js → chunk-7TKQ45FW-Dob6DuOQ.js} +1 -1
- package/dist/web/assets/{chunk-AW2ZBBNX-C4rsmcm9.js → chunk-AW2ZBBNX-DB6rxZAL.js} +1 -1
- package/dist/web/assets/{chunk-DBDB3WZW-DYwidElu.js → chunk-DBDB3WZW-BIeIRFel.js} +1 -1
- package/dist/web/assets/{chunk-E2ZNV5FY-CYbRGGQf.js → chunk-E2ZNV5FY-k59zNMXy.js} +1 -1
- package/dist/web/assets/{chunk-EU5HNXII-DxNjjYiq.js → chunk-EU5HNXII-ND0WZFFM.js} +1 -1
- package/dist/web/assets/{chunk-FVRAUYC3-cRWf5LC3.js → chunk-FVRAUYC3-D1LdAmKs.js} +1 -1
- package/dist/web/assets/{chunk-HJ2JQQFS-D9pDNejT.js → chunk-HJ2JQQFS-_yet-jCS.js} +1 -1
- package/dist/web/assets/{chunk-HTAEGDNF-B_PVN4qe.js → chunk-HTAEGDNF-DKo1PJAZ.js} +1 -1
- package/dist/web/assets/{chunk-KQW6MTUR-BvQfG-IU.js → chunk-KQW6MTUR-evHULq4-.js} +1 -1
- package/dist/web/assets/{chunk-NTY3LDVX-C_c1c_yY.js → chunk-NTY3LDVX-C2IFjend.js} +1 -1
- package/dist/web/assets/{chunk-VPRB5NB3-BneD2tFR.js → chunk-VPRB5NB3-CCVn2tFZ.js} +1 -1
- package/dist/web/assets/{chunk-XC4XBNZT-BfvNm2P2.js → chunk-XC4XBNZT-DjwT4Fb8.js} +1 -1
- package/dist/web/assets/{classDiagram-v2-K4WV4PDN-D3Jwj4hF.js → classDiagram-v2-K4WV4PDN-7vBzSF1K.js} +1 -1
- package/dist/web/assets/{conversationExport-B_MfzYyo.js → conversationExport-1pQ1kKRb.js} +2 -2
- package/dist/web/assets/{cynefin-EF2NZ3EQ-D0UE3xaA.js → cynefin-EF2NZ3EQ-EkVSUZoC.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-3GCD6N5R-CCBRrG1y.js → cynefinDiagram-3GCD6N5R-TqsWGFj_.js} +1 -1
- package/dist/web/assets/{dagre-W4DXFKR2-zRL24iZJ.js → dagre-W4DXFKR2-Bs7WDnka.js} +1 -1
- package/dist/web/assets/{diagram-2UJZ2QOL-LHcLpXvO.js → diagram-2UJZ2QOL-BCCQWZ6Q.js} +1 -1
- package/dist/web/assets/{diagram-OVF4WLC6-8BeDZk_g.js → diagram-OVF4WLC6-ClTJAriq.js} +1 -1
- package/dist/web/assets/{diagram-PFPMY2P6-CKBnlJR4.js → diagram-PFPMY2P6-DRS4uv3o.js} +1 -1
- package/dist/web/assets/{diagram-UMYRVEAY-CRVvTnHL.js → diagram-UMYRVEAY-oQDIgSp_.js} +1 -1
- package/dist/web/assets/{diagram-YEKJPTXX-C77BIwU0.js → diagram-YEKJPTXX-DGvp5HHA.js} +1 -1
- package/dist/web/assets/{diagram-ZIFT7M5P-VCN0ewTA.js → diagram-ZIFT7M5P-DTOvOJP9.js} +1 -1
- package/dist/web/assets/{docxExport-Cx1UE4r4.js → docxExport-70RM2cmX.js} +2 -2
- package/dist/web/assets/{ebnfDiagram-VR2GEFS7-DE3BquXX.js → ebnfDiagram-VR2GEFS7-Bt9AsQhf.js} +1 -1
- package/dist/web/assets/{elk-IJKZMXRS-BMBFeeLM.js → elk-IJKZMXRS-43BtmMFC.js} +1 -1
- package/dist/web/assets/{erDiagram-O2IAPWRE-BpvBfZtG.js → erDiagram-O2IAPWRE-Cg5FjWxt.js} +1 -1
- package/dist/web/assets/eventmodeling-K75KTNOO-D-1S3G_r.js +1 -0
- package/dist/web/assets/flowDiagram-OXPTDLAJ-BwBlCFbR.js +1 -0
- package/dist/web/assets/{ganttDiagram-R7TSEDQI-Vx8rdpBL.js → ganttDiagram-R7TSEDQI-Drk9ZBL_.js} +1 -1
- package/dist/web/assets/{gitGraph-VSP46ZUC-CXqfxKB6.js → gitGraph-VSP46ZUC-_W77O0wc.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-XJZIOB7I-CtT_GFza.js → gitGraphDiagram-XJZIOB7I-BFVa-iQn.js} +1 -1
- package/dist/web/assets/index-DXN0nanq.js +350 -0
- package/dist/web/assets/{info-OHQRW6UA-Dzy6-ufv.js → info-OHQRW6UA-Ctq9vAkc.js} +1 -1
- package/dist/web/assets/{infoDiagram-5W2HQ5XZ-CFRmWQIO.js → infoDiagram-5W2HQ5XZ-9s3DGUEP.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-K3B6WC7H-Cibrnarh.js → ishikawaDiagram-K3B6WC7H-Bb66YtFg.js} +1 -1
- package/dist/web/assets/{journeyDiagram-COXZFDF6-DFoq_6Ri.js → journeyDiagram-COXZFDF6-DZ-UCzYx.js} +1 -1
- package/dist/web/assets/{kanban-definition-P3RFRI5V-B_ksgbTL.js → kanban-definition-P3RFRI5V-CXBbbpKw.js} +1 -1
- package/dist/web/assets/{line-DK5MzjMr.js → line-DI6oDPYR.js} +1 -1
- package/dist/web/assets/{loadReferencedImage-BAkXtzog.js → loadReferencedImage-BQpK9GNN.js} +2 -2
- package/dist/web/assets/{mermaid-parser.core-0hMEi6f9.js → mermaid-parser.core-F143UNdq.js} +3 -3
- package/dist/web/assets/{mermaid.core-D2DiwiHi.js → mermaid.core-FqGqI1ho.js} +4 -4
- package/dist/web/assets/{mindmap-definition-LZFPQGKD-DiJiFNch.js → mindmap-definition-LZFPQGKD-B6Q2fkYK.js} +1 -1
- package/dist/web/assets/{packet-JDAUHWVQ-BGr5cgVG.js → packet-JDAUHWVQ-DA9k8-fU.js} +1 -1
- package/dist/web/assets/{pdf-DUYUQwoI.js → pdf-DhwAPtjt.js} +1 -1
- package/dist/web/assets/{pegDiagram-BGZESJAR-BXEDbek_.js → pegDiagram-BGZESJAR-DGymYtc-.js} +1 -1
- package/dist/web/assets/{pie-XZMESJXO-Cf8_kbHC.js → pie-XZMESJXO-BWjAcopM.js} +1 -1
- package/dist/web/assets/{pieDiagram-CAPJLFHJ-Co9YXMsu.js → pieDiagram-CAPJLFHJ-BcDIEPPQ.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-GDMTTRAM-CfS7tD05.js → quadrantDiagram-GDMTTRAM-DJQxy266.js} +1 -1
- package/dist/web/assets/{radar-ABXABTNO-BEGsrsAA.js → radar-ABXABTNO-DhsSZPg3.js} +1 -1
- package/dist/web/assets/{railroad-I3PHUGI6-CFT2jtUv.js → railroad-I3PHUGI6-DJ7oN14G.js} +1 -1
- package/dist/web/assets/railroad-abnf-LNEFI6M7-BZj4c-IW.js +1 -0
- package/dist/web/assets/railroad-ebnf-DWYD2UWJ-BnSjVGRJ.js +1 -0
- package/dist/web/assets/railroad-peg-JR7BVNR7-Cf0UiINZ.js +1 -0
- package/dist/web/assets/{railroadDiagram-SM67HX2B-CbQqJD5P.js → railroadDiagram-SM67HX2B-BaHuLDd3.js} +1 -1
- package/dist/web/assets/{requirementDiagram-X7JNWC4A-BGmGKspK.js → requirementDiagram-X7JNWC4A-Cdx0JkRV.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-UM26HJRW-BrgJVT7k.js → sankeyDiagram-UM26HJRW-Wmb1OXw9.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-ZO4K6R2Y-VgSVGmd4.js → sequenceDiagram-ZO4K6R2Y-B0l0Rf12.js} +1 -1
- package/dist/web/assets/{stateDiagram-v2-TBUQTH76-DyoK2VR4.js → stateDiagram-v2-TBUQTH76-DzgT3ME7.js} +1 -1
- package/dist/web/assets/{swimlanes-N4OXWK64-DFGFtJZB.js → swimlanes-N4OXWK64-CiDMShdL.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-K3J5GTZL-BNLW10Yk.js +8 -0
- package/dist/web/assets/{timeline-definition-YOQAKGHF-Cqgm-mFB.js → timeline-definition-YOQAKGHF-C0vevBVy.js} +1 -1
- package/dist/web/assets/{treeView-D4JQ5SDB-CSP5w1GL.js → treeView-D4JQ5SDB-0qXyE7XG.js} +1 -1
- package/dist/web/assets/{treemap-SAJKECNS-DkHwZurr.js → treemap-SAJKECNS-DzfA771k.js} +1 -1
- package/dist/web/assets/{usecaseDiagram-VIAY4XPW-C4OqICTk.js → usecaseDiagram-VIAY4XPW-tA8gpVwy.js} +1 -1
- package/dist/web/assets/{vennDiagram-BLWOH2XV-C9lYHAeZ.js → vennDiagram-BLWOH2XV-DwCrnY44.js} +1 -1
- package/dist/web/assets/{wardley-7MLQ67FV-CPzWT6B3.js → wardley-7MLQ67FV-BdlgtOCQ.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-YMQ3BMBF-DXD2__kE.js → wardleyDiagram-YMQ3BMBF-hSTGOEfh.js} +1 -1
- package/dist/web/assets/{xychartDiagram-TAQBALBS-Dqxktrov.js → xychartDiagram-TAQBALBS-CDqueuac.js} +1 -1
- package/dist/web/index.html +1 -1
- package/package.json +2 -2
- package/dist/web/assets/PdfViewer-GOg5r-bG.js +0 -2
- package/dist/web/assets/architecture-WOLXFQ4H-DqYyXFjD.js +0 -1
- package/dist/web/assets/channel-BQKcNNxJ.js +0 -1
- package/dist/web/assets/eventmodeling-K75KTNOO-DLCfkEm-.js +0 -1
- package/dist/web/assets/flowDiagram-OXPTDLAJ-BqkbyaSw.js +0 -1
- package/dist/web/assets/index-D8PP343M.js +0 -350
- package/dist/web/assets/railroad-abnf-LNEFI6M7-BeOImRGm.js +0 -1
- package/dist/web/assets/railroad-ebnf-DWYD2UWJ-BZhyClCm.js +0 -1
- package/dist/web/assets/railroad-peg-JR7BVNR7-DXhvwuLk.js +0 -1
- package/dist/web/assets/swimlanesDiagram-K3J5GTZL-BmwDNPXX.js +0 -8
package/dist/contract/README.md
CHANGED
|
@@ -82,7 +82,9 @@ and validates nothing — validation happens where the rendering decision is mad
|
|
|
82
82
|
The agent can author these too, guided by [`skills/structured-exchange`](../skills/structured-exchange/SKILL.md).
|
|
83
83
|
It presents one through the `present_structure` tool, which validates before showing
|
|
84
84
|
anything and hands back the diagnostics when it refuses, so a document can be corrected
|
|
85
|
-
without leaving the exchange.
|
|
85
|
+
without leaving the exchange. When `schema` or `kind` was written inside `data`, the first
|
|
86
|
+
diagnostic says so (`envelope-inside-data`), ahead of the schema's reasons about every form
|
|
87
|
+
`data` could have taken.
|
|
86
88
|
|
|
87
89
|
Some models write the document straight into their reply instead, as a ```` ```json ````
|
|
88
90
|
block. Such a block is drawn in place, provided it declares the contract's `schema` and
|
|
@@ -100,6 +100,14 @@ JSON Schema decides shape. These are the relational rules that follow it, and th
|
|
|
100
100
|
Rules prefixed `schema/` come from the JSON Schema itself; the suffix is the keyword
|
|
101
101
|
that refused it.
|
|
102
102
|
|
|
103
|
+
One diagnostic only ever accompanies those. `envelope-inside-data` names a `schema` or
|
|
104
|
+
`kind` written inside `data` instead of beside it, at its path there (`/data/kind`), and
|
|
105
|
+
comes first: without a top-level `schema` a document is judged as version 1, and without
|
|
106
|
+
a top-level `kind` every form `data` can take says why it is not that form, so the fix
|
|
107
|
+
would otherwise be buried under reasons about graphs, sequences and tables nobody sent.
|
|
108
|
+
It is added to a refusal the schema already makes, never decides one, and removes none
|
|
109
|
+
of the other diagnostics.
|
|
110
|
+
|
|
103
111
|
## Running it here
|
|
104
112
|
|
|
105
113
|
```
|
|
@@ -11342,6 +11342,17 @@ function declaredSchemaOf(document) {
|
|
|
11342
11342
|
if (typeof schema2 !== "string" || !schema2.startsWith(STRUCTURED_EXCHANGE_SCHEMA_PREFIX)) return void 0;
|
|
11343
11343
|
return schema2;
|
|
11344
11344
|
}
|
|
11345
|
+
function misplacedEnvelopeIssues(document) {
|
|
11346
|
+
if (typeof document !== "object" || document === null || Array.isArray(document)) return [];
|
|
11347
|
+
const envelope = document;
|
|
11348
|
+
const data = envelope.data;
|
|
11349
|
+
if (typeof data !== "object" || data === null || Array.isArray(data)) return [];
|
|
11350
|
+
return ["schema", "kind"].filter((field) => envelope[field] === void 0 && data[field] !== void 0).map((field) => ({
|
|
11351
|
+
rule: "envelope-inside-data",
|
|
11352
|
+
path: `/data/${field}`,
|
|
11353
|
+
message: `"${field}" belongs beside "data", at the top of the document, not inside it`
|
|
11354
|
+
}));
|
|
11355
|
+
}
|
|
11345
11356
|
|
|
11346
11357
|
// shared/src/structuredExchangeSchemaNode.ts
|
|
11347
11358
|
function unwrapSchemaModule(module) {
|
|
@@ -11491,7 +11502,7 @@ var checkStructuredExchangeSchema = (document) => {
|
|
|
11491
11502
|
})()
|
|
11492
11503
|
});
|
|
11493
11504
|
}
|
|
11494
|
-
return issues.sort((left, right) => right.path.split("/").length - left.path.split("/").length);
|
|
11505
|
+
return [...misplacedEnvelopeIssues(document), ...issues.sort((left, right) => right.path.split("/").length - left.path.split("/").length)];
|
|
11495
11506
|
};
|
|
11496
11507
|
|
|
11497
11508
|
// shared/src/structuredExchangeProfile.ts
|
|
@@ -14177,7 +14188,7 @@ function rulePatterns(profile, rules, sources) {
|
|
|
14177
14188
|
}
|
|
14178
14189
|
|
|
14179
14190
|
// shared/bin/validate-structured-exchange.mjs
|
|
14180
|
-
var VERSION = `validate-structured-exchange ${false ? "development" : "0.35.
|
|
14191
|
+
var VERSION = `validate-structured-exchange ${false ? "development" : "0.35.2"}`;
|
|
14181
14192
|
var USAGE = `validate-structured-exchange [file]
|
|
14182
14193
|
validate-structured-exchange --profile <profile.json> [file]
|
|
14183
14194
|
validate-structured-exchange --check-profile <profile.json>
|
|
@@ -161494,6 +161494,17 @@ function declaredSchemaOf(document4) {
|
|
|
161494
161494
|
if (typeof schema2 !== "string" || !schema2.startsWith(STRUCTURED_EXCHANGE_SCHEMA_PREFIX)) return void 0;
|
|
161495
161495
|
return schema2;
|
|
161496
161496
|
}
|
|
161497
|
+
function misplacedEnvelopeIssues(document4) {
|
|
161498
|
+
if (typeof document4 !== "object" || document4 === null || Array.isArray(document4)) return [];
|
|
161499
|
+
const envelope = document4;
|
|
161500
|
+
const data = envelope.data;
|
|
161501
|
+
if (typeof data !== "object" || data === null || Array.isArray(data)) return [];
|
|
161502
|
+
return ["schema", "kind"].filter((field) => envelope[field] === void 0 && data[field] !== void 0).map((field) => ({
|
|
161503
|
+
rule: "envelope-inside-data",
|
|
161504
|
+
path: `/data/${field}`,
|
|
161505
|
+
message: `"${field}" belongs beside "data", at the top of the document, not inside it`
|
|
161506
|
+
}));
|
|
161507
|
+
}
|
|
161497
161508
|
function readStructuredExchangeDocument(serialized, checkSchema, limits) {
|
|
161498
161509
|
const tooLarge = checkDocumentBytes(serialized, limits);
|
|
161499
161510
|
if (tooLarge !== void 0) return { status: "too-large", issue: tooLarge };
|
|
@@ -172468,7 +172479,7 @@ var checkStructuredExchangeSchema = (document4) => {
|
|
|
172468
172479
|
})()
|
|
172469
172480
|
});
|
|
172470
172481
|
}
|
|
172471
|
-
return issues.sort((left, right) => right.path.split("/").length - left.path.split("/").length);
|
|
172482
|
+
return [...misplacedEnvelopeIssues(document4), ...issues.sort((left, right) => right.path.split("/").length - left.path.split("/").length)];
|
|
172472
172483
|
};
|
|
172473
172484
|
|
|
172474
172485
|
// ../shared/src/structuredExchangeProfile.ts
|