mdkg 0.3.9 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +57 -0
- package/CLI_COMMAND_MATRIX.md +19 -9
- package/README.md +6 -2
- package/dist/cli.js +45 -8
- package/dist/command-contract.json +66 -24
- package/dist/commands/new.js +50 -1
- package/dist/commands/validate.js +84 -0
- package/dist/commands/work.js +45 -2
- package/dist/graph/agent_file_types.js +74 -2
- package/dist/graph/frontmatter.js +5 -0
- package/dist/graph/node.js +28 -0
- package/dist/init/AGENT_START.md +6 -0
- package/dist/init/CLI_COMMAND_MATRIX.md +10 -5
- package/dist/init/README.md +17 -8
- package/dist/init/init-manifest.json +12 -12
- package/dist/init/skills/default/author-mdkg-skill/SKILL.md +10 -5
- package/dist/init/templates/default/manifest.md +3 -0
- package/dist/init/templates/default/receipt.md +5 -0
- package/dist/init/templates/default/spec.md +3 -0
- package/dist/init/templates/default/work.md +1 -0
- package/dist/init/templates/default/work_order.md +3 -0
- package/dist/init/templates/specs/base.MANIFEST.md +3 -0
- package/dist/init/templates/specs/base.SPEC.md +3 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,63 @@ mdkg is pre-v1 public alpha software. Command, graph, cache, bundle, and DAL con
|
|
|
8
8
|
|
|
9
9
|
## Unreleased
|
|
10
10
|
|
|
11
|
+
## 0.4.1 - 2026-07-04
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Added generic contract-profile metadata for MANIFEST, WORK, WORK_ORDER, and
|
|
16
|
+
RECEIPT semantic mirrors, including `contract_profile`, policy refs,
|
|
17
|
+
`receipt_kind`, and `redaction_class` validation.
|
|
18
|
+
- Added explicit profile validation through `mdkg validate --profile
|
|
19
|
+
omni-room` and `mdkg work validate --profile omni-room`, while keeping Omni
|
|
20
|
+
Room execution semantics runtime-owned.
|
|
21
|
+
- Added scaffold and helper flags for contract-profile metadata across
|
|
22
|
+
`mdkg new manifest|work|work_order|receipt` and `mdkg work
|
|
23
|
+
contract|order|receipt new`.
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- Updated default templates, init assets, seeded skills, and generated command
|
|
28
|
+
references to demonstrate generic contract-profile fields without adding
|
|
29
|
+
runtime-only queue, provider, billing, ledger, or final-receipt state.
|
|
30
|
+
- Documented the distinction between `contract_profile`, MANIFEST
|
|
31
|
+
`resource_profile`, WORK `kind`, WORK_ORDER `artifact_policy`, RECEIPT
|
|
32
|
+
`redaction_policy`, `receipt_kind`, `redaction_class`, and pack/bundle
|
|
33
|
+
`--profile` flags.
|
|
34
|
+
- Expanded release-readiness documentation and checks for `0.4.1` so the
|
|
35
|
+
implementation can hand off to a separate approval-gated publish goal.
|
|
36
|
+
|
|
37
|
+
## 0.4.0 - 2026-06-27
|
|
38
|
+
|
|
39
|
+
### Added
|
|
40
|
+
|
|
41
|
+
- Added the `0.4.0` public launch-readiness lane for mdkg.dev and
|
|
42
|
+
docs.mdkg.dev with explicit source metadata, changelog, generated-doc,
|
|
43
|
+
npm prepublish, npm postpublish, Vercel production, and Chrome live-validation
|
|
44
|
+
blockers.
|
|
45
|
+
- Added public release-note and docs coverage for the `0.4.0` launch surface,
|
|
46
|
+
including per-release changelog cards, launch-track copy, and source-backed
|
|
47
|
+
currentness requirements.
|
|
48
|
+
- Added Vercel production currentness and Chrome postpublish validation as
|
|
49
|
+
required evidence before mdkg.dev or docs.mdkg.dev can claim the `0.4.0`
|
|
50
|
+
launch is live.
|
|
51
|
+
|
|
52
|
+
### Changed
|
|
53
|
+
|
|
54
|
+
- Updated mdkg.dev and docs.mdkg.dev source copy for the `0.4.0` release target,
|
|
55
|
+
including config overlays, custom skill mirrors, `COLLABORATION.md`,
|
|
56
|
+
MANIFEST/SPEC compatibility, and Plan -> Work -> Evidence launch messaging.
|
|
57
|
+
- Updated public docs and examples to use the current `mdkg pack --profile
|
|
58
|
+
concise` syntax instead of stale `--pack-profile concise` examples.
|
|
59
|
+
- Aligned source-visible package references, generated release-note data, and
|
|
60
|
+
generated CLI docs with the `0.4.0` release target.
|
|
61
|
+
|
|
62
|
+
### Fixed
|
|
63
|
+
|
|
64
|
+
- Fixed mdkg.dev primary CTA gradient rendering by moving the ocean gradient to
|
|
65
|
+
an overscanned clipped layer instead of painting it directly on the rounded
|
|
66
|
+
button surface.
|
|
67
|
+
|
|
11
68
|
## 0.3.9 - 2026-06-27
|
|
12
69
|
|
|
13
70
|
### Added
|
package/CLI_COMMAND_MATRIX.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# CLI Command Matrix
|
|
2
2
|
|
|
3
|
-
as_of: 2026-
|
|
4
|
-
package_version_in_source: 0.
|
|
3
|
+
as_of: 2026-07-03
|
|
4
|
+
package_version_in_source: 0.4.1
|
|
5
5
|
source: live help from `src/cli.ts`, runtime command handlers, and `dec-15`..`dec-18`
|
|
6
6
|
status: canonical single-source command and flag reference for mdkg
|
|
7
7
|
|
|
@@ -213,6 +213,11 @@ Primary flags:
|
|
|
213
213
|
- `--skills <slug,slug,...>`
|
|
214
214
|
- `--template <set>`
|
|
215
215
|
- `--run-id <id>`
|
|
216
|
+
- `--contract-profile <name>` for MANIFEST, WORK, WORK_ORDER, and RECEIPT
|
|
217
|
+
- `--validation-policy-ref <ref>` for MANIFEST, WORK_ORDER, and RECEIPT
|
|
218
|
+
- `--evidence-policy-ref <ref>` for MANIFEST, WORK_ORDER, and RECEIPT
|
|
219
|
+
- `--receipt-kind <kind>` for RECEIPT
|
|
220
|
+
- `--redaction-class <class>` for RECEIPT
|
|
216
221
|
- `--json`
|
|
217
222
|
|
|
218
223
|
Advanced metadata flags:
|
|
@@ -819,17 +824,17 @@ Usage:
|
|
|
819
824
|
- `mdkg work order new|status|update ...`
|
|
820
825
|
- `mdkg work receipt new|verify|update ...`
|
|
821
826
|
- `mdkg work artifact add ...`
|
|
822
|
-
- `mdkg work contract new "<title>" --id <work.id> --agent-id <agent.id> --kind <kind> --inputs <...> --outputs <...> [--required-capabilities <...>] [--pricing-model <...>] [--json]`
|
|
827
|
+
- `mdkg work contract new "<title>" --id <work.id> --agent-id <agent.id> --kind <kind> --inputs <...> --outputs <...> [--contract-profile <name>] [--required-capabilities <...>] [--pricing-model <...>] [--json]`
|
|
823
828
|
- `mdkg work trigger <work-or-capability-ref> [--id <order.id>] [--title "<title>"] [--requester <ref>] [--enqueue <queue>] [--json]`
|
|
824
|
-
- `mdkg work order new "<title>" --id <order.id> --work-id <work.id> --requester <ref> [--request-ref <ref>] [--trigger-ref <ref>] [--payload-hash <sha256:...>] [--input-refs <...>] [--queue-refs <...>] [--requested-outputs <...>] [--json]`
|
|
829
|
+
- `mdkg work order new "<title>" --id <order.id> --work-id <work.id> --requester <ref> [--contract-profile <name>] [--validation-policy-ref <ref>] [--evidence-policy-ref <ref>] [--request-ref <ref>] [--trigger-ref <ref>] [--payload-hash <sha256:...>] [--input-refs <...>] [--queue-refs <...>] [--requested-outputs <...>] [--json]`
|
|
825
830
|
- `mdkg work order status <id-or-qid> [--json]`
|
|
826
831
|
- `mdkg work order update <id-or-qid> [--status <status>] [--add-input-refs <...>] [--add-queue-refs <...>] [--add-artifacts <...>] [--json]`
|
|
827
|
-
- `mdkg work receipt new "<title>" --id <receipt.id> --work-order-id <order.id> --outcome success|partial|failure [--receipt-status recorded|verified|rejected|superseded] [--redaction-policy refs_and_hashes_only|redacted_summary|external_private] [--evidence-hashes <sha256:...>] [--json]`
|
|
832
|
+
- `mdkg work receipt new "<title>" --id <receipt.id> --work-order-id <order.id> --outcome success|partial|failure [--receipt-status recorded|verified|rejected|superseded] [--redaction-policy refs_and_hashes_only|redacted_summary|external_private] [--contract-profile <name>] [--receipt-kind <kind>] [--redaction-class <class>] [--validation-policy-ref <ref>] [--evidence-policy-ref <ref>] [--evidence-hashes <sha256:...>] [--json]`
|
|
828
833
|
- `mdkg work receipt verify <id-or-qid> [--json]`
|
|
829
834
|
- `mdkg work receipt update <id-or-qid> [--receipt-status <status>] [--add-artifacts <...>] [--add-proof-refs <...>] [--add-attestation-refs <...>] [--add-evidence-hashes <sha256:...>] [--json]`
|
|
830
835
|
- `mdkg work artifact add <order-or-receipt-id-or-qid> <file> [--id <archive.id>] [--kind source|artifact] [--json]`
|
|
831
|
-
- `mdkg work validate [<id-or-qid>] [--type <workflow-type>] [--json]`
|
|
832
|
-
- `mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] [--json]`
|
|
836
|
+
- `mdkg work validate [<id-or-qid>] [--type <workflow-type>] [--profile <name>] [--json]`
|
|
837
|
+
- `mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] [--profile <name>] [--json]`
|
|
833
838
|
|
|
834
839
|
Notes:
|
|
835
840
|
- work commands mutate semantic mirror files only
|
|
@@ -840,10 +845,13 @@ Notes:
|
|
|
840
845
|
- example: `mdkg work trigger work.example --id order.example-1 --requester user://example --json`
|
|
841
846
|
- `work trigger --enqueue <queue>` requires a valid project DB plus an explicitly created active queue, creates a submitted order mirror, and enqueues a local delivery message without executing work
|
|
842
847
|
- `work order new` accepts URI-style requester/request/trigger refs, archive input refs, optional queue refs, and stable payload hashes
|
|
848
|
+
- `work order new` accepts optional contract-profile and validation/evidence policy refs without executing work
|
|
843
849
|
- `work order status` is read-only and reports deterministic order state plus linked receipts
|
|
844
850
|
- `work receipt new` accepts URI-style cost/proof/attestation refs, explicit redaction policy, and SHA-256 evidence/input/output hash refs
|
|
851
|
+
- `work receipt new` accepts optional contract-profile, receipt-kind, redaction-class, and validation/evidence policy refs without becoming canonical runtime receipt state
|
|
845
852
|
- `work receipt verify` is read-only and reports linkage, evidence, archive ref, hash, outcome, and redaction-policy checks; invalid receipts print JSON before exiting nonzero
|
|
846
853
|
- `work validate` is read-only and reports typed diagnostics for MANIFEST.md, legacy SPEC.md, WORK.md, WORK_ORDER.md, RECEIPT.md, FEEDBACK.md, DISPUTE.md, and PROPOSAL.md mirrors; obvious raw secret, prompt, token, or payload markers are warnings, not hard failures
|
|
854
|
+
- `work validate --profile omni-room` applies explicit contract-profile validation after generic mirror validation; it is separate from `mdkg pack --profile`
|
|
847
855
|
- `work artifact add` calls `mdkg archive add`, then attaches the resulting `archive://...` ref to the target order or receipt
|
|
848
856
|
- `work order update`, `work receipt update`, and `work artifact add` accept local ids or local qids; subgraph qids are read-only and must be changed in their source workspace
|
|
849
857
|
|
|
@@ -990,10 +998,11 @@ When to use:
|
|
|
990
998
|
- run the repo trust gate before calling work done
|
|
991
999
|
|
|
992
1000
|
Usage:
|
|
993
|
-
- `mdkg validate [--out <path>] [--json-out <path>] [--quiet] [--changed-only] [--summary] [--limit <n>] [--json]`
|
|
1001
|
+
- `mdkg validate [--out <path>] [--json-out <path>] [--quiet] [--changed-only] [--summary] [--limit <n>] [--profile <name>] [--json]`
|
|
994
1002
|
- `--changed-only` filters warning presentation to changed `.mdkg` files while full graph errors still run
|
|
995
1003
|
- `--summary` emits bounded warning samples for agent/CI logs; `--limit <n>` controls the sample size
|
|
996
1004
|
- `--out <path>` writes the compatibility text report; `--json-out <path>` writes a clean full JSON receipt
|
|
1005
|
+
- `--profile omni-room` applies explicit contract-profile validation after generic validation; it is separate from `mdkg pack --profile`
|
|
997
1006
|
- JSON receipts include `warning_summary` and `warning_diagnostics` with warning ids, categories, severity, paths, refs, and remediation text
|
|
998
1007
|
|
|
999
1008
|
Flags:
|
|
@@ -1003,10 +1012,11 @@ Flags:
|
|
|
1003
1012
|
- `--changed-only`
|
|
1004
1013
|
- `--summary`
|
|
1005
1014
|
- `--limit <n>`
|
|
1015
|
+
- `--profile <name>`
|
|
1006
1016
|
- `--json`
|
|
1007
1017
|
|
|
1008
1018
|
JSON receipt:
|
|
1009
|
-
- `{ action: "validated", ok, warning_count, error_count, warnings, warning_diagnostics, warning_summary, errors, report_path?, json_receipt_path? }`
|
|
1019
|
+
- `{ action: "validated", ok, warning_count, error_count, warnings, warning_diagnostics, warning_summary, errors, validation_profile?, report_path?, json_receipt_path? }`
|
|
1010
1020
|
- `report_path` is included only when `--out` is used.
|
|
1011
1021
|
- `json_receipt_path` is included only when `--json-out` is used.
|
|
1012
1022
|
|
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ mdkg stays deliberately boring:
|
|
|
14
14
|
- first-class rebuildable SQLite cache through built-in `node:sqlite`
|
|
15
15
|
- no daemon, hosted index, or vector DB
|
|
16
16
|
|
|
17
|
-
Current package version in source: `0.
|
|
17
|
+
Current package version in source: `0.4.1`
|
|
18
18
|
|
|
19
19
|
mdkg is still pre-v1 public alpha software. The public package is usable, but graph, cache, bundle, and DAL contracts may continue to change quickly while the project converges on a stable v1 surface.
|
|
20
20
|
|
|
@@ -600,7 +600,11 @@ Use `mdkg new manifest|work|work_order|receipt|feedback|dispute|proposal "<title
|
|
|
600
600
|
|
|
601
601
|
Relational templates contain editable placeholder refs. `manifest` and `work` scaffold as validation-clean standalone docs; `work_order`, `receipt`, `feedback`, `dispute`, and `proposal` need real refs before strict `mdkg validate` passes.
|
|
602
602
|
|
|
603
|
-
For executable or purchasable capability mirrors, prefer the lifecycle helpers under `mdkg work ...`. They create and update `WORK.md`, `WORK_ORDER.md`, and `RECEIPT.md` semantic mirror files only. `mdkg work trigger` creates a deterministic submitted `WORK_ORDER.md` from a WORK contract or a MANIFEST with exactly one resolvable work contract; legacy SPEC refs remain supported during the compatibility bridge. `mdkg work order status` and `mdkg work receipt verify` are read-only review helpers for deterministic closeout. `mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] --json` is a read-only focused validator for agent workflow mirrors; it returns typed diagnostics and warns on obvious raw secret, prompt, token, or payload markers. `mdkg
|
|
603
|
+
For executable or purchasable capability mirrors, prefer the lifecycle helpers under `mdkg work ...`. They create and update `WORK.md`, `WORK_ORDER.md`, and `RECEIPT.md` semantic mirror files only. `mdkg work trigger` creates a deterministic submitted `WORK_ORDER.md` from a WORK contract or a MANIFEST with exactly one resolvable work contract; legacy SPEC refs remain supported during the compatibility bridge. `mdkg work order status` and `mdkg work receipt verify` are read-only review helpers for deterministic closeout. `mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] [--profile omni-room] --json` is a read-only focused validator for agent workflow mirrors; it returns typed diagnostics and warns on obvious raw secret, prompt, token, or payload markers. `mdkg validate --profile omni-room` and `mdkg work validate --profile omni-room` apply explicit profile checks after generic validation.
|
|
604
|
+
|
|
605
|
+
Optional contract-profile fields are generic semantic mirrors, not runtime execution state. `contract_profile` is accepted on MANIFEST, WORK, WORK_ORDER, and RECEIPT surfaces; `validation_policy_ref` and `evidence_policy_ref` are accepted on MANIFEST, WORK_ORDER, and RECEIPT; `receipt_kind` and `redaction_class` are RECEIPT-only. These fields are separate from MANIFEST `resource_profile`, WORK `kind`, WORK_ORDER `artifact_policy`, RECEIPT `redaction_policy`, and pack/bundle `--profile` flags. Generic validation accepts well-shaped custom profile, kind, and class values with warnings; explicit `--profile omni-room` validation escalates unknown or incompatible values. Bare `profile` is intentionally ambiguous and is diagnosed rather than treated as an alias.
|
|
606
|
+
|
|
607
|
+
`mdkg work trigger --enqueue <queue>` optionally writes a local project DB queue delivery message after the queue has been explicitly created and is active; it still does not execute work. Production order state, receipt state, feedback, disputes, payments, ledgers, marketplace inventory, fulfillment records, and execution state remain canonical outside mdkg, such as in Postgres or another application database. Omni Room and other downstream runtimes own runtime policy, queue execution, final receipt normalization, and downstream adoption. Do not store raw secrets, credentials, live payment state, ledger mutations, canonical marketplace state, or bulky raw payloads in these mirrors.
|
|
604
608
|
|
|
605
609
|
## Archive sidecars
|
|
606
610
|
|
package/dist/cli.js
CHANGED
|
@@ -160,6 +160,11 @@ function printNewHelp(log) {
|
|
|
160
160
|
log(" --skills <slug,slug,...> Skill slugs for work items");
|
|
161
161
|
log(" --template <set> Template set");
|
|
162
162
|
log(" --run-id <id> Optional event run id when event logging is enabled");
|
|
163
|
+
log(" --contract-profile <name> Optional MANIFEST/WORK/WORK_ORDER/RECEIPT validation profile metadata");
|
|
164
|
+
log(" --validation-policy-ref <ref> Optional MANIFEST/WORK_ORDER/RECEIPT validation policy ref");
|
|
165
|
+
log(" --evidence-policy-ref <ref> Optional MANIFEST/WORK_ORDER/RECEIPT evidence policy ref");
|
|
166
|
+
log(" --receipt-kind <kind> Optional RECEIPT kind metadata");
|
|
167
|
+
log(" --redaction-class <class> Optional RECEIPT redaction class metadata");
|
|
163
168
|
log("\nAdvanced metadata flags:");
|
|
164
169
|
log(" --parent --prev --next --relates --blocked-by --blocks");
|
|
165
170
|
log(" --links --artifacts --refs --aliases --owners --cases --supersedes");
|
|
@@ -733,7 +738,7 @@ function printWorkHelp(log, subcommand) {
|
|
|
733
738
|
switch ((subcommand ?? "").toLowerCase()) {
|
|
734
739
|
case "contract":
|
|
735
740
|
log("Usage:");
|
|
736
|
-
log(' mdkg work contract new "<title>" --id <work.id> --agent-id <agent.id> --kind <kind> --inputs <...> --outputs <...> [--required-capabilities <...>] [--pricing-model <...>] [--json]');
|
|
741
|
+
log(' mdkg work contract new "<title>" --id <work.id> --agent-id <agent.id> --kind <kind> --inputs <...> --outputs <...> [--contract-profile <name>] [--required-capabilities <...>] [--pricing-model <...>] [--json]');
|
|
737
742
|
break;
|
|
738
743
|
case "trigger":
|
|
739
744
|
log("Usage:");
|
|
@@ -747,7 +752,7 @@ function printWorkHelp(log, subcommand) {
|
|
|
747
752
|
break;
|
|
748
753
|
case "order":
|
|
749
754
|
log("Usage:");
|
|
750
|
-
log(' mdkg work order new "<title>" --id <order.id> --work-id <work.id> --requester <ref> [--request-ref <ref>] [--trigger-ref <ref>] [--payload-hash <sha256:...>] [--input-refs <...>] [--queue-refs <...>] [--requested-outputs <...>] [--json]');
|
|
755
|
+
log(' mdkg work order new "<title>" --id <order.id> --work-id <work.id> --requester <ref> [--contract-profile <name>] [--validation-policy-ref <ref>] [--evidence-policy-ref <ref>] [--request-ref <ref>] [--trigger-ref <ref>] [--payload-hash <sha256:...>] [--input-refs <...>] [--queue-refs <...>] [--requested-outputs <...>] [--json]');
|
|
751
756
|
log(" mdkg work order status <id-or-qid> [--json]");
|
|
752
757
|
log(" mdkg work order update <id-or-qid> [--status <status>] [--add-input-refs <...>] [--add-queue-refs <...>] [--add-artifacts <...>] [--json]");
|
|
753
758
|
log("\nNotes:");
|
|
@@ -755,7 +760,7 @@ function printWorkHelp(log, subcommand) {
|
|
|
755
760
|
break;
|
|
756
761
|
case "receipt":
|
|
757
762
|
log("Usage:");
|
|
758
|
-
log(' mdkg work receipt new "<title>" --id <receipt.id> --work-order-id <order.id> --outcome success|partial|failure [--receipt-status recorded|verified|rejected|superseded] [--redaction-policy refs_and_hashes_only|redacted_summary|external_private] [--evidence-hashes <sha256:...>] [--json]');
|
|
763
|
+
log(' mdkg work receipt new "<title>" --id <receipt.id> --work-order-id <order.id> --outcome success|partial|failure [--receipt-status recorded|verified|rejected|superseded] [--redaction-policy refs_and_hashes_only|redacted_summary|external_private] [--contract-profile <name>] [--receipt-kind <kind>] [--redaction-class <class>] [--validation-policy-ref <ref>] [--evidence-policy-ref <ref>] [--evidence-hashes <sha256:...>] [--json]');
|
|
759
764
|
log(" mdkg work receipt verify <id-or-qid> [--json]");
|
|
760
765
|
log(" mdkg work receipt update <id-or-qid> [--receipt-status <status>] [--add-artifacts <...>] [--add-proof-refs <...>] [--add-attestation-refs <...>] [--add-evidence-hashes <sha256:...>] [--json]");
|
|
761
766
|
log("\nNotes:");
|
|
@@ -767,10 +772,11 @@ function printWorkHelp(log, subcommand) {
|
|
|
767
772
|
break;
|
|
768
773
|
case "validate":
|
|
769
774
|
log("Usage:");
|
|
770
|
-
log(" mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] [--json]");
|
|
775
|
+
log(" mdkg work validate [<id-or-qid>] [--type manifest|spec|work|work_order|receipt|feedback|dispute|proposal] [--profile <name>] [--json]");
|
|
771
776
|
log("\nNotes:");
|
|
772
777
|
log(" Read-only focused validation for agent workflow mirrors.");
|
|
773
778
|
log(" Reports typed diagnostics for MANIFEST.md, legacy SPEC.md, WORK.md, WORK_ORDER.md, RECEIPT.md, FEEDBACK.md, DISPUTE.md, and PROPOSAL.md files.");
|
|
779
|
+
log(" --profile omni-room applies explicit contract-profile validation after generic mirror validation; this is separate from mdkg pack --profile.");
|
|
774
780
|
log(" Obvious raw secret, prompt, token, or payload markers are warnings so humans and agents can review boundaries.");
|
|
775
781
|
break;
|
|
776
782
|
default:
|
|
@@ -780,7 +786,7 @@ function printWorkHelp(log, subcommand) {
|
|
|
780
786
|
log(" mdkg work order new|status|update ...");
|
|
781
787
|
log(" mdkg work receipt new|verify|update ...");
|
|
782
788
|
log(" mdkg work artifact add ...");
|
|
783
|
-
log(" mdkg work validate [<id-or-qid>] [--type <workflow-type>] [--json]");
|
|
789
|
+
log(" mdkg work validate [<id-or-qid>] [--type <workflow-type>] [--profile <name>] [--json]");
|
|
784
790
|
log("\nNotes:");
|
|
785
791
|
log(" - work commands mutate semantic mirror files only");
|
|
786
792
|
log(" - work validate is read-only and reports typed workflow diagnostics");
|
|
@@ -972,10 +978,11 @@ function printCheckpointHelp(log) {
|
|
|
972
978
|
}
|
|
973
979
|
function printValidateHelp(log) {
|
|
974
980
|
log("Usage:");
|
|
975
|
-
log(" mdkg validate [--out <path>] [--json-out <path>] [--quiet] [--changed-only] [--summary] [--limit <n>] [--json]");
|
|
981
|
+
log(" mdkg validate [--out <path>] [--json-out <path>] [--quiet] [--changed-only] [--summary] [--limit <n>] [--profile <name>] [--json]");
|
|
976
982
|
log("\nNotes:");
|
|
977
983
|
log(" Validates frontmatter schemas, graph references, visibility, skills, and events.");
|
|
978
984
|
log(" --changed-only filters warning presentation to changed .mdkg files while full graph errors still run.");
|
|
985
|
+
log(" --profile omni-room applies explicit contract-profile validation after generic validation; this is separate from mdkg pack --profile.");
|
|
979
986
|
log(" JSON output includes warning_summary plus warning_diagnostics with warning ids, categories, severity, paths, refs, and remediation text.");
|
|
980
987
|
log(" --summary emits bounded warning samples for agent/CI logs; --limit controls the sample size.");
|
|
981
988
|
log(" --out writes the compatibility text report; --json-out writes a clean full JSON receipt.");
|
|
@@ -2063,7 +2070,8 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2063
2070
|
throw new errors_1.UsageError("work validate accepts at most one workflow reference");
|
|
2064
2071
|
}
|
|
2065
2072
|
const type = requireFlagValue("--type", parsed.flags["--type"]);
|
|
2066
|
-
|
|
2073
|
+
const profile = requireFlagValue("--profile", parsed.flags["--pack-profile"]);
|
|
2074
|
+
(0, work_1.runWorkValidateCommand)({ root, ws, id, type, profile, json });
|
|
2067
2075
|
return 0;
|
|
2068
2076
|
}
|
|
2069
2077
|
if (domain === "contract" && action === "new") {
|
|
@@ -2078,6 +2086,7 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2078
2086
|
}
|
|
2079
2087
|
const requiredCapabilities = requireFlagValue("--required-capabilities", parsed.flags["--required-capabilities"]);
|
|
2080
2088
|
const pricingModel = requireFlagValue("--pricing-model", parsed.flags["--pricing-model"]);
|
|
2089
|
+
const contractProfile = requireFlagValue("--contract-profile", parsed.flags["--contract-profile"]);
|
|
2081
2090
|
(0, work_1.runWorkContractNewCommand)({
|
|
2082
2091
|
root,
|
|
2083
2092
|
ws,
|
|
@@ -2089,6 +2098,7 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2089
2098
|
outputs,
|
|
2090
2099
|
requiredCapabilities,
|
|
2091
2100
|
pricingModel,
|
|
2101
|
+
contractProfile,
|
|
2092
2102
|
json,
|
|
2093
2103
|
});
|
|
2094
2104
|
return 0;
|
|
@@ -2108,6 +2118,9 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2108
2118
|
const queueRefs = requireFlagValue("--queue-refs", parsed.flags["--queue-refs"]);
|
|
2109
2119
|
const requestedOutputs = requireFlagValue("--requested-outputs", parsed.flags["--requested-outputs"]);
|
|
2110
2120
|
const constraintRefs = requireFlagValue("--constraint-refs", parsed.flags["--constraint-refs"]);
|
|
2121
|
+
const contractProfile = requireFlagValue("--contract-profile", parsed.flags["--contract-profile"]);
|
|
2122
|
+
const validationPolicyRef = requireFlagValue("--validation-policy-ref", parsed.flags["--validation-policy-ref"]);
|
|
2123
|
+
const evidencePolicyRef = requireFlagValue("--evidence-policy-ref", parsed.flags["--evidence-policy-ref"]);
|
|
2111
2124
|
(0, work_1.runWorkOrderNewCommand)({
|
|
2112
2125
|
root,
|
|
2113
2126
|
ws,
|
|
@@ -2122,6 +2135,9 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2122
2135
|
queueRefs,
|
|
2123
2136
|
requestedOutputs,
|
|
2124
2137
|
constraintRefs,
|
|
2138
|
+
contractProfile,
|
|
2139
|
+
validationPolicyRef,
|
|
2140
|
+
evidencePolicyRef,
|
|
2125
2141
|
json,
|
|
2126
2142
|
});
|
|
2127
2143
|
return 0;
|
|
@@ -2163,6 +2179,11 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2163
2179
|
const evidenceHashes = requireFlagValue("--evidence-hashes", parsed.flags["--evidence-hashes"]);
|
|
2164
2180
|
const inputHashes = requireFlagValue("--input-hashes", parsed.flags["--input-hashes"]);
|
|
2165
2181
|
const outputHashes = requireFlagValue("--output-hashes", parsed.flags["--output-hashes"]);
|
|
2182
|
+
const contractProfile = requireFlagValue("--contract-profile", parsed.flags["--contract-profile"]);
|
|
2183
|
+
const receiptKind = requireFlagValue("--receipt-kind", parsed.flags["--receipt-kind"]);
|
|
2184
|
+
const redactionClass = requireFlagValue("--redaction-class", parsed.flags["--redaction-class"]);
|
|
2185
|
+
const validationPolicyRef = requireFlagValue("--validation-policy-ref", parsed.flags["--validation-policy-ref"]);
|
|
2186
|
+
const evidencePolicyRef = requireFlagValue("--evidence-policy-ref", parsed.flags["--evidence-policy-ref"]);
|
|
2166
2187
|
(0, work_1.runWorkReceiptNewCommand)({
|
|
2167
2188
|
root,
|
|
2168
2189
|
ws,
|
|
@@ -2173,6 +2194,11 @@ function runWorkSubcommand(parsed, root) {
|
|
|
2173
2194
|
receiptStatus,
|
|
2174
2195
|
costRef,
|
|
2175
2196
|
redactionPolicy,
|
|
2197
|
+
contractProfile,
|
|
2198
|
+
receiptKind,
|
|
2199
|
+
redactionClass,
|
|
2200
|
+
validationPolicyRef,
|
|
2201
|
+
evidencePolicyRef,
|
|
2176
2202
|
artifacts,
|
|
2177
2203
|
proofRefs,
|
|
2178
2204
|
attestationRefs,
|
|
@@ -2657,6 +2683,11 @@ function runCommand(parsed, root, runtime) {
|
|
|
2657
2683
|
const owners = requireFlagValue("--owners", parsed.flags["--owners"]);
|
|
2658
2684
|
const supersedes = requireFlagValue("--supersedes", parsed.flags["--supersedes"]);
|
|
2659
2685
|
const template = requireFlagValue("--template", parsed.flags["--template"]);
|
|
2686
|
+
const contractProfile = requireFlagValue("--contract-profile", parsed.flags["--contract-profile"]);
|
|
2687
|
+
const validationPolicyRef = requireFlagValue("--validation-policy-ref", parsed.flags["--validation-policy-ref"]);
|
|
2688
|
+
const evidencePolicyRef = requireFlagValue("--evidence-policy-ref", parsed.flags["--evidence-policy-ref"]);
|
|
2689
|
+
const receiptKind = requireFlagValue("--receipt-kind", parsed.flags["--receipt-kind"]);
|
|
2690
|
+
const redactionClass = requireFlagValue("--redaction-class", parsed.flags["--redaction-class"]);
|
|
2660
2691
|
const noCache = parseBooleanFlag("--no-cache", parsed.flags["--no-cache"]);
|
|
2661
2692
|
const noReindex = parseBooleanFlag("--no-reindex", parsed.flags["--no-reindex"]);
|
|
2662
2693
|
const runId = requireFlagValue("--run-id", parsed.flags["--run-id"]);
|
|
@@ -2686,6 +2717,11 @@ function runCommand(parsed, root, runtime) {
|
|
|
2686
2717
|
owners,
|
|
2687
2718
|
supersedes,
|
|
2688
2719
|
template,
|
|
2720
|
+
contractProfile,
|
|
2721
|
+
validationPolicyRef,
|
|
2722
|
+
evidencePolicyRef,
|
|
2723
|
+
receiptKind,
|
|
2724
|
+
redactionClass,
|
|
2689
2725
|
noCache,
|
|
2690
2726
|
noReindex,
|
|
2691
2727
|
runId,
|
|
@@ -2951,8 +2987,9 @@ function runCommand(parsed, root, runtime) {
|
|
|
2951
2987
|
const changedOnly = parseBooleanFlag("--changed-only", parsed.flags["--changed-only"]);
|
|
2952
2988
|
const summary = parseBooleanFlag("--summary", parsed.flags["--summary"]);
|
|
2953
2989
|
const limit = parseNumberFlag("--limit", parsed.flags["--limit"]);
|
|
2990
|
+
const profile = requireFlagValue("--profile", parsed.flags["--pack-profile"]);
|
|
2954
2991
|
const json = parseBooleanFlag("--json", parsed.flags["--json"]);
|
|
2955
|
-
(0, validate_1.runValidateCommand)({ root, out, jsonOut, quiet, json, changedOnly, summary, limit });
|
|
2992
|
+
(0, validate_1.runValidateCommand)({ root, out, jsonOut, quiet, json, changedOnly, summary, limit, profile });
|
|
2956
2993
|
return 0;
|
|
2957
2994
|
}
|
|
2958
2995
|
case "status": {
|