@akagilnc/pi-workflow-roles 0.1.6067 → 0.1.6074
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/acp-host/production-host.js +54 -12
- package/dist/headless-host/production-host.js +54 -12
- package/dist/migrate-book-topology.js +54 -12
- package/dist/public-cli/main.js +54 -12
- package/dist/review-submission.js +37 -8
- package/dist/role-submission-declarations.js +5 -5
- package/package.json +1 -1
- package/souls/countersign.md +1 -1
- package/souls/judge.md +1 -1
- package/src/review-submission.ts +71 -8
- package/src/role-submission-declarations.ts +5 -5
|
@@ -1682,7 +1682,7 @@ var init_navigator_output = __esm({
|
|
|
1682
1682
|
|
|
1683
1683
|
// src/review-submission.ts
|
|
1684
1684
|
import { Type as Type5 } from "typebox";
|
|
1685
|
-
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
1685
|
+
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, existenceRowUnion, MECHANISM_LABELS, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, clauseRowBase, CLAUSE_LABELS, clauseExistenceRowSchema, countersignSubmissionSchema, judgeMechanismRowSchema, judgeSubmissionSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
1686
1686
|
var init_review_submission = __esm({
|
|
1687
1687
|
"src/review-submission.ts"() {
|
|
1688
1688
|
"use strict";
|
|
@@ -1779,39 +1779,81 @@ var init_review_submission = __esm({
|
|
|
1779
1779
|
layer: Type5.Integer({ description: "\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD\uFF0C\u8FD9\u662F\u7B2C\u51E0\u5904\u8FD9\u6837\u7684\u65B0\u589E\uFF08\u542B\u524D\u51E0\u8F6E\u5DF2\u7F72\u8FC7\u7684\uFF09" })
|
|
1780
1780
|
};
|
|
1781
1781
|
MECHANISM_FRAMEWORK_RULE = "\u6846\u67B6\u662F\u4ED3\u5E93 ADR \u6216\u7968\u9762\u70B9\u540D\u7684\u90A3\u4E00\u4E2A\uFF08\u8BFB\u5199\u6A21\u578B\u3001Web\u3001\u6D4B\u8BD5\u7B49\u6846\u67B6\uFF09\uFF0C\u4E0D\u662F\u5E2D\u4F4D\u81EA\u9009\uFF1B\u5B9E\u73B0\u8FD9\u4E00\u5C42\u6240\u7528\u7684\u5E93\uFF08ORM\u3001\u7F13\u5B58\u5E93\u3001\u89E3\u6790\u5E93\uFF09\u4E0D\u662F\u6846\u67B6\uFF0C\u5B83\u7684 API \u9875\u6216\u793A\u4F8B\u586B\u4E0D\u8FDB\u8FD9\u683C\u2014\u2014\u90A3\u7B54\u7684\u662F\u300C\u8FD9\u5C42\u600E\u4E48\u505A\u300D\uFF0C\u8FD9\u683C\u95EE\u7684\u662F\u300C\u793A\u8303\u4E0D\u5E26\u8FD9\u5C42\u600E\u4E48\u529E\u300D";
|
|
1782
|
-
|
|
1782
|
+
existenceRowUnion = (base, labels, extra = {}) => Type5.Union(
|
|
1783
1783
|
[
|
|
1784
1784
|
Type5.Object(
|
|
1785
1785
|
{
|
|
1786
|
-
...
|
|
1786
|
+
...base,
|
|
1787
1787
|
official: Type5.String({
|
|
1788
1788
|
description: `\u8FD9\u6BB5\u4EE3\u7801\u6240\u5C5E\u5E94\u7528\u6846\u67B6\u7684\u5B98\u65B9\u793A\u8303\u91CC\uFF0C\u4E0D\u5E26\u8FD9\u4E00\u5C42\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\uFF1A\u5148\u5199\u6846\u67B6\u540D\uFF0C\u518D\u94FE\u63A5\uFF0B\u539F\u53E5\uFF08\u793A\u8303\u91CC\u76F4\u63A5\u8BFB\u3001\u76F4\u63A5\u67E5\u3001\u4EA4\u7ED9\u6846\u67B6\u54EA\u9879\u8BBE\u7F6E\uFF09\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
1789
1789
|
}),
|
|
1790
|
-
disposition: Type5.Literal(
|
|
1790
|
+
disposition: Type5.Literal(labels.without, { description: "official \u586B\u4E86\u5B57\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
1791
1791
|
...extra
|
|
1792
1792
|
},
|
|
1793
1793
|
{ additionalProperties: true }
|
|
1794
1794
|
),
|
|
1795
1795
|
Type5.Object(
|
|
1796
1796
|
{
|
|
1797
|
-
...
|
|
1797
|
+
...base,
|
|
1798
1798
|
official: Type5.Null({
|
|
1799
|
-
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728
|
|
1799
|
+
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728 ${labels.evidenceField} \u672B\u5C3E\u5199\u6846\u67B6\u540D\u4E0E\u793A\u8303\u91CC\u90A3\u4E00\u5904\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
1800
1800
|
}),
|
|
1801
|
-
disposition: Type5.Literal(
|
|
1801
|
+
disposition: Type5.Literal(labels.carries, { description: "official \u4E3A null\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
1802
1802
|
...extra
|
|
1803
1803
|
},
|
|
1804
1804
|
{ additionalProperties: true }
|
|
1805
1805
|
)
|
|
1806
1806
|
],
|
|
1807
|
-
{ description:
|
|
1807
|
+
{ description: `\u4E24\u79CD\u884C\u5F62\uFF0C\u6CA1\u6709\u7B2C\u4E09\u79CD\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF08official \u586B\u5B57\uFF0C${labels.without.split("\uFF1A")[0]}\uFF09\uFF1B\u793A\u8303\u672C\u8EAB\u5C31\u5E26\u540C\u6837\u7684\u5C42\uFF08official null\uFF0C${labels.carries.split("\uFF1A")[0]}\uFF09` }
|
|
1808
1808
|
);
|
|
1809
|
+
MECHANISM_LABELS = { without: "\u5220\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u7559\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "keeps" };
|
|
1810
|
+
mechanismRowUnion = (extra = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
1809
1811
|
mechanismRowSchema = mechanismRowUnion();
|
|
1810
1812
|
auditorMechanismRowSchema = mechanismRowUnion({
|
|
1811
1813
|
judgeSaid: Type5.Union([Type5.String(), Type5.Null()], {
|
|
1812
1814
|
description: "\u5927\u7406\u5BFA\u5224\u8BCD\u91CC\u88C1\u5230\u8FD9\u4E00\u5C42\u7684\u90A3\u53E5\u539F\u6587\uFF08\u7167\u6284\uFF09\uFF1B\u5224\u8BCD\u6CA1\u63D0\u8FD9\u4E00\u5C42\uFF0C\u586B null"
|
|
1813
1815
|
})
|
|
1814
1816
|
});
|
|
1817
|
+
clauseRowBase = {
|
|
1818
|
+
clause: Type5.String({ description: "\u73B0\u884C\u7968\u9762\u91CC\u8BA9\u67D0\u4E2A\u673A\u5236\u5B58\u5728\u7684\u90A3\u6761\u6761\u6B3E\u539F\u6587\uFF08\u7167\u6284\uFF0C\u4E0D\u5408\u5E76\u3001\u4E0D\u6539\u5199\uFF09" }),
|
|
1819
|
+
kind: Type5.Union(
|
|
1820
|
+
[Type5.Literal("\u660E\u5199\u673A\u5236\uFF1A\u6761\u6B3E\u81EA\u5DF1\u70B9\u540D\u4E86\u72B6\u6001\u3001\u8868\u3001\u7F13\u5B58\u3001\u9501\u3001\u4F9D\u8D56"), Type5.Literal("\u53EA\u5199\u7ED3\u679C\uFF1A\u6761\u6B3E\u53EA\u63D0\u8981\u6C42\uFF0C\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\uFF0C\u5F97\u957F\u51FA\u673A\u5236\u624D\u505A\u5F97\u5230")],
|
|
1821
|
+
{ description: "\u4E24\u7C7B\u90FD\u8981\u5217\u3002\u7B2C\u4E8C\u7C7B\u6700\u5BB9\u6613\u6F0F\uFF1A\u96F6\u91CD\u590D\u3001\u8DE8\u63D0\u4EA4\u4E0D\u91CD\u8BFB\u3001\u4E0D\u5EFA\u8C41\u514D\u3001\u6BCF X \u53EA\u505A\u4E00\u6B21\u3001\u6C38\u4E0D Y\u2014\u2014\u8FD9\u79CD\u53E5\u5B50\u6CA1\u5199\u673A\u5236\u4E24\u4E2A\u5B57\uFF0C\u5374\u53EA\u80FD\u9760\u65B0\u72B6\u6001\u3001\u7F13\u5B58\u3001\u5931\u6548\u89C4\u5219\u6EE1\u8DB3\uFF1B\u5148\u6253\u5F00\u73B0\u72B6\u4EE3\u7801\u6838\u4E00\u904D\u5B83\u505A\u4E0D\u505A\u5F97\u5230\uFF0C\u505A\u4E0D\u5230\u5C31\u662F\u8FD9\u7C7B" }
|
|
1822
|
+
),
|
|
1823
|
+
makes: Type5.String({ description: "\u8FD9\u6761\u6761\u6B3E\u843D\u5B9E\u540E\u4F1A\u8BA9\u4EC0\u4E48\u4E1C\u897F\u5B58\u5728\uFF1A\u8DE8\u8C03\u7528\u4FDD\u5B58\u7684\u72B6\u6001\u3001\u7F13\u5B58\u3001\u9501\u3001\u5931\u6548\u89C4\u5219\u3001\u9884\u8BA1\u7B97\u3001\u65B0\u4F9D\u8D56\uFF1B\u5199\u51FA\u5B83\u7684\u5F62\u72B6\u3002\u53EA\u5199\u7ED3\u679C\u7684\u6761\u6B3E\uFF0C\u5199\u6EE1\u8DB3\u5B83\u5FC5\u987B\u957F\u51FA\u7684\u90A3\u6837\u4E1C\u897F" })
|
|
1824
|
+
};
|
|
1825
|
+
CLAUSE_LABELS = { without: "\u4E0D\u8981\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u8981\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "makes" };
|
|
1826
|
+
clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
1827
|
+
countersignSubmissionSchema = withTerminatingOutputDeclarations(
|
|
1828
|
+
Type5.Object(
|
|
1829
|
+
{
|
|
1830
|
+
status: reviewStatusField,
|
|
1831
|
+
...reviewNarrativeFields,
|
|
1832
|
+
existence: Type5.Array(clauseExistenceRowSchema, {
|
|
1833
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u73B0\u884C\u7968\u9762\u6BCF\u6761\u8BA9\u673A\u5236\u5B58\u5728\u7684\u6761\u6B3E\u5404\u4E00\u884C\u2014\u2014\u660E\u5199\u673A\u5236\u7684\uFF0C\u548C\u53EA\u5199\u7ED3\u679C\u8981\u6C42\u3001\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\u7684\uFF0C\u4E24\u7C7B\u90FD\u7B97\u2014\u2014\u5230 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u770B\u4E0D\u5E26\u5B83\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\u3002\u6709\u300C\u4E0D\u8981\u300D\u884C\u5728\uFF0C\u4E0D\u5F97\u7F72\uFF0C\u5C01\u9A73\u6216\u4E0A\u5448\u5E76\u70B9\u540D\u90A3\u6761\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u7B7E\u53D1\u65B9\u7B54\u8FC7\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u8981\u300D\u7684\u7406\u7531\uFF1B\u300C\u8981\u300D\u53EA\u8BA4\u793A\u8303\u91CC\u5E26\u540C\u6837\u7684\u5C42\u3002\u4E00\u6761\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
1834
|
+
})
|
|
1835
|
+
},
|
|
1836
|
+
{ additionalProperties: true }
|
|
1837
|
+
)
|
|
1838
|
+
);
|
|
1839
|
+
judgeMechanismRowSchema = mechanismRowUnion({
|
|
1840
|
+
origin: Type5.Union(
|
|
1841
|
+
[Type5.Literal("\u5B9E\u73B0\u51C0\u589E\uFF1A\u672C\u7968\u8D77\u70B9\u5230\u6240\u5BA1 HEAD \u7684\u751F\u4EA7\u4EE3\u7801\u91CC\u5DF2\u6709\u7684"), Type5.Literal("\u672C\u5224\u5904\u65B9\uFF1A\u672C\u8F6E\u5224\u8BCD\u7684\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684")],
|
|
1842
|
+
{ description: "\u8FD9\u4E00\u5C42\u4ECE\u54EA\u6765\u3002\u5904\u65B9\u884C\u7684 where \u5199\u5904\u65B9\u539F\u6587\u800C\u4E0D\u662F path:line\uFF1B\u5904\u65B9\u4F1A\u957F\u51FA\u793A\u8303\u4E0D\u5E26\u7684\u5C42\uFF0C\u5904\u65B9\u672C\u8EAB\u5C31\u4E0D\u80FD\u5F00" }
|
|
1843
|
+
)
|
|
1844
|
+
});
|
|
1845
|
+
judgeSubmissionSchema = withTerminatingOutputDeclarations(
|
|
1846
|
+
Type5.Object(
|
|
1847
|
+
{
|
|
1848
|
+
status: reviewStatusField,
|
|
1849
|
+
...reviewNarrativeFields,
|
|
1850
|
+
mechanisms: Type5.Array(judgeMechanismRowSchema, {
|
|
1851
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u6240\u5BA1\u5B9E\u73B0\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD \u751F\u4EA7\u4EE3\u7801\u65B0\u589E\u7684\u6BCF\u4E00\u5904\u4F9D\u8D56\u884C\u3001\u8DE8\u8C03\u7528\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u88C5\u9970\u6216\u5305\u88C5\u5404\u4E00\u884C\uFF08origin \u5B9E\u73B0\u51C0\u589E\uFF09\uFF0C\u518D\u52A0\u672C\u8F6E\u5224\u8BCD\u6BCF\u6761\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684\u6BCF\u4E00\u5C42\u5404\u4E00\u884C\uFF08origin \u672C\u5224\u5904\u65B9\uFF09\u3002\u6BCF\u884C\u53EA\u95EE\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u4E00\u5173\u5207\uFF08\u8BFB\u590D\u7528\u3001\u5E76\u53D1\u3001\u5931\u6548\u2026\u2026\uFF09\u5728 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u600E\u4E48\u5904\u7406\u2014\u2014\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF0C\u5C31\u662F\u5220\uFF1B\u4E0D\u95EE\u7968\u9762\u90A3\u53E5\u8981\u6C42\u80FD\u4E0D\u80FD\u9760\u793A\u8303\u6EE1\u8DB3\u3002\u7968\u9762\u8981\u6C42\u8D85\u8FC7\u793A\u8303\u7684\uFF0C\u884C\u7167\u586B\u5220\uFF0C\u90A3\u53E5\u8981\u6C42\u4E0A\u5448\u3002\u6709\u300C\u5220\u300D\u884C\uFF1A\u5B9E\u73B0\u91CC\u7684\uFF0C\u5224\u5220\u6216\u4E0A\u5448\uFF0C\u4E0D\u5F97\u636E\u4EE5\u7F72\u6536\u655B\uFF1B\u5904\u65B9\u91CC\u7684\uFF0C\u90A3\u6761\u5904\u65B9\u4E0D\u80FD\u5F00\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u65BD\u5DE5\u81EA\u8FF0\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u7559\u300D\u7684\u7406\u7531\u3002\u884C\u53EA\u80FD\u8FDB\u8FD9\u5F20\u8868\uFF1A\u4E0D\u53E6\u5F00\u5B57\u6BB5\u5B58\u653E\uFF0C\u4E0D\u7559\u300C\u5F85\u5B9A\u300D\uFF1B\u4E00\u5904\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
1852
|
+
})
|
|
1853
|
+
},
|
|
1854
|
+
{ additionalProperties: true }
|
|
1855
|
+
)
|
|
1856
|
+
);
|
|
1815
1857
|
inspectorSubmissionSchema = withTerminatingOutputDeclarations(
|
|
1816
1858
|
Type5.Object(
|
|
1817
1859
|
{
|
|
@@ -3225,9 +3267,9 @@ var init_role_submission_declarations = __esm({
|
|
|
3225
3267
|
SUBMISSION_FACE = {
|
|
3226
3268
|
judge: {
|
|
3227
3269
|
label: "\u5927\u7406\u5BFA\u8F93\u51FA",
|
|
3228
|
-
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
3270
|
+
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF08\u542B\u6240\u5BA1\u5B9E\u73B0\u4E0E\u672C\u5224\u5904\u65B9\u7684\u5B58\u5E9F\u5C3A mechanisms\uFF09\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
3229
3271
|
promptSnippet: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD",
|
|
3230
|
-
parameters:
|
|
3272
|
+
parameters: judgeSubmissionSchema
|
|
3231
3273
|
},
|
|
3232
3274
|
fixer: {
|
|
3233
3275
|
label: "\u4FEE\u5185\u53F8\u8F93\u51FA",
|
|
@@ -3272,9 +3314,9 @@ var init_role_submission_declarations = __esm({
|
|
|
3272
3314
|
},
|
|
3273
3315
|
countersign: {
|
|
3274
3316
|
label: "\u7ED9\u4E8B\u4E2D\u8F93\u51FA",
|
|
3275
|
-
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\u3002",
|
|
3317
|
+
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\uFF08\u542B\u73B0\u884C\u7968\u9762\u6761\u6B3E\u7684\u5B58\u5E9F\u5C3A existence\uFF09\u3002",
|
|
3276
3318
|
promptSnippet: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE",
|
|
3277
|
-
parameters:
|
|
3319
|
+
parameters: countersignSubmissionSchema
|
|
3278
3320
|
},
|
|
3279
3321
|
secretariat: {
|
|
3280
3322
|
label: "\u4E2D\u4E66\u7701\u8F93\u51FA",
|
|
@@ -481,7 +481,7 @@ var init_terminating_infrastructure = __esm({
|
|
|
481
481
|
|
|
482
482
|
// src/review-submission.ts
|
|
483
483
|
import { Type as Type2 } from "typebox";
|
|
484
|
-
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
484
|
+
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, existenceRowUnion, MECHANISM_LABELS, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, clauseRowBase, CLAUSE_LABELS, clauseExistenceRowSchema, countersignSubmissionSchema, judgeMechanismRowSchema, judgeSubmissionSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
485
485
|
var init_review_submission = __esm({
|
|
486
486
|
"src/review-submission.ts"() {
|
|
487
487
|
"use strict";
|
|
@@ -578,39 +578,81 @@ var init_review_submission = __esm({
|
|
|
578
578
|
layer: Type2.Integer({ description: "\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD\uFF0C\u8FD9\u662F\u7B2C\u51E0\u5904\u8FD9\u6837\u7684\u65B0\u589E\uFF08\u542B\u524D\u51E0\u8F6E\u5DF2\u7F72\u8FC7\u7684\uFF09" })
|
|
579
579
|
};
|
|
580
580
|
MECHANISM_FRAMEWORK_RULE = "\u6846\u67B6\u662F\u4ED3\u5E93 ADR \u6216\u7968\u9762\u70B9\u540D\u7684\u90A3\u4E00\u4E2A\uFF08\u8BFB\u5199\u6A21\u578B\u3001Web\u3001\u6D4B\u8BD5\u7B49\u6846\u67B6\uFF09\uFF0C\u4E0D\u662F\u5E2D\u4F4D\u81EA\u9009\uFF1B\u5B9E\u73B0\u8FD9\u4E00\u5C42\u6240\u7528\u7684\u5E93\uFF08ORM\u3001\u7F13\u5B58\u5E93\u3001\u89E3\u6790\u5E93\uFF09\u4E0D\u662F\u6846\u67B6\uFF0C\u5B83\u7684 API \u9875\u6216\u793A\u4F8B\u586B\u4E0D\u8FDB\u8FD9\u683C\u2014\u2014\u90A3\u7B54\u7684\u662F\u300C\u8FD9\u5C42\u600E\u4E48\u505A\u300D\uFF0C\u8FD9\u683C\u95EE\u7684\u662F\u300C\u793A\u8303\u4E0D\u5E26\u8FD9\u5C42\u600E\u4E48\u529E\u300D";
|
|
581
|
-
|
|
581
|
+
existenceRowUnion = (base, labels, extra = {}) => Type2.Union(
|
|
582
582
|
[
|
|
583
583
|
Type2.Object(
|
|
584
584
|
{
|
|
585
|
-
...
|
|
585
|
+
...base,
|
|
586
586
|
official: Type2.String({
|
|
587
587
|
description: `\u8FD9\u6BB5\u4EE3\u7801\u6240\u5C5E\u5E94\u7528\u6846\u67B6\u7684\u5B98\u65B9\u793A\u8303\u91CC\uFF0C\u4E0D\u5E26\u8FD9\u4E00\u5C42\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\uFF1A\u5148\u5199\u6846\u67B6\u540D\uFF0C\u518D\u94FE\u63A5\uFF0B\u539F\u53E5\uFF08\u793A\u8303\u91CC\u76F4\u63A5\u8BFB\u3001\u76F4\u63A5\u67E5\u3001\u4EA4\u7ED9\u6846\u67B6\u54EA\u9879\u8BBE\u7F6E\uFF09\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
588
588
|
}),
|
|
589
|
-
disposition: Type2.Literal(
|
|
589
|
+
disposition: Type2.Literal(labels.without, { description: "official \u586B\u4E86\u5B57\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
590
590
|
...extra
|
|
591
591
|
},
|
|
592
592
|
{ additionalProperties: true }
|
|
593
593
|
),
|
|
594
594
|
Type2.Object(
|
|
595
595
|
{
|
|
596
|
-
...
|
|
596
|
+
...base,
|
|
597
597
|
official: Type2.Null({
|
|
598
|
-
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728
|
|
598
|
+
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728 ${labels.evidenceField} \u672B\u5C3E\u5199\u6846\u67B6\u540D\u4E0E\u793A\u8303\u91CC\u90A3\u4E00\u5904\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
599
599
|
}),
|
|
600
|
-
disposition: Type2.Literal(
|
|
600
|
+
disposition: Type2.Literal(labels.carries, { description: "official \u4E3A null\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
601
601
|
...extra
|
|
602
602
|
},
|
|
603
603
|
{ additionalProperties: true }
|
|
604
604
|
)
|
|
605
605
|
],
|
|
606
|
-
{ description:
|
|
606
|
+
{ description: `\u4E24\u79CD\u884C\u5F62\uFF0C\u6CA1\u6709\u7B2C\u4E09\u79CD\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF08official \u586B\u5B57\uFF0C${labels.without.split("\uFF1A")[0]}\uFF09\uFF1B\u793A\u8303\u672C\u8EAB\u5C31\u5E26\u540C\u6837\u7684\u5C42\uFF08official null\uFF0C${labels.carries.split("\uFF1A")[0]}\uFF09` }
|
|
607
607
|
);
|
|
608
|
+
MECHANISM_LABELS = { without: "\u5220\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u7559\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "keeps" };
|
|
609
|
+
mechanismRowUnion = (extra = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
608
610
|
mechanismRowSchema = mechanismRowUnion();
|
|
609
611
|
auditorMechanismRowSchema = mechanismRowUnion({
|
|
610
612
|
judgeSaid: Type2.Union([Type2.String(), Type2.Null()], {
|
|
611
613
|
description: "\u5927\u7406\u5BFA\u5224\u8BCD\u91CC\u88C1\u5230\u8FD9\u4E00\u5C42\u7684\u90A3\u53E5\u539F\u6587\uFF08\u7167\u6284\uFF09\uFF1B\u5224\u8BCD\u6CA1\u63D0\u8FD9\u4E00\u5C42\uFF0C\u586B null"
|
|
612
614
|
})
|
|
613
615
|
});
|
|
616
|
+
clauseRowBase = {
|
|
617
|
+
clause: Type2.String({ description: "\u73B0\u884C\u7968\u9762\u91CC\u8BA9\u67D0\u4E2A\u673A\u5236\u5B58\u5728\u7684\u90A3\u6761\u6761\u6B3E\u539F\u6587\uFF08\u7167\u6284\uFF0C\u4E0D\u5408\u5E76\u3001\u4E0D\u6539\u5199\uFF09" }),
|
|
618
|
+
kind: Type2.Union(
|
|
619
|
+
[Type2.Literal("\u660E\u5199\u673A\u5236\uFF1A\u6761\u6B3E\u81EA\u5DF1\u70B9\u540D\u4E86\u72B6\u6001\u3001\u8868\u3001\u7F13\u5B58\u3001\u9501\u3001\u4F9D\u8D56"), Type2.Literal("\u53EA\u5199\u7ED3\u679C\uFF1A\u6761\u6B3E\u53EA\u63D0\u8981\u6C42\uFF0C\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\uFF0C\u5F97\u957F\u51FA\u673A\u5236\u624D\u505A\u5F97\u5230")],
|
|
620
|
+
{ description: "\u4E24\u7C7B\u90FD\u8981\u5217\u3002\u7B2C\u4E8C\u7C7B\u6700\u5BB9\u6613\u6F0F\uFF1A\u96F6\u91CD\u590D\u3001\u8DE8\u63D0\u4EA4\u4E0D\u91CD\u8BFB\u3001\u4E0D\u5EFA\u8C41\u514D\u3001\u6BCF X \u53EA\u505A\u4E00\u6B21\u3001\u6C38\u4E0D Y\u2014\u2014\u8FD9\u79CD\u53E5\u5B50\u6CA1\u5199\u673A\u5236\u4E24\u4E2A\u5B57\uFF0C\u5374\u53EA\u80FD\u9760\u65B0\u72B6\u6001\u3001\u7F13\u5B58\u3001\u5931\u6548\u89C4\u5219\u6EE1\u8DB3\uFF1B\u5148\u6253\u5F00\u73B0\u72B6\u4EE3\u7801\u6838\u4E00\u904D\u5B83\u505A\u4E0D\u505A\u5F97\u5230\uFF0C\u505A\u4E0D\u5230\u5C31\u662F\u8FD9\u7C7B" }
|
|
621
|
+
),
|
|
622
|
+
makes: Type2.String({ description: "\u8FD9\u6761\u6761\u6B3E\u843D\u5B9E\u540E\u4F1A\u8BA9\u4EC0\u4E48\u4E1C\u897F\u5B58\u5728\uFF1A\u8DE8\u8C03\u7528\u4FDD\u5B58\u7684\u72B6\u6001\u3001\u7F13\u5B58\u3001\u9501\u3001\u5931\u6548\u89C4\u5219\u3001\u9884\u8BA1\u7B97\u3001\u65B0\u4F9D\u8D56\uFF1B\u5199\u51FA\u5B83\u7684\u5F62\u72B6\u3002\u53EA\u5199\u7ED3\u679C\u7684\u6761\u6B3E\uFF0C\u5199\u6EE1\u8DB3\u5B83\u5FC5\u987B\u957F\u51FA\u7684\u90A3\u6837\u4E1C\u897F" })
|
|
623
|
+
};
|
|
624
|
+
CLAUSE_LABELS = { without: "\u4E0D\u8981\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u8981\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "makes" };
|
|
625
|
+
clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
626
|
+
countersignSubmissionSchema = withTerminatingOutputDeclarations(
|
|
627
|
+
Type2.Object(
|
|
628
|
+
{
|
|
629
|
+
status: reviewStatusField,
|
|
630
|
+
...reviewNarrativeFields,
|
|
631
|
+
existence: Type2.Array(clauseExistenceRowSchema, {
|
|
632
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u73B0\u884C\u7968\u9762\u6BCF\u6761\u8BA9\u673A\u5236\u5B58\u5728\u7684\u6761\u6B3E\u5404\u4E00\u884C\u2014\u2014\u660E\u5199\u673A\u5236\u7684\uFF0C\u548C\u53EA\u5199\u7ED3\u679C\u8981\u6C42\u3001\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\u7684\uFF0C\u4E24\u7C7B\u90FD\u7B97\u2014\u2014\u5230 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u770B\u4E0D\u5E26\u5B83\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\u3002\u6709\u300C\u4E0D\u8981\u300D\u884C\u5728\uFF0C\u4E0D\u5F97\u7F72\uFF0C\u5C01\u9A73\u6216\u4E0A\u5448\u5E76\u70B9\u540D\u90A3\u6761\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u7B7E\u53D1\u65B9\u7B54\u8FC7\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u8981\u300D\u7684\u7406\u7531\uFF1B\u300C\u8981\u300D\u53EA\u8BA4\u793A\u8303\u91CC\u5E26\u540C\u6837\u7684\u5C42\u3002\u4E00\u6761\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
633
|
+
})
|
|
634
|
+
},
|
|
635
|
+
{ additionalProperties: true }
|
|
636
|
+
)
|
|
637
|
+
);
|
|
638
|
+
judgeMechanismRowSchema = mechanismRowUnion({
|
|
639
|
+
origin: Type2.Union(
|
|
640
|
+
[Type2.Literal("\u5B9E\u73B0\u51C0\u589E\uFF1A\u672C\u7968\u8D77\u70B9\u5230\u6240\u5BA1 HEAD \u7684\u751F\u4EA7\u4EE3\u7801\u91CC\u5DF2\u6709\u7684"), Type2.Literal("\u672C\u5224\u5904\u65B9\uFF1A\u672C\u8F6E\u5224\u8BCD\u7684\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684")],
|
|
641
|
+
{ description: "\u8FD9\u4E00\u5C42\u4ECE\u54EA\u6765\u3002\u5904\u65B9\u884C\u7684 where \u5199\u5904\u65B9\u539F\u6587\u800C\u4E0D\u662F path:line\uFF1B\u5904\u65B9\u4F1A\u957F\u51FA\u793A\u8303\u4E0D\u5E26\u7684\u5C42\uFF0C\u5904\u65B9\u672C\u8EAB\u5C31\u4E0D\u80FD\u5F00" }
|
|
642
|
+
)
|
|
643
|
+
});
|
|
644
|
+
judgeSubmissionSchema = withTerminatingOutputDeclarations(
|
|
645
|
+
Type2.Object(
|
|
646
|
+
{
|
|
647
|
+
status: reviewStatusField,
|
|
648
|
+
...reviewNarrativeFields,
|
|
649
|
+
mechanisms: Type2.Array(judgeMechanismRowSchema, {
|
|
650
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u6240\u5BA1\u5B9E\u73B0\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD \u751F\u4EA7\u4EE3\u7801\u65B0\u589E\u7684\u6BCF\u4E00\u5904\u4F9D\u8D56\u884C\u3001\u8DE8\u8C03\u7528\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u88C5\u9970\u6216\u5305\u88C5\u5404\u4E00\u884C\uFF08origin \u5B9E\u73B0\u51C0\u589E\uFF09\uFF0C\u518D\u52A0\u672C\u8F6E\u5224\u8BCD\u6BCF\u6761\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684\u6BCF\u4E00\u5C42\u5404\u4E00\u884C\uFF08origin \u672C\u5224\u5904\u65B9\uFF09\u3002\u6BCF\u884C\u53EA\u95EE\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u4E00\u5173\u5207\uFF08\u8BFB\u590D\u7528\u3001\u5E76\u53D1\u3001\u5931\u6548\u2026\u2026\uFF09\u5728 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u600E\u4E48\u5904\u7406\u2014\u2014\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF0C\u5C31\u662F\u5220\uFF1B\u4E0D\u95EE\u7968\u9762\u90A3\u53E5\u8981\u6C42\u80FD\u4E0D\u80FD\u9760\u793A\u8303\u6EE1\u8DB3\u3002\u7968\u9762\u8981\u6C42\u8D85\u8FC7\u793A\u8303\u7684\uFF0C\u884C\u7167\u586B\u5220\uFF0C\u90A3\u53E5\u8981\u6C42\u4E0A\u5448\u3002\u6709\u300C\u5220\u300D\u884C\uFF1A\u5B9E\u73B0\u91CC\u7684\uFF0C\u5224\u5220\u6216\u4E0A\u5448\uFF0C\u4E0D\u5F97\u636E\u4EE5\u7F72\u6536\u655B\uFF1B\u5904\u65B9\u91CC\u7684\uFF0C\u90A3\u6761\u5904\u65B9\u4E0D\u80FD\u5F00\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u65BD\u5DE5\u81EA\u8FF0\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u7559\u300D\u7684\u7406\u7531\u3002\u884C\u53EA\u80FD\u8FDB\u8FD9\u5F20\u8868\uFF1A\u4E0D\u53E6\u5F00\u5B57\u6BB5\u5B58\u653E\uFF0C\u4E0D\u7559\u300C\u5F85\u5B9A\u300D\uFF1B\u4E00\u5904\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
651
|
+
})
|
|
652
|
+
},
|
|
653
|
+
{ additionalProperties: true }
|
|
654
|
+
)
|
|
655
|
+
);
|
|
614
656
|
inspectorSubmissionSchema = withTerminatingOutputDeclarations(
|
|
615
657
|
Type2.Object(
|
|
616
658
|
{
|
|
@@ -4547,9 +4589,9 @@ var init_role_submission_declarations = __esm({
|
|
|
4547
4589
|
SUBMISSION_FACE = {
|
|
4548
4590
|
judge: {
|
|
4549
4591
|
label: "\u5927\u7406\u5BFA\u8F93\u51FA",
|
|
4550
|
-
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
4592
|
+
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF08\u542B\u6240\u5BA1\u5B9E\u73B0\u4E0E\u672C\u5224\u5904\u65B9\u7684\u5B58\u5E9F\u5C3A mechanisms\uFF09\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
4551
4593
|
promptSnippet: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD",
|
|
4552
|
-
parameters:
|
|
4594
|
+
parameters: judgeSubmissionSchema
|
|
4553
4595
|
},
|
|
4554
4596
|
fixer: {
|
|
4555
4597
|
label: "\u4FEE\u5185\u53F8\u8F93\u51FA",
|
|
@@ -4594,9 +4636,9 @@ var init_role_submission_declarations = __esm({
|
|
|
4594
4636
|
},
|
|
4595
4637
|
countersign: {
|
|
4596
4638
|
label: "\u7ED9\u4E8B\u4E2D\u8F93\u51FA",
|
|
4597
|
-
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\u3002",
|
|
4639
|
+
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\uFF08\u542B\u73B0\u884C\u7968\u9762\u6761\u6B3E\u7684\u5B58\u5E9F\u5C3A existence\uFF09\u3002",
|
|
4598
4640
|
promptSnippet: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE",
|
|
4599
|
-
parameters:
|
|
4641
|
+
parameters: countersignSubmissionSchema
|
|
4600
4642
|
},
|
|
4601
4643
|
secretariat: {
|
|
4602
4644
|
label: "\u4E2D\u4E66\u7701\u8F93\u51FA",
|
|
@@ -8707,7 +8707,7 @@ var init_navigator_output = __esm({
|
|
|
8707
8707
|
});
|
|
8708
8708
|
|
|
8709
8709
|
// src/review-submission.ts
|
|
8710
|
-
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
8710
|
+
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, existenceRowUnion, MECHANISM_LABELS, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, clauseRowBase, CLAUSE_LABELS, clauseExistenceRowSchema, countersignSubmissionSchema, judgeMechanismRowSchema, judgeSubmissionSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
8711
8711
|
var init_review_submission = __esm({
|
|
8712
8712
|
"src/review-submission.ts"() {
|
|
8713
8713
|
"use strict";
|
|
@@ -8805,39 +8805,81 @@ var init_review_submission = __esm({
|
|
|
8805
8805
|
layer: typebox_exports.Integer({ description: "\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD\uFF0C\u8FD9\u662F\u7B2C\u51E0\u5904\u8FD9\u6837\u7684\u65B0\u589E\uFF08\u542B\u524D\u51E0\u8F6E\u5DF2\u7F72\u8FC7\u7684\uFF09" })
|
|
8806
8806
|
};
|
|
8807
8807
|
MECHANISM_FRAMEWORK_RULE = "\u6846\u67B6\u662F\u4ED3\u5E93 ADR \u6216\u7968\u9762\u70B9\u540D\u7684\u90A3\u4E00\u4E2A\uFF08\u8BFB\u5199\u6A21\u578B\u3001Web\u3001\u6D4B\u8BD5\u7B49\u6846\u67B6\uFF09\uFF0C\u4E0D\u662F\u5E2D\u4F4D\u81EA\u9009\uFF1B\u5B9E\u73B0\u8FD9\u4E00\u5C42\u6240\u7528\u7684\u5E93\uFF08ORM\u3001\u7F13\u5B58\u5E93\u3001\u89E3\u6790\u5E93\uFF09\u4E0D\u662F\u6846\u67B6\uFF0C\u5B83\u7684 API \u9875\u6216\u793A\u4F8B\u586B\u4E0D\u8FDB\u8FD9\u683C\u2014\u2014\u90A3\u7B54\u7684\u662F\u300C\u8FD9\u5C42\u600E\u4E48\u505A\u300D\uFF0C\u8FD9\u683C\u95EE\u7684\u662F\u300C\u793A\u8303\u4E0D\u5E26\u8FD9\u5C42\u600E\u4E48\u529E\u300D";
|
|
8808
|
-
|
|
8808
|
+
existenceRowUnion = (base, labels, extra = {}) => typebox_exports.Union(
|
|
8809
8809
|
[
|
|
8810
8810
|
typebox_exports.Object(
|
|
8811
8811
|
{
|
|
8812
|
-
...
|
|
8812
|
+
...base,
|
|
8813
8813
|
official: typebox_exports.String({
|
|
8814
8814
|
description: `\u8FD9\u6BB5\u4EE3\u7801\u6240\u5C5E\u5E94\u7528\u6846\u67B6\u7684\u5B98\u65B9\u793A\u8303\u91CC\uFF0C\u4E0D\u5E26\u8FD9\u4E00\u5C42\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\uFF1A\u5148\u5199\u6846\u67B6\u540D\uFF0C\u518D\u94FE\u63A5\uFF0B\u539F\u53E5\uFF08\u793A\u8303\u91CC\u76F4\u63A5\u8BFB\u3001\u76F4\u63A5\u67E5\u3001\u4EA4\u7ED9\u6846\u67B6\u54EA\u9879\u8BBE\u7F6E\uFF09\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
8815
8815
|
}),
|
|
8816
|
-
disposition: typebox_exports.Literal(
|
|
8816
|
+
disposition: typebox_exports.Literal(labels.without, { description: "official \u586B\u4E86\u5B57\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
8817
8817
|
...extra
|
|
8818
8818
|
},
|
|
8819
8819
|
{ additionalProperties: true }
|
|
8820
8820
|
),
|
|
8821
8821
|
typebox_exports.Object(
|
|
8822
8822
|
{
|
|
8823
|
-
...
|
|
8823
|
+
...base,
|
|
8824
8824
|
official: typebox_exports.Null({
|
|
8825
|
-
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728
|
|
8825
|
+
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728 ${labels.evidenceField} \u672B\u5C3E\u5199\u6846\u67B6\u540D\u4E0E\u793A\u8303\u91CC\u90A3\u4E00\u5904\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
8826
8826
|
}),
|
|
8827
|
-
disposition: typebox_exports.Literal(
|
|
8827
|
+
disposition: typebox_exports.Literal(labels.carries, { description: "official \u4E3A null\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
8828
8828
|
...extra
|
|
8829
8829
|
},
|
|
8830
8830
|
{ additionalProperties: true }
|
|
8831
8831
|
)
|
|
8832
8832
|
],
|
|
8833
|
-
{ description:
|
|
8833
|
+
{ description: `\u4E24\u79CD\u884C\u5F62\uFF0C\u6CA1\u6709\u7B2C\u4E09\u79CD\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF08official \u586B\u5B57\uFF0C${labels.without.split("\uFF1A")[0]}\uFF09\uFF1B\u793A\u8303\u672C\u8EAB\u5C31\u5E26\u540C\u6837\u7684\u5C42\uFF08official null\uFF0C${labels.carries.split("\uFF1A")[0]}\uFF09` }
|
|
8834
8834
|
);
|
|
8835
|
+
MECHANISM_LABELS = { without: "\u5220\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u7559\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "keeps" };
|
|
8836
|
+
mechanismRowUnion = (extra = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
8835
8837
|
mechanismRowSchema = mechanismRowUnion();
|
|
8836
8838
|
auditorMechanismRowSchema = mechanismRowUnion({
|
|
8837
8839
|
judgeSaid: typebox_exports.Union([typebox_exports.String(), typebox_exports.Null()], {
|
|
8838
8840
|
description: "\u5927\u7406\u5BFA\u5224\u8BCD\u91CC\u88C1\u5230\u8FD9\u4E00\u5C42\u7684\u90A3\u53E5\u539F\u6587\uFF08\u7167\u6284\uFF09\uFF1B\u5224\u8BCD\u6CA1\u63D0\u8FD9\u4E00\u5C42\uFF0C\u586B null"
|
|
8839
8841
|
})
|
|
8840
8842
|
});
|
|
8843
|
+
clauseRowBase = {
|
|
8844
|
+
clause: typebox_exports.String({ description: "\u73B0\u884C\u7968\u9762\u91CC\u8BA9\u67D0\u4E2A\u673A\u5236\u5B58\u5728\u7684\u90A3\u6761\u6761\u6B3E\u539F\u6587\uFF08\u7167\u6284\uFF0C\u4E0D\u5408\u5E76\u3001\u4E0D\u6539\u5199\uFF09" }),
|
|
8845
|
+
kind: typebox_exports.Union(
|
|
8846
|
+
[typebox_exports.Literal("\u660E\u5199\u673A\u5236\uFF1A\u6761\u6B3E\u81EA\u5DF1\u70B9\u540D\u4E86\u72B6\u6001\u3001\u8868\u3001\u7F13\u5B58\u3001\u9501\u3001\u4F9D\u8D56"), typebox_exports.Literal("\u53EA\u5199\u7ED3\u679C\uFF1A\u6761\u6B3E\u53EA\u63D0\u8981\u6C42\uFF0C\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\uFF0C\u5F97\u957F\u51FA\u673A\u5236\u624D\u505A\u5F97\u5230")],
|
|
8847
|
+
{ description: "\u4E24\u7C7B\u90FD\u8981\u5217\u3002\u7B2C\u4E8C\u7C7B\u6700\u5BB9\u6613\u6F0F\uFF1A\u96F6\u91CD\u590D\u3001\u8DE8\u63D0\u4EA4\u4E0D\u91CD\u8BFB\u3001\u4E0D\u5EFA\u8C41\u514D\u3001\u6BCF X \u53EA\u505A\u4E00\u6B21\u3001\u6C38\u4E0D Y\u2014\u2014\u8FD9\u79CD\u53E5\u5B50\u6CA1\u5199\u673A\u5236\u4E24\u4E2A\u5B57\uFF0C\u5374\u53EA\u80FD\u9760\u65B0\u72B6\u6001\u3001\u7F13\u5B58\u3001\u5931\u6548\u89C4\u5219\u6EE1\u8DB3\uFF1B\u5148\u6253\u5F00\u73B0\u72B6\u4EE3\u7801\u6838\u4E00\u904D\u5B83\u505A\u4E0D\u505A\u5F97\u5230\uFF0C\u505A\u4E0D\u5230\u5C31\u662F\u8FD9\u7C7B" }
|
|
8848
|
+
),
|
|
8849
|
+
makes: typebox_exports.String({ description: "\u8FD9\u6761\u6761\u6B3E\u843D\u5B9E\u540E\u4F1A\u8BA9\u4EC0\u4E48\u4E1C\u897F\u5B58\u5728\uFF1A\u8DE8\u8C03\u7528\u4FDD\u5B58\u7684\u72B6\u6001\u3001\u7F13\u5B58\u3001\u9501\u3001\u5931\u6548\u89C4\u5219\u3001\u9884\u8BA1\u7B97\u3001\u65B0\u4F9D\u8D56\uFF1B\u5199\u51FA\u5B83\u7684\u5F62\u72B6\u3002\u53EA\u5199\u7ED3\u679C\u7684\u6761\u6B3E\uFF0C\u5199\u6EE1\u8DB3\u5B83\u5FC5\u987B\u957F\u51FA\u7684\u90A3\u6837\u4E1C\u897F" })
|
|
8850
|
+
};
|
|
8851
|
+
CLAUSE_LABELS = { without: "\u4E0D\u8981\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u8981\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "makes" };
|
|
8852
|
+
clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
8853
|
+
countersignSubmissionSchema = withTerminatingOutputDeclarations(
|
|
8854
|
+
typebox_exports.Object(
|
|
8855
|
+
{
|
|
8856
|
+
status: reviewStatusField,
|
|
8857
|
+
...reviewNarrativeFields,
|
|
8858
|
+
existence: typebox_exports.Array(clauseExistenceRowSchema, {
|
|
8859
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u73B0\u884C\u7968\u9762\u6BCF\u6761\u8BA9\u673A\u5236\u5B58\u5728\u7684\u6761\u6B3E\u5404\u4E00\u884C\u2014\u2014\u660E\u5199\u673A\u5236\u7684\uFF0C\u548C\u53EA\u5199\u7ED3\u679C\u8981\u6C42\u3001\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\u7684\uFF0C\u4E24\u7C7B\u90FD\u7B97\u2014\u2014\u5230 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u770B\u4E0D\u5E26\u5B83\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\u3002\u6709\u300C\u4E0D\u8981\u300D\u884C\u5728\uFF0C\u4E0D\u5F97\u7F72\uFF0C\u5C01\u9A73\u6216\u4E0A\u5448\u5E76\u70B9\u540D\u90A3\u6761\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u7B7E\u53D1\u65B9\u7B54\u8FC7\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u8981\u300D\u7684\u7406\u7531\uFF1B\u300C\u8981\u300D\u53EA\u8BA4\u793A\u8303\u91CC\u5E26\u540C\u6837\u7684\u5C42\u3002\u4E00\u6761\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
8860
|
+
})
|
|
8861
|
+
},
|
|
8862
|
+
{ additionalProperties: true }
|
|
8863
|
+
)
|
|
8864
|
+
);
|
|
8865
|
+
judgeMechanismRowSchema = mechanismRowUnion({
|
|
8866
|
+
origin: typebox_exports.Union(
|
|
8867
|
+
[typebox_exports.Literal("\u5B9E\u73B0\u51C0\u589E\uFF1A\u672C\u7968\u8D77\u70B9\u5230\u6240\u5BA1 HEAD \u7684\u751F\u4EA7\u4EE3\u7801\u91CC\u5DF2\u6709\u7684"), typebox_exports.Literal("\u672C\u5224\u5904\u65B9\uFF1A\u672C\u8F6E\u5224\u8BCD\u7684\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684")],
|
|
8868
|
+
{ description: "\u8FD9\u4E00\u5C42\u4ECE\u54EA\u6765\u3002\u5904\u65B9\u884C\u7684 where \u5199\u5904\u65B9\u539F\u6587\u800C\u4E0D\u662F path:line\uFF1B\u5904\u65B9\u4F1A\u957F\u51FA\u793A\u8303\u4E0D\u5E26\u7684\u5C42\uFF0C\u5904\u65B9\u672C\u8EAB\u5C31\u4E0D\u80FD\u5F00" }
|
|
8869
|
+
)
|
|
8870
|
+
});
|
|
8871
|
+
judgeSubmissionSchema = withTerminatingOutputDeclarations(
|
|
8872
|
+
typebox_exports.Object(
|
|
8873
|
+
{
|
|
8874
|
+
status: reviewStatusField,
|
|
8875
|
+
...reviewNarrativeFields,
|
|
8876
|
+
mechanisms: typebox_exports.Array(judgeMechanismRowSchema, {
|
|
8877
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u6240\u5BA1\u5B9E\u73B0\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD \u751F\u4EA7\u4EE3\u7801\u65B0\u589E\u7684\u6BCF\u4E00\u5904\u4F9D\u8D56\u884C\u3001\u8DE8\u8C03\u7528\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u88C5\u9970\u6216\u5305\u88C5\u5404\u4E00\u884C\uFF08origin \u5B9E\u73B0\u51C0\u589E\uFF09\uFF0C\u518D\u52A0\u672C\u8F6E\u5224\u8BCD\u6BCF\u6761\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684\u6BCF\u4E00\u5C42\u5404\u4E00\u884C\uFF08origin \u672C\u5224\u5904\u65B9\uFF09\u3002\u6BCF\u884C\u53EA\u95EE\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u4E00\u5173\u5207\uFF08\u8BFB\u590D\u7528\u3001\u5E76\u53D1\u3001\u5931\u6548\u2026\u2026\uFF09\u5728 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u600E\u4E48\u5904\u7406\u2014\u2014\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF0C\u5C31\u662F\u5220\uFF1B\u4E0D\u95EE\u7968\u9762\u90A3\u53E5\u8981\u6C42\u80FD\u4E0D\u80FD\u9760\u793A\u8303\u6EE1\u8DB3\u3002\u7968\u9762\u8981\u6C42\u8D85\u8FC7\u793A\u8303\u7684\uFF0C\u884C\u7167\u586B\u5220\uFF0C\u90A3\u53E5\u8981\u6C42\u4E0A\u5448\u3002\u6709\u300C\u5220\u300D\u884C\uFF1A\u5B9E\u73B0\u91CC\u7684\uFF0C\u5224\u5220\u6216\u4E0A\u5448\uFF0C\u4E0D\u5F97\u636E\u4EE5\u7F72\u6536\u655B\uFF1B\u5904\u65B9\u91CC\u7684\uFF0C\u90A3\u6761\u5904\u65B9\u4E0D\u80FD\u5F00\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u65BD\u5DE5\u81EA\u8FF0\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u7559\u300D\u7684\u7406\u7531\u3002\u884C\u53EA\u80FD\u8FDB\u8FD9\u5F20\u8868\uFF1A\u4E0D\u53E6\u5F00\u5B57\u6BB5\u5B58\u653E\uFF0C\u4E0D\u7559\u300C\u5F85\u5B9A\u300D\uFF1B\u4E00\u5904\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
8878
|
+
})
|
|
8879
|
+
},
|
|
8880
|
+
{ additionalProperties: true }
|
|
8881
|
+
)
|
|
8882
|
+
);
|
|
8841
8883
|
inspectorSubmissionSchema = withTerminatingOutputDeclarations(
|
|
8842
8884
|
typebox_exports.Object(
|
|
8843
8885
|
{
|
|
@@ -9843,9 +9885,9 @@ var init_role_submission_declarations = __esm({
|
|
|
9843
9885
|
SUBMISSION_FACE = {
|
|
9844
9886
|
judge: {
|
|
9845
9887
|
label: "\u5927\u7406\u5BFA\u8F93\u51FA",
|
|
9846
|
-
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
9888
|
+
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF08\u542B\u6240\u5BA1\u5B9E\u73B0\u4E0E\u672C\u5224\u5904\u65B9\u7684\u5B58\u5E9F\u5C3A mechanisms\uFF09\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
9847
9889
|
promptSnippet: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD",
|
|
9848
|
-
parameters:
|
|
9890
|
+
parameters: judgeSubmissionSchema
|
|
9849
9891
|
},
|
|
9850
9892
|
fixer: {
|
|
9851
9893
|
label: "\u4FEE\u5185\u53F8\u8F93\u51FA",
|
|
@@ -9890,9 +9932,9 @@ var init_role_submission_declarations = __esm({
|
|
|
9890
9932
|
},
|
|
9891
9933
|
countersign: {
|
|
9892
9934
|
label: "\u7ED9\u4E8B\u4E2D\u8F93\u51FA",
|
|
9893
|
-
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\u3002",
|
|
9935
|
+
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\uFF08\u542B\u73B0\u884C\u7968\u9762\u6761\u6B3E\u7684\u5B58\u5E9F\u5C3A existence\uFF09\u3002",
|
|
9894
9936
|
promptSnippet: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE",
|
|
9895
|
-
parameters:
|
|
9937
|
+
parameters: countersignSubmissionSchema
|
|
9896
9938
|
},
|
|
9897
9939
|
secretariat: {
|
|
9898
9940
|
label: "\u4E2D\u4E66\u7701\u8F93\u51FA",
|
package/dist/public-cli/main.js
CHANGED
|
@@ -9197,7 +9197,7 @@ var init_navigator_output = __esm({
|
|
|
9197
9197
|
});
|
|
9198
9198
|
|
|
9199
9199
|
// src/review-submission.ts
|
|
9200
|
-
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
9200
|
+
var REVIEW_SUBMISSION_OUTPUT_TOOL_NAME, REVIEW_QUEUE_WORDS, REVIEW_QUEUE_STATUSES, reviewStatusField, reviewNarrativeFields, reviewSubmissionSchema, notaryClauseItemSchema, notaryClausesField, notaryReviewSubmissionSchema, ticketComplexityRowSchema, mechanismRowBase, MECHANISM_FRAMEWORK_RULE, existenceRowUnion, MECHANISM_LABELS, mechanismRowUnion, mechanismRowSchema, auditorMechanismRowSchema, clauseRowBase, CLAUSE_LABELS, clauseExistenceRowSchema, countersignSubmissionSchema, judgeMechanismRowSchema, judgeSubmissionSchema, inspectorSubmissionSchema, auditorSubmissionSchema;
|
|
9201
9201
|
var init_review_submission = __esm({
|
|
9202
9202
|
"src/review-submission.ts"() {
|
|
9203
9203
|
"use strict";
|
|
@@ -9295,39 +9295,81 @@ var init_review_submission = __esm({
|
|
|
9295
9295
|
layer: typebox_exports.Integer({ description: "\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD\uFF0C\u8FD9\u662F\u7B2C\u51E0\u5904\u8FD9\u6837\u7684\u65B0\u589E\uFF08\u542B\u524D\u51E0\u8F6E\u5DF2\u7F72\u8FC7\u7684\uFF09" })
|
|
9296
9296
|
};
|
|
9297
9297
|
MECHANISM_FRAMEWORK_RULE = "\u6846\u67B6\u662F\u4ED3\u5E93 ADR \u6216\u7968\u9762\u70B9\u540D\u7684\u90A3\u4E00\u4E2A\uFF08\u8BFB\u5199\u6A21\u578B\u3001Web\u3001\u6D4B\u8BD5\u7B49\u6846\u67B6\uFF09\uFF0C\u4E0D\u662F\u5E2D\u4F4D\u81EA\u9009\uFF1B\u5B9E\u73B0\u8FD9\u4E00\u5C42\u6240\u7528\u7684\u5E93\uFF08ORM\u3001\u7F13\u5B58\u5E93\u3001\u89E3\u6790\u5E93\uFF09\u4E0D\u662F\u6846\u67B6\uFF0C\u5B83\u7684 API \u9875\u6216\u793A\u4F8B\u586B\u4E0D\u8FDB\u8FD9\u683C\u2014\u2014\u90A3\u7B54\u7684\u662F\u300C\u8FD9\u5C42\u600E\u4E48\u505A\u300D\uFF0C\u8FD9\u683C\u95EE\u7684\u662F\u300C\u793A\u8303\u4E0D\u5E26\u8FD9\u5C42\u600E\u4E48\u529E\u300D";
|
|
9298
|
-
|
|
9298
|
+
existenceRowUnion = (base, labels, extra = {}) => typebox_exports.Union(
|
|
9299
9299
|
[
|
|
9300
9300
|
typebox_exports.Object(
|
|
9301
9301
|
{
|
|
9302
|
-
...
|
|
9302
|
+
...base,
|
|
9303
9303
|
official: typebox_exports.String({
|
|
9304
9304
|
description: `\u8FD9\u6BB5\u4EE3\u7801\u6240\u5C5E\u5E94\u7528\u6846\u67B6\u7684\u5B98\u65B9\u793A\u8303\u91CC\uFF0C\u4E0D\u5E26\u8FD9\u4E00\u5C42\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\uFF1A\u5148\u5199\u6846\u67B6\u540D\uFF0C\u518D\u94FE\u63A5\uFF0B\u539F\u53E5\uFF08\u793A\u8303\u91CC\u76F4\u63A5\u8BFB\u3001\u76F4\u63A5\u67E5\u3001\u4EA4\u7ED9\u6846\u67B6\u54EA\u9879\u8BBE\u7F6E\uFF09\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
9305
9305
|
}),
|
|
9306
|
-
disposition: typebox_exports.Literal(
|
|
9306
|
+
disposition: typebox_exports.Literal(labels.without, { description: "official \u586B\u4E86\u5B57\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
9307
9307
|
...extra
|
|
9308
9308
|
},
|
|
9309
9309
|
{ additionalProperties: true }
|
|
9310
9310
|
),
|
|
9311
9311
|
typebox_exports.Object(
|
|
9312
9312
|
{
|
|
9313
|
-
...
|
|
9313
|
+
...base,
|
|
9314
9314
|
official: typebox_exports.Null({
|
|
9315
|
-
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728
|
|
9315
|
+
description: `\u793A\u8303\u4EE3\u7801\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u6216\u4F9D\u8D56\uFF1A\u586B null\uFF0C\u5E76\u5728 ${labels.evidenceField} \u672B\u5C3E\u5199\u6846\u67B6\u540D\u4E0E\u793A\u8303\u91CC\u90A3\u4E00\u5904\u3002${MECHANISM_FRAMEWORK_RULE}`
|
|
9316
9316
|
}),
|
|
9317
|
-
disposition: typebox_exports.Literal(
|
|
9317
|
+
disposition: typebox_exports.Literal(labels.carries, { description: "official \u4E3A null\uFF0C\u8FD9\u4E00\u884C\u53EA\u80FD\u662F\u8FD9\u4E2A\u5904\u7F6E" }),
|
|
9318
9318
|
...extra
|
|
9319
9319
|
},
|
|
9320
9320
|
{ additionalProperties: true }
|
|
9321
9321
|
)
|
|
9322
9322
|
],
|
|
9323
|
-
{ description:
|
|
9323
|
+
{ description: `\u4E24\u79CD\u884C\u5F62\uFF0C\u6CA1\u6709\u7B2C\u4E09\u79CD\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF08official \u586B\u5B57\uFF0C${labels.without.split("\uFF1A")[0]}\uFF09\uFF1B\u793A\u8303\u672C\u8EAB\u5C31\u5E26\u540C\u6837\u7684\u5C42\uFF08official null\uFF0C${labels.carries.split("\uFF1A")[0]}\uFF09` }
|
|
9324
9324
|
);
|
|
9325
|
+
MECHANISM_LABELS = { without: "\u5220\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u7559\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "keeps" };
|
|
9326
|
+
mechanismRowUnion = (extra = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
9325
9327
|
mechanismRowSchema = mechanismRowUnion();
|
|
9326
9328
|
auditorMechanismRowSchema = mechanismRowUnion({
|
|
9327
9329
|
judgeSaid: typebox_exports.Union([typebox_exports.String(), typebox_exports.Null()], {
|
|
9328
9330
|
description: "\u5927\u7406\u5BFA\u5224\u8BCD\u91CC\u88C1\u5230\u8FD9\u4E00\u5C42\u7684\u90A3\u53E5\u539F\u6587\uFF08\u7167\u6284\uFF09\uFF1B\u5224\u8BCD\u6CA1\u63D0\u8FD9\u4E00\u5C42\uFF0C\u586B null"
|
|
9329
9331
|
})
|
|
9330
9332
|
});
|
|
9333
|
+
clauseRowBase = {
|
|
9334
|
+
clause: typebox_exports.String({ description: "\u73B0\u884C\u7968\u9762\u91CC\u8BA9\u67D0\u4E2A\u673A\u5236\u5B58\u5728\u7684\u90A3\u6761\u6761\u6B3E\u539F\u6587\uFF08\u7167\u6284\uFF0C\u4E0D\u5408\u5E76\u3001\u4E0D\u6539\u5199\uFF09" }),
|
|
9335
|
+
kind: typebox_exports.Union(
|
|
9336
|
+
[typebox_exports.Literal("\u660E\u5199\u673A\u5236\uFF1A\u6761\u6B3E\u81EA\u5DF1\u70B9\u540D\u4E86\u72B6\u6001\u3001\u8868\u3001\u7F13\u5B58\u3001\u9501\u3001\u4F9D\u8D56"), typebox_exports.Literal("\u53EA\u5199\u7ED3\u679C\uFF1A\u6761\u6B3E\u53EA\u63D0\u8981\u6C42\uFF0C\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\uFF0C\u5F97\u957F\u51FA\u673A\u5236\u624D\u505A\u5F97\u5230")],
|
|
9337
|
+
{ description: "\u4E24\u7C7B\u90FD\u8981\u5217\u3002\u7B2C\u4E8C\u7C7B\u6700\u5BB9\u6613\u6F0F\uFF1A\u96F6\u91CD\u590D\u3001\u8DE8\u63D0\u4EA4\u4E0D\u91CD\u8BFB\u3001\u4E0D\u5EFA\u8C41\u514D\u3001\u6BCF X \u53EA\u505A\u4E00\u6B21\u3001\u6C38\u4E0D Y\u2014\u2014\u8FD9\u79CD\u53E5\u5B50\u6CA1\u5199\u673A\u5236\u4E24\u4E2A\u5B57\uFF0C\u5374\u53EA\u80FD\u9760\u65B0\u72B6\u6001\u3001\u7F13\u5B58\u3001\u5931\u6548\u89C4\u5219\u6EE1\u8DB3\uFF1B\u5148\u6253\u5F00\u73B0\u72B6\u4EE3\u7801\u6838\u4E00\u904D\u5B83\u505A\u4E0D\u505A\u5F97\u5230\uFF0C\u505A\u4E0D\u5230\u5C31\u662F\u8FD9\u7C7B" }
|
|
9338
|
+
),
|
|
9339
|
+
makes: typebox_exports.String({ description: "\u8FD9\u6761\u6761\u6B3E\u843D\u5B9E\u540E\u4F1A\u8BA9\u4EC0\u4E48\u4E1C\u897F\u5B58\u5728\uFF1A\u8DE8\u8C03\u7528\u4FDD\u5B58\u7684\u72B6\u6001\u3001\u7F13\u5B58\u3001\u9501\u3001\u5931\u6548\u89C4\u5219\u3001\u9884\u8BA1\u7B97\u3001\u65B0\u4F9D\u8D56\uFF1B\u5199\u51FA\u5B83\u7684\u5F62\u72B6\u3002\u53EA\u5199\u7ED3\u679C\u7684\u6761\u6B3E\uFF0C\u5199\u6EE1\u8DB3\u5B83\u5FC5\u987B\u957F\u51FA\u7684\u90A3\u6837\u4E1C\u897F" })
|
|
9340
|
+
};
|
|
9341
|
+
CLAUSE_LABELS = { without: "\u4E0D\u8981\uFF1A\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86", carries: "\u8981\uFF1A\u793A\u8303\u672C\u8EAB\u5C31\u4E3A\u540C\u4E00\u5173\u5207\u5E26\u540C\u6837\u7684\u5C42", evidenceField: "makes" };
|
|
9342
|
+
clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
9343
|
+
countersignSubmissionSchema = withTerminatingOutputDeclarations(
|
|
9344
|
+
typebox_exports.Object(
|
|
9345
|
+
{
|
|
9346
|
+
status: reviewStatusField,
|
|
9347
|
+
...reviewNarrativeFields,
|
|
9348
|
+
existence: typebox_exports.Array(clauseExistenceRowSchema, {
|
|
9349
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u73B0\u884C\u7968\u9762\u6BCF\u6761\u8BA9\u673A\u5236\u5B58\u5728\u7684\u6761\u6B3E\u5404\u4E00\u884C\u2014\u2014\u660E\u5199\u673A\u5236\u7684\uFF0C\u548C\u53EA\u5199\u7ED3\u679C\u8981\u6C42\u3001\u73B0\u72B6\u4EE3\u7801\u6EE1\u8DB3\u4E0D\u4E86\u7684\uFF0C\u4E24\u7C7B\u90FD\u7B97\u2014\u2014\u5230 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u770B\u4E0D\u5E26\u5B83\u65F6\u540C\u4E00\u5173\u5207\u600E\u4E48\u5904\u7406\u3002\u6709\u300C\u4E0D\u8981\u300D\u884C\u5728\uFF0C\u4E0D\u5F97\u7F72\uFF0C\u5C01\u9A73\u6216\u4E0A\u5448\u5E76\u70B9\u540D\u90A3\u6761\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u7B7E\u53D1\u65B9\u7B54\u8FC7\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u8981\u300D\u7684\u7406\u7531\uFF1B\u300C\u8981\u300D\u53EA\u8BA4\u793A\u8303\u91CC\u5E26\u540C\u6837\u7684\u5C42\u3002\u4E00\u6761\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
9350
|
+
})
|
|
9351
|
+
},
|
|
9352
|
+
{ additionalProperties: true }
|
|
9353
|
+
)
|
|
9354
|
+
);
|
|
9355
|
+
judgeMechanismRowSchema = mechanismRowUnion({
|
|
9356
|
+
origin: typebox_exports.Union(
|
|
9357
|
+
[typebox_exports.Literal("\u5B9E\u73B0\u51C0\u589E\uFF1A\u672C\u7968\u8D77\u70B9\u5230\u6240\u5BA1 HEAD \u7684\u751F\u4EA7\u4EE3\u7801\u91CC\u5DF2\u6709\u7684"), typebox_exports.Literal("\u672C\u5224\u5904\u65B9\uFF1A\u672C\u8F6E\u5224\u8BCD\u7684\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684")],
|
|
9358
|
+
{ description: "\u8FD9\u4E00\u5C42\u4ECE\u54EA\u6765\u3002\u5904\u65B9\u884C\u7684 where \u5199\u5904\u65B9\u539F\u6587\u800C\u4E0D\u662F path:line\uFF1B\u5904\u65B9\u4F1A\u957F\u51FA\u793A\u8303\u4E0D\u5E26\u7684\u5C42\uFF0C\u5904\u65B9\u672C\u8EAB\u5C31\u4E0D\u80FD\u5F00" }
|
|
9359
|
+
)
|
|
9360
|
+
});
|
|
9361
|
+
judgeSubmissionSchema = withTerminatingOutputDeclarations(
|
|
9362
|
+
typebox_exports.Object(
|
|
9363
|
+
{
|
|
9364
|
+
status: reviewStatusField,
|
|
9365
|
+
...reviewNarrativeFields,
|
|
9366
|
+
mechanisms: typebox_exports.Array(judgeMechanismRowSchema, {
|
|
9367
|
+
description: "\u5B58\u5E9F\u5C3A\uFF1A\u6240\u5BA1\u5B9E\u73B0\u4ECE\u672C\u7968\u8D77\u70B9\u5230 HEAD \u751F\u4EA7\u4EE3\u7801\u65B0\u589E\u7684\u6BCF\u4E00\u5904\u4F9D\u8D56\u884C\u3001\u8DE8\u8C03\u7528\u72B6\u6001\u3001\u9501\u3001\u7F13\u5B58\u88C5\u9970\u6216\u5305\u88C5\u5404\u4E00\u884C\uFF08origin \u5B9E\u73B0\u51C0\u589E\uFF09\uFF0C\u518D\u52A0\u672C\u8F6E\u5224\u8BCD\u6BCF\u6761\u5904\u65B9\u6216\u7EA6\u675F\u843D\u5B9E\u540E\u4F1A\u957F\u51FA\u7684\u6BCF\u4E00\u5C42\u5404\u4E00\u884C\uFF08origin \u672C\u5224\u5904\u65B9\uFF09\u3002\u6BCF\u884C\u53EA\u95EE\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u4E00\u5173\u5207\uFF08\u8BFB\u590D\u7528\u3001\u5E76\u53D1\u3001\u5931\u6548\u2026\u2026\uFF09\u5728 ADR\uFF0F\u7968\u9762\u70B9\u540D\u7684\u5E94\u7528\u6846\u67B6\u5B98\u65B9\u793A\u8303\u91CC\u600E\u4E48\u5904\u7406\u2014\u2014\u793A\u8303\u4E0D\u5E26\u8FD9\u4E00\u5C42\u4E5F\u5904\u7406\u5F97\u4E86\uFF0C\u5C31\u662F\u5220\uFF1B\u4E0D\u95EE\u7968\u9762\u90A3\u53E5\u8981\u6C42\u80FD\u4E0D\u80FD\u9760\u793A\u8303\u6EE1\u8DB3\u3002\u7968\u9762\u8981\u6C42\u8D85\u8FC7\u793A\u8303\u7684\uFF0C\u884C\u7167\u586B\u5220\uFF0C\u90A3\u53E5\u8981\u6C42\u4E0A\u5448\u3002\u6709\u300C\u5220\u300D\u884C\uFF1A\u5B9E\u73B0\u91CC\u7684\uFF0C\u5224\u5220\u6216\u4E0A\u5448\uFF0C\u4E0D\u5F97\u636E\u4EE5\u7F72\u6536\u655B\uFF1B\u5904\u65B9\u91CC\u7684\uFF0C\u90A3\u6761\u5904\u65B9\u4E0D\u80FD\u5F00\u3002\u7968\u9762\u5DF2\u5199\u3001\u524D\u8F6E\u5224\u8BCD\u8981\u6C42\u8FC7\u3001\u65BD\u5DE5\u81EA\u8FF0\u3001\u965B\u4E0B\u5BF9\u522B\u7684\u9898\u70B9\u8FC7\u5934\uFF0C\u90FD\u4E0D\u662F\u300C\u7559\u300D\u7684\u7406\u7531\u3002\u884C\u53EA\u80FD\u8FDB\u8FD9\u5F20\u8868\uFF1A\u4E0D\u53E6\u5F00\u5B57\u6BB5\u5B58\u653E\uFF0C\u4E0D\u7559\u300C\u5F85\u5B9A\u300D\uFF1B\u4E00\u5904\u6CA1\u6709\u4E3A\u7A7A\u6570\u7EC4\u3002"
|
|
9368
|
+
})
|
|
9369
|
+
},
|
|
9370
|
+
{ additionalProperties: true }
|
|
9371
|
+
)
|
|
9372
|
+
);
|
|
9331
9373
|
inspectorSubmissionSchema = withTerminatingOutputDeclarations(
|
|
9332
9374
|
typebox_exports.Object(
|
|
9333
9375
|
{
|
|
@@ -11583,9 +11625,9 @@ var init_role_submission_declarations = __esm({
|
|
|
11583
11625
|
SUBMISSION_FACE = {
|
|
11584
11626
|
judge: {
|
|
11585
11627
|
label: "\u5927\u7406\u5BFA\u8F93\u51FA",
|
|
11586
|
-
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
11628
|
+
description: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD\uFF08\u542B\u6240\u5BA1\u5B9E\u73B0\u4E0E\u672C\u5224\u5904\u65B9\u7684\u5B58\u5E9F\u5C3A mechanisms\uFF09\uFF1B\u4EA4\u5377\u8C03\u7528\u7ED3\u675F\u540E\uFF0C\u7531\u516C\u5F00\u8C03\u7528\u63A5\u7F1D\u6309\u5224\u8BCD\u72B6\u6001\u6267\u884C\u9002\u7528\u5BA1\u6838\u3002",
|
|
11587
11629
|
promptSnippet: "\u63D0\u4EA4\u5927\u7406\u5BFA\u7EC8\u5C40\u5224\u8BCD",
|
|
11588
|
-
parameters:
|
|
11630
|
+
parameters: judgeSubmissionSchema
|
|
11589
11631
|
},
|
|
11590
11632
|
fixer: {
|
|
11591
11633
|
label: "\u4FEE\u5185\u53F8\u8F93\u51FA",
|
|
@@ -11630,9 +11672,9 @@ var init_role_submission_declarations = __esm({
|
|
|
11630
11672
|
},
|
|
11631
11673
|
countersign: {
|
|
11632
11674
|
label: "\u7ED9\u4E8B\u4E2D\u8F93\u51FA",
|
|
11633
|
-
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\u3002",
|
|
11675
|
+
description: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE\uFF08\u542B\u73B0\u884C\u7968\u9762\u6761\u6B3E\u7684\u5B58\u5E9F\u5C3A existence\uFF09\u3002",
|
|
11634
11676
|
promptSnippet: "\u7ED9\u4E8B\u4E2D\u51B3\u8BAE",
|
|
11635
|
-
parameters:
|
|
11677
|
+
parameters: countersignSubmissionSchema
|
|
11636
11678
|
},
|
|
11637
11679
|
secretariat: {
|
|
11638
11680
|
label: "\u4E2D\u4E66\u7701\u8F93\u51FA",
|
|
@@ -94,25 +94,26 @@ const mechanismRowBase = {
|
|
|
94
94
|
layer: Type.Integer({ description: "从本票起点到 HEAD,这是第几处这样的新增(含前几轮已署过的)" }),
|
|
95
95
|
};
|
|
96
96
|
const MECHANISM_FRAMEWORK_RULE = "框架是仓库 ADR 或票面点名的那一个(读写模型、Web、测试等框架),不是席位自选;实现这一层所用的库(ORM、缓存库、解析库)不是框架,它的 API 页或示例填不进这格——那答的是「这层怎么做」,这格问的是「示范不带这层怎么办」";
|
|
97
|
-
|
|
98
|
-
const mechanismRowUnion = (extra = {}) => Type.Union([
|
|
97
|
+
const existenceRowUnion = (base, labels, extra = {}) => Type.Union([
|
|
99
98
|
Type.Object({
|
|
100
|
-
...
|
|
99
|
+
...base,
|
|
101
100
|
official: Type.String({
|
|
102
101
|
description: `这段代码所属应用框架的官方示范里,不带这一层时同一关切怎么处理:先写框架名,再链接+原句(示范里直接读、直接查、交给框架哪项设置)。${MECHANISM_FRAMEWORK_RULE}`,
|
|
103
102
|
}),
|
|
104
|
-
disposition: Type.Literal(
|
|
103
|
+
disposition: Type.Literal(labels.without, { description: "official 填了字,这一行只能是这个处置" }),
|
|
105
104
|
...extra,
|
|
106
105
|
}, { additionalProperties: true }),
|
|
107
106
|
Type.Object({
|
|
108
|
-
...
|
|
107
|
+
...base,
|
|
109
108
|
official: Type.Null({
|
|
110
|
-
description: `示范代码本身就为同一关切带同样的状态、锁、缓存或依赖:填 null,并在
|
|
109
|
+
description: `示范代码本身就为同一关切带同样的状态、锁、缓存或依赖:填 null,并在 ${labels.evidenceField} 末尾写框架名与示范里那一处。${MECHANISM_FRAMEWORK_RULE}`,
|
|
111
110
|
}),
|
|
112
|
-
disposition: Type.Literal(
|
|
111
|
+
disposition: Type.Literal(labels.carries, { description: "official 为 null,这一行只能是这个处置" }),
|
|
113
112
|
...extra,
|
|
114
113
|
}, { additionalProperties: true }),
|
|
115
|
-
], { description:
|
|
114
|
+
], { description: `两种行形,没有第三种:示范不带这一层也处理得了(official 填字,${labels.without.split(":")[0]});示范本身就带同样的层(official null,${labels.carries.split(":")[0]})` });
|
|
115
|
+
const MECHANISM_LABELS = { without: "删:示范不带这一层也处理得了", carries: "留:示范本身就为同一关切带同样的层", evidenceField: "keeps" };
|
|
116
|
+
const mechanismRowUnion = (extra = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
116
117
|
export const mechanismRowSchema = mechanismRowUnion();
|
|
117
118
|
/** Auditor row: the inspector row plus what the judge's verdict said about this layer, verbatim, or null when the verdict never touched it. */
|
|
118
119
|
export const auditorMechanismRowSchema = mechanismRowUnion({
|
|
@@ -120,6 +121,34 @@ export const auditorMechanismRowSchema = mechanismRowUnion({
|
|
|
120
121
|
description: "大理寺判词里裁到这一层的那句原文(照抄);判词没提这一层,填 null",
|
|
121
122
|
}),
|
|
122
123
|
});
|
|
124
|
+
/** 存废尺 row for a ticket clause: what the clause makes exist, against the framework's example. */
|
|
125
|
+
const clauseRowBase = {
|
|
126
|
+
clause: Type.String({ description: "现行票面里让某个机制存在的那条条款原文(照抄,不合并、不改写)" }),
|
|
127
|
+
kind: Type.Union([Type.Literal("明写机制:条款自己点名了状态、表、缓存、锁、依赖"), Type.Literal("只写结果:条款只提要求,现状代码满足不了,得长出机制才做得到")], { description: "两类都要列。第二类最容易漏:零重复、跨提交不重读、不建豁免、每 X 只做一次、永不 Y——这种句子没写机制两个字,却只能靠新状态、缓存、失效规则满足;先打开现状代码核一遍它做不做得到,做不到就是这类" }),
|
|
128
|
+
makes: Type.String({ description: "这条条款落实后会让什么东西存在:跨调用保存的状态、缓存、锁、失效规则、预计算、新依赖;写出它的形状。只写结果的条款,写满足它必须长出的那样东西" }),
|
|
129
|
+
};
|
|
130
|
+
const CLAUSE_LABELS = { without: "不要:示范不带这一层也处理得了", carries: "要:示范本身就为同一关切带同样的层", evidenceField: "makes" };
|
|
131
|
+
export const clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
132
|
+
/** Countersign generation schema: shared review face plus the 存废尺 over the current ticket's clauses (package records as-is). */
|
|
133
|
+
export const countersignSubmissionSchema = withTerminatingOutputDeclarations(Type.Object({
|
|
134
|
+
status: reviewStatusField,
|
|
135
|
+
...reviewNarrativeFields,
|
|
136
|
+
existence: Type.Array(clauseExistenceRowSchema, {
|
|
137
|
+
description: "存废尺:现行票面每条让机制存在的条款各一行——明写机制的,和只写结果要求、现状代码满足不了的,两类都算——到 ADR/票面点名的应用框架官方示范里看不带它时同一关切怎么处理。有「不要」行在,不得署,封驳或上呈并点名那条。票面已写、前轮判词要求过、签发方答过、陛下对别的题点过头,都不是「要」的理由;「要」只认示范里带同样的层。一条没有为空数组。",
|
|
138
|
+
}),
|
|
139
|
+
}, { additionalProperties: true }));
|
|
140
|
+
/** Judge row: the mechanism row plus where the layer comes from — the implementation under judgment, or the judge's own prescription. */
|
|
141
|
+
export const judgeMechanismRowSchema = mechanismRowUnion({
|
|
142
|
+
origin: Type.Union([Type.Literal("实现净增:本票起点到所审 HEAD 的生产代码里已有的"), Type.Literal("本判处方:本轮判词的处方或约束落实后会长出的")], { description: "这一层从哪来。处方行的 where 写处方原文而不是 path:line;处方会长出示范不带的层,处方本身就不能开" }),
|
|
143
|
+
});
|
|
144
|
+
/** Judge generation schema: shared review face plus the 存废尺 over everything the verdict rules on (package records as-is). */
|
|
145
|
+
export const judgeSubmissionSchema = withTerminatingOutputDeclarations(Type.Object({
|
|
146
|
+
status: reviewStatusField,
|
|
147
|
+
...reviewNarrativeFields,
|
|
148
|
+
mechanisms: Type.Array(judgeMechanismRowSchema, {
|
|
149
|
+
description: "存废尺:所审实现从本票起点到 HEAD 生产代码新增的每一处依赖行、跨调用状态、锁、缓存装饰或包装各一行(origin 实现净增),再加本轮判词每条处方或约束落实后会长出的每一层各一行(origin 本判处方)。每行只问一件事:这一关切(读复用、并发、失效……)在 ADR/票面点名的应用框架官方示范里怎么处理——示范不带这一层也处理得了,就是删;不问票面那句要求能不能靠示范满足。票面要求超过示范的,行照填删,那句要求上呈。有「删」行:实现里的,判删或上呈,不得据以署收敛;处方里的,那条处方不能开。票面已写、前轮判词要求过、施工自述、陛下对别的题点过头,都不是「留」的理由。行只能进这张表:不另开字段存放,不留「待定」;一处没有为空数组。",
|
|
150
|
+
}),
|
|
151
|
+
}, { additionalProperties: true }));
|
|
123
152
|
/** Inspector generation schema: shared review face plus the required whole-ticket complexity answer (package records as-is). */
|
|
124
153
|
export const inspectorSubmissionSchema = withTerminatingOutputDeclarations(Type.Object({
|
|
125
154
|
status: reviewStatusField,
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Execute lives in filed-submission.ts.
|
|
6
6
|
*/
|
|
7
7
|
import { packagedRoleOutputTool } from "./packaged-role-registry.js";
|
|
8
|
-
import { auditorSubmissionSchema, notaryReviewSubmissionSchema, inspectorSubmissionSchema, reviewSubmissionSchema } from "./review-submission.js";
|
|
8
|
+
import { auditorSubmissionSchema, countersignSubmissionSchema, judgeSubmissionSchema, notaryReviewSubmissionSchema, inspectorSubmissionSchema, reviewSubmissionSchema } from "./review-submission.js";
|
|
9
9
|
import { collectorOutputArgsSchema } from "./collector-tool-schemas.js";
|
|
10
10
|
import { diaristOutputSchema } from "./diarist-contracts.js";
|
|
11
11
|
import { doctorSubmissionSchema, DOCTOR_OUTPUT_TOOL_DESCRIPTION } from "./doctor-contracts.js";
|
|
@@ -20,9 +20,9 @@ import { coderOutputSchema } from "./package-contracts/worker-output.js";
|
|
|
20
20
|
const SUBMISSION_FACE = {
|
|
21
21
|
judge: {
|
|
22
22
|
label: "大理寺输出",
|
|
23
|
-
description: "
|
|
23
|
+
description: "提交大理寺终局判词(含所审实现与本判处方的存废尺 mechanisms);交卷调用结束后,由公开调用接缝按判词状态执行适用审核。",
|
|
24
24
|
promptSnippet: "提交大理寺终局判词",
|
|
25
|
-
parameters:
|
|
25
|
+
parameters: judgeSubmissionSchema,
|
|
26
26
|
},
|
|
27
27
|
fixer: {
|
|
28
28
|
label: "修内司输出",
|
|
@@ -67,9 +67,9 @@ const SUBMISSION_FACE = {
|
|
|
67
67
|
},
|
|
68
68
|
countersign: {
|
|
69
69
|
label: "给事中输出",
|
|
70
|
-
description: "
|
|
70
|
+
description: "给事中决议(含现行票面条款的存废尺 existence)。",
|
|
71
71
|
promptSnippet: "给事中决议",
|
|
72
|
-
parameters:
|
|
72
|
+
parameters: countersignSubmissionSchema,
|
|
73
73
|
},
|
|
74
74
|
secretariat: {
|
|
75
75
|
label: "中书省输出",
|
package/package.json
CHANGED
package/souls/countersign.md
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
**四、缺失** 法源要求的,票面有没有漏:适用法只查两类:票面与某条 ADR 决定相抵的,和把某条决定留给别的票承接的,票面须写明该条与「由 #x 承接」;这两类之外的 ADR 没引不算缺失,不得为此封驳;验收面须覆盖票面每条主张;票面里每一条行为都须答得出《送庭前三问》第一问:起、停、续、终、接各归谁没写的行为,即缺失;给模型、入口或调用方定了读写范围、却没按《设计法·好设计稿》写明一次给多少的,即缺失,沿用父票或 ADR 的也一样;前置产物、决定、答复须在;承重主张的源头不存在、不支持、已过时,同为缺失。缺失列表在能力范围内一次扫完,尽量避免因缺失导致多轮往返。
|
|
26
26
|
|
|
27
|
-
**五、擅加**
|
|
27
|
+
**五、擅加** 票面有没有超出法源的机制、约束、验收、术语。票面按类各定一套行为或文案的,就是在要分类机制;陛下没点名要的,上呈,附单一做法。存废尺按条款过:票面每条让机制存在的条款各记一行进 existence——条款自己点名了状态、表、缓存、锁、依赖的是一类;只写结果要求(零重复、跨提交不重读、不建豁免、每 X 只做一次)而现状代码满足不了、得长出机制才做得到的是另一类,先打开现状代码核它做不做得到——到 ADR/票面点名的应用框架官方示范里看不带它时同一关切怎么处理;示范不带也处理得了的,这条不要,不得署。票面已写、前轮判词要求过、签发方答过、陛下对别的题点过头,都不是要它的理由——要,只认示范里本来就带同样的层。
|
|
28
28
|
|
|
29
29
|
各步取证按《审法·取证授权》:工具与方式不受限,读码、开卷、传召、下探针皆可;不得删除、覆写或移动 worktree 与临时目录之外的既存路径(《审法·取证边界》)。交付时候清理回原样
|
|
30
30
|
|
package/souls/judge.md
CHANGED
|
@@ -9,7 +9,7 @@ Judge Soul(大理寺)
|
|
|
9
9
|
五、裁断。 主张不是证据。一切 LLM 主张须亲验;当前事实只认当前 head,修复者自述不能替代新 head 上的机械验证与独立复查。机器执行的事实怎么核,见《审法·取证授权》。
|
|
10
10
|
事实与处方分判:事实成立而处方违法源,保留事实,驳回处方或另开合法处方。 每条问题显式记录和处置,严重度由你裁定,不因级别低而遗漏或暗降;裁决与驳回须锚定法源和证据。依当前一手证据独立双向抽样重推,误删与该删未删同查。
|
|
11
11
|
测试质量须亲审。取证与同类复核依《审法》;复杂度、测试质量与成本依《质量法》,不另立一套标准。
|
|
12
|
-
|
|
12
|
+
删简根因优先。存废尺按层过:所审实现净增的每一处跨调用状态、锁、缓存、依赖,和你每条处方落实后会长出的每一层,各记一行进 mechanisms。每行只问一件事:这一关切在 ADR/票面点名的应用框架官方示范里怎么处理——示范不带这一层也处理得了,就填删;不问票面那句要求能不能靠示范满足,票面要求超过示范的,行照填删、那句要求上呈。实现里的删行判删或上呈,处方里的删行那条处方不能开;票面已写、前轮判词要求过、施工自述、陛下对别的题点过头,都不是留它的理由。行只进 mechanisms,不另开字段存放、不留待定。护栏类 finding(防误用、交错、边角的检查或绑定)无真实可复现的失败或历史实例的,按过度防御驳回,不列 P1;票面明写不做的机制,处方不得开(越权加戏)。批准护栏须说明不变式所属接缝及为何删简根因不足。
|
|
13
13
|
区分原缺陷所需改动、修复自身造成的返工、无依据的新机制;后两类主导时优先拆除或简化。同缝反复、根因不明、范围发散、疑跨接缝或 flake,先做最小化、证据驱动的诊断,不继续猜修。一轮轮只加不减,本身就是须上报的问题。
|
|
14
14
|
判词
|
|
15
15
|
|
package/src/review-submission.ts
CHANGED
|
@@ -136,36 +136,49 @@ const mechanismRowBase = {
|
|
|
136
136
|
const MECHANISM_FRAMEWORK_RULE =
|
|
137
137
|
"框架是仓库 ADR 或票面点名的那一个(读写模型、Web、测试等框架),不是席位自选;实现这一层所用的库(ORM、缓存库、解析库)不是框架,它的 API 页或示例填不进这格——那答的是「这层怎么做」,这格问的是「示范不带这层怎么办」";
|
|
138
138
|
|
|
139
|
-
/**
|
|
140
|
-
|
|
139
|
+
/**
|
|
140
|
+
* The two row shapes of the 存废尺 (existence ruler), with any extra per-row fields a seat needs.
|
|
141
|
+
* `base` names the thing (a production line for 台院/大理寺/审刑院, a ticket clause for 中书省/给事中);
|
|
142
|
+
* `labels` are the two dispositions (删/留 for code, 不要/要 for clauses). The coupling is the same everywhere:
|
|
143
|
+
* official filled = the example manages without it; official null = the example carries the same layer.
|
|
144
|
+
*/
|
|
145
|
+
type RowFields = Record<string, ReturnType<typeof Type.String> | ReturnType<typeof Type.Integer> | ReturnType<typeof Type.Union>>;
|
|
146
|
+
const existenceRowUnion = (
|
|
147
|
+
base: RowFields,
|
|
148
|
+
labels: { readonly without: string; readonly carries: string; readonly evidenceField: string },
|
|
149
|
+
extra: RowFields = {},
|
|
150
|
+
) =>
|
|
141
151
|
Type.Union(
|
|
142
152
|
[
|
|
143
153
|
Type.Object(
|
|
144
154
|
{
|
|
145
|
-
...
|
|
155
|
+
...base,
|
|
146
156
|
official: Type.String({
|
|
147
157
|
description: `这段代码所属应用框架的官方示范里,不带这一层时同一关切怎么处理:先写框架名,再链接+原句(示范里直接读、直接查、交给框架哪项设置)。${MECHANISM_FRAMEWORK_RULE}`,
|
|
148
158
|
}),
|
|
149
|
-
disposition: Type.Literal(
|
|
159
|
+
disposition: Type.Literal(labels.without, { description: "official 填了字,这一行只能是这个处置" }),
|
|
150
160
|
...extra,
|
|
151
161
|
},
|
|
152
162
|
{ additionalProperties: true },
|
|
153
163
|
),
|
|
154
164
|
Type.Object(
|
|
155
165
|
{
|
|
156
|
-
...
|
|
166
|
+
...base,
|
|
157
167
|
official: Type.Null({
|
|
158
|
-
description: `示范代码本身就为同一关切带同样的状态、锁、缓存或依赖:填 null,并在
|
|
168
|
+
description: `示范代码本身就为同一关切带同样的状态、锁、缓存或依赖:填 null,并在 ${labels.evidenceField} 末尾写框架名与示范里那一处。${MECHANISM_FRAMEWORK_RULE}`,
|
|
159
169
|
}),
|
|
160
|
-
disposition: Type.Literal(
|
|
170
|
+
disposition: Type.Literal(labels.carries, { description: "official 为 null,这一行只能是这个处置" }),
|
|
161
171
|
...extra,
|
|
162
172
|
},
|
|
163
173
|
{ additionalProperties: true },
|
|
164
174
|
),
|
|
165
175
|
],
|
|
166
|
-
{ description:
|
|
176
|
+
{ description: `两种行形,没有第三种:示范不带这一层也处理得了(official 填字,${labels.without.split(":")[0]});示范本身就带同样的层(official null,${labels.carries.split(":")[0]})` },
|
|
167
177
|
);
|
|
168
178
|
|
|
179
|
+
const MECHANISM_LABELS = { without: "删:示范不带这一层也处理得了", carries: "留:示范本身就为同一关切带同样的层", evidenceField: "keeps" } as const;
|
|
180
|
+
const mechanismRowUnion = (extra: RowFields = {}) => existenceRowUnion(mechanismRowBase, MECHANISM_LABELS, extra);
|
|
181
|
+
|
|
169
182
|
export const mechanismRowSchema = mechanismRowUnion();
|
|
170
183
|
|
|
171
184
|
/** Auditor row: the inspector row plus what the judge's verdict said about this layer, verbatim, or null when the verdict never touched it. */
|
|
@@ -175,6 +188,56 @@ export const auditorMechanismRowSchema = mechanismRowUnion({
|
|
|
175
188
|
}),
|
|
176
189
|
});
|
|
177
190
|
|
|
191
|
+
/** 存废尺 row for a ticket clause: what the clause makes exist, against the framework's example. */
|
|
192
|
+
const clauseRowBase = {
|
|
193
|
+
clause: Type.String({ description: "现行票面里让某个机制存在的那条条款原文(照抄,不合并、不改写)" }),
|
|
194
|
+
kind: Type.Union(
|
|
195
|
+
[Type.Literal("明写机制:条款自己点名了状态、表、缓存、锁、依赖"), Type.Literal("只写结果:条款只提要求,现状代码满足不了,得长出机制才做得到")],
|
|
196
|
+
{ description: "两类都要列。第二类最容易漏:零重复、跨提交不重读、不建豁免、每 X 只做一次、永不 Y——这种句子没写机制两个字,却只能靠新状态、缓存、失效规则满足;先打开现状代码核一遍它做不做得到,做不到就是这类" },
|
|
197
|
+
),
|
|
198
|
+
makes: Type.String({ description: "这条条款落实后会让什么东西存在:跨调用保存的状态、缓存、锁、失效规则、预计算、新依赖;写出它的形状。只写结果的条款,写满足它必须长出的那样东西" }),
|
|
199
|
+
} as const;
|
|
200
|
+
const CLAUSE_LABELS = { without: "不要:示范不带这一层也处理得了", carries: "要:示范本身就为同一关切带同样的层", evidenceField: "makes" } as const;
|
|
201
|
+
export const clauseExistenceRowSchema = existenceRowUnion(clauseRowBase, CLAUSE_LABELS);
|
|
202
|
+
|
|
203
|
+
/** Countersign generation schema: shared review face plus the 存废尺 over the current ticket's clauses (package records as-is). */
|
|
204
|
+
export const countersignSubmissionSchema = withTerminatingOutputDeclarations(
|
|
205
|
+
Type.Object(
|
|
206
|
+
{
|
|
207
|
+
status: reviewStatusField,
|
|
208
|
+
...reviewNarrativeFields,
|
|
209
|
+
existence: Type.Array(clauseExistenceRowSchema, {
|
|
210
|
+
description:
|
|
211
|
+
"存废尺:现行票面每条让机制存在的条款各一行——明写机制的,和只写结果要求、现状代码满足不了的,两类都算——到 ADR/票面点名的应用框架官方示范里看不带它时同一关切怎么处理。有「不要」行在,不得署,封驳或上呈并点名那条。票面已写、前轮判词要求过、签发方答过、陛下对别的题点过头,都不是「要」的理由;「要」只认示范里带同样的层。一条没有为空数组。",
|
|
212
|
+
}),
|
|
213
|
+
},
|
|
214
|
+
{ additionalProperties: true },
|
|
215
|
+
),
|
|
216
|
+
);
|
|
217
|
+
|
|
218
|
+
/** Judge row: the mechanism row plus where the layer comes from — the implementation under judgment, or the judge's own prescription. */
|
|
219
|
+
export const judgeMechanismRowSchema = mechanismRowUnion({
|
|
220
|
+
origin: Type.Union(
|
|
221
|
+
[Type.Literal("实现净增:本票起点到所审 HEAD 的生产代码里已有的"), Type.Literal("本判处方:本轮判词的处方或约束落实后会长出的")],
|
|
222
|
+
{ description: "这一层从哪来。处方行的 where 写处方原文而不是 path:line;处方会长出示范不带的层,处方本身就不能开" },
|
|
223
|
+
),
|
|
224
|
+
});
|
|
225
|
+
|
|
226
|
+
/** Judge generation schema: shared review face plus the 存废尺 over everything the verdict rules on (package records as-is). */
|
|
227
|
+
export const judgeSubmissionSchema = withTerminatingOutputDeclarations(
|
|
228
|
+
Type.Object(
|
|
229
|
+
{
|
|
230
|
+
status: reviewStatusField,
|
|
231
|
+
...reviewNarrativeFields,
|
|
232
|
+
mechanisms: Type.Array(judgeMechanismRowSchema, {
|
|
233
|
+
description:
|
|
234
|
+
"存废尺:所审实现从本票起点到 HEAD 生产代码新增的每一处依赖行、跨调用状态、锁、缓存装饰或包装各一行(origin 实现净增),再加本轮判词每条处方或约束落实后会长出的每一层各一行(origin 本判处方)。每行只问一件事:这一关切(读复用、并发、失效……)在 ADR/票面点名的应用框架官方示范里怎么处理——示范不带这一层也处理得了,就是删;不问票面那句要求能不能靠示范满足。票面要求超过示范的,行照填删,那句要求上呈。有「删」行:实现里的,判删或上呈,不得据以署收敛;处方里的,那条处方不能开。票面已写、前轮判词要求过、施工自述、陛下对别的题点过头,都不是「留」的理由。行只能进这张表:不另开字段存放,不留「待定」;一处没有为空数组。",
|
|
235
|
+
}),
|
|
236
|
+
},
|
|
237
|
+
{ additionalProperties: true },
|
|
238
|
+
),
|
|
239
|
+
);
|
|
240
|
+
|
|
178
241
|
/** Inspector generation schema: shared review face plus the required whole-ticket complexity answer (package records as-is). */
|
|
179
242
|
export const inspectorSubmissionSchema = withTerminatingOutputDeclarations(
|
|
180
243
|
Type.Object(
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Execute lives in filed-submission.ts.
|
|
6
6
|
*/
|
|
7
7
|
import { packagedRoleOutputTool, type PackagedRole } from "./packaged-role-registry.ts";
|
|
8
|
-
import { auditorSubmissionSchema, notaryReviewSubmissionSchema, inspectorSubmissionSchema, reviewSubmissionSchema } from "./review-submission.ts";
|
|
8
|
+
import { auditorSubmissionSchema, countersignSubmissionSchema, judgeSubmissionSchema, notaryReviewSubmissionSchema, inspectorSubmissionSchema, reviewSubmissionSchema } from "./review-submission.ts";
|
|
9
9
|
import { collectorOutputArgsSchema } from "./collector-tool-schemas.ts";
|
|
10
10
|
import { diaristOutputSchema } from "./diarist-contracts.ts";
|
|
11
11
|
import { doctorSubmissionSchema, DOCTOR_OUTPUT_TOOL_DESCRIPTION } from "./doctor-contracts.ts";
|
|
@@ -32,9 +32,9 @@ type SubmissionFace = Omit<RoleSubmissionDeclaration, "role" | "name">;
|
|
|
32
32
|
const SUBMISSION_FACE = {
|
|
33
33
|
judge: {
|
|
34
34
|
label: "大理寺输出",
|
|
35
|
-
description: "
|
|
35
|
+
description: "提交大理寺终局判词(含所审实现与本判处方的存废尺 mechanisms);交卷调用结束后,由公开调用接缝按判词状态执行适用审核。",
|
|
36
36
|
promptSnippet: "提交大理寺终局判词",
|
|
37
|
-
parameters:
|
|
37
|
+
parameters: judgeSubmissionSchema,
|
|
38
38
|
},
|
|
39
39
|
fixer: {
|
|
40
40
|
label: "修内司输出",
|
|
@@ -79,9 +79,9 @@ const SUBMISSION_FACE = {
|
|
|
79
79
|
},
|
|
80
80
|
countersign: {
|
|
81
81
|
label: "给事中输出",
|
|
82
|
-
description: "
|
|
82
|
+
description: "给事中决议(含现行票面条款的存废尺 existence)。",
|
|
83
83
|
promptSnippet: "给事中决议",
|
|
84
|
-
parameters:
|
|
84
|
+
parameters: countersignSubmissionSchema,
|
|
85
85
|
},
|
|
86
86
|
secretariat: {
|
|
87
87
|
label: "中书省输出",
|