mdkg 0.3.5 → 0.3.7

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +97 -2
  2. package/CLI_COMMAND_MATRIX.md +90 -10
  3. package/README.md +54 -7
  4. package/dist/cli.js +222 -13
  5. package/dist/command-contract.json +587 -19
  6. package/dist/commands/bundle.js +2 -0
  7. package/dist/commands/checkpoint.js +139 -1
  8. package/dist/commands/db.js +8 -0
  9. package/dist/commands/format.js +116 -0
  10. package/dist/commands/goal.js +60 -0
  11. package/dist/commands/graph.js +280 -10
  12. package/dist/commands/handoff.js +295 -0
  13. package/dist/commands/mcp.js +656 -0
  14. package/dist/commands/pack.js +3 -1
  15. package/dist/commands/query_output.js +2 -0
  16. package/dist/commands/show.js +8 -0
  17. package/dist/commands/status.js +1 -0
  18. package/dist/commands/task.js +2 -0
  19. package/dist/commands/upgrade.js +61 -0
  20. package/dist/commands/validate.js +162 -3
  21. package/dist/commands/work.js +164 -0
  22. package/dist/core/project_db_queue_contract.js +101 -0
  23. package/dist/graph/edges.js +15 -0
  24. package/dist/graph/frontmatter.js +4 -1
  25. package/dist/graph/indexer.js +8 -0
  26. package/dist/graph/node.js +12 -1
  27. package/dist/graph/sqlite_index.js +2 -0
  28. package/dist/graph/subgraphs.js +2 -0
  29. package/dist/graph/validate_graph.js +5 -0
  30. package/dist/graph/visibility.js +6 -0
  31. package/dist/init/AGENT_START.md +4 -1
  32. package/dist/init/CLI_COMMAND_MATRIX.md +36 -4
  33. package/dist/init/README.md +26 -3
  34. package/dist/init/init-manifest.json +12 -12
  35. package/dist/init/templates/default/bug.md +2 -0
  36. package/dist/init/templates/default/chk.md +3 -0
  37. package/dist/init/templates/default/epic.md +2 -0
  38. package/dist/init/templates/default/feat.md +2 -0
  39. package/dist/init/templates/default/goal.md +3 -0
  40. package/dist/init/templates/default/spike.md +2 -0
  41. package/dist/init/templates/default/task.md +2 -0
  42. package/dist/init/templates/default/test.md +2 -0
  43. package/dist/pack/export_json.js +20 -8
  44. package/dist/pack/export_md.js +15 -4
  45. package/dist/pack/export_xml.js +9 -4
  46. package/dist/pack/metrics.js +12 -4
  47. package/dist/pack/pack.js +9 -1
  48. package/dist/util/argparse.js +1 -0
  49. package/package.json +7 -2
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schema_version": 1,
3
3
  "tool": "mdkg",
4
- "package_version": "0.3.5",
4
+ "package_version": "0.3.7",
5
5
  "source": {
6
6
  "help_targets": "scripts/cli_help_targets.js",
7
7
  "command_matrix": "CLI_COMMAND_MATRIX.md"
@@ -1305,7 +1305,7 @@
1305
1305
  "visibility": "public",
1306
1306
  "summary": "mdkg checkpoint command",
1307
1307
  "usage": [
1308
- " mdkg checkpoint new <title> [--ws <alias>] [--json]"
1308
+ " mdkg checkpoint new <title> [--kind implementation|test-proof|goal-closeout|audit|handoff] [--ws <alias>] [--json]"
1309
1309
  ],
1310
1310
  "args": [
1311
1311
  {
@@ -1370,7 +1370,7 @@
1370
1370
  }
1371
1371
  ],
1372
1372
  "examples": [
1373
- " mdkg checkpoint new <title> [--ws <alias>] [--json]"
1373
+ " mdkg checkpoint new <title> [--kind implementation|test-proof|goal-closeout|audit|handoff] [--ws <alias>] [--json]"
1374
1374
  ],
1375
1375
  "docs": {
1376
1376
  "help_target": "mdkg help checkpoint",
@@ -1400,6 +1400,7 @@
1400
1400
  " mdkg db queue ack|fail|dead-letter <queue> <message-id> --lease-owner <owner> [--json]",
1401
1401
  " mdkg db queue pause|resume <queue> [--json]",
1402
1402
  " mdkg db queue stats|list|show ... [--json]",
1403
+ " mdkg db queue contract [--json]",
1403
1404
  " mdkg db snapshot seal [--queue-policy drain|paused] [--json]",
1404
1405
  " mdkg db snapshot verify [--json]",
1405
1406
  " mdkg db snapshot status [--json]",
@@ -1593,6 +1594,133 @@
1593
1594
  "command_matrix": "CLI_COMMAND_MATRIX.md"
1594
1595
  }
1595
1596
  },
1597
+ {
1598
+ "key": "db queue",
1599
+ "path": [
1600
+ "db",
1601
+ "queue"
1602
+ ],
1603
+ "category": "db",
1604
+ "status": "stable",
1605
+ "visibility": "public",
1606
+ "summary": "mdkg db queue command",
1607
+ "usage": [
1608
+ " mdkg db queue create <queue> [--paused] [--reason <text>] [--json]",
1609
+ " mdkg db queue pause <queue> [--reason <text>] [--json]",
1610
+ " mdkg db queue resume <queue> [--json]",
1611
+ " mdkg db queue enqueue <queue> <message-id> --payload-json <json>|--payload-file <path> [--dedupe-key <key>] [--available-at-ms <ms>] [--max-attempts <n>] [--json]",
1612
+ " mdkg db queue claim <queue> --lease-owner <owner> --lease-ms <ms> [--json]",
1613
+ " mdkg db queue ack <queue> <message-id> --lease-owner <owner> [--json]",
1614
+ " mdkg db queue fail <queue> <message-id> --lease-owner <owner> --error <text> [--retry-after-ms <ms>] [--json]",
1615
+ " mdkg db queue dead-letter <queue> <message-id> --lease-owner <owner> --error <text> [--json]",
1616
+ " mdkg db queue release-expired [queue] [--json]",
1617
+ " mdkg db queue stats [queue] [--json]",
1618
+ " mdkg db queue list <queue> [--status ready|leased|acked|dead_letter|all] [--limit <n>] [--json]",
1619
+ " mdkg db queue show <queue> <message-id> [--json]",
1620
+ " mdkg db queue contract [--json]"
1621
+ ],
1622
+ "args": [
1623
+ {
1624
+ "name": "message-id",
1625
+ "required": true,
1626
+ "source": "<message-id>"
1627
+ },
1628
+ {
1629
+ "name": "queue",
1630
+ "required": true,
1631
+ "source": "<queue>"
1632
+ }
1633
+ ],
1634
+ "flags": [
1635
+ {
1636
+ "name": "--error",
1637
+ "value": "<text>",
1638
+ "required": false,
1639
+ "description": "mdkg db queue fail <queue> <message-id> --lease-owner <owner> --error <text> [--retry-after-ms <ms>] [--json]"
1640
+ },
1641
+ {
1642
+ "name": "--help",
1643
+ "value": null,
1644
+ "required": false,
1645
+ "description": "--help, -h Show help"
1646
+ },
1647
+ {
1648
+ "name": "--lease-ms",
1649
+ "value": "<ms>",
1650
+ "required": false,
1651
+ "description": "mdkg db queue claim <queue> --lease-owner <owner> --lease-ms <ms> [--json]"
1652
+ },
1653
+ {
1654
+ "name": "--lease-owner",
1655
+ "value": "<owner>",
1656
+ "required": false,
1657
+ "description": "mdkg db queue claim <queue> --lease-owner <owner> --lease-ms <ms> [--json]"
1658
+ },
1659
+ {
1660
+ "name": "--payload-json",
1661
+ "value": "<json>",
1662
+ "required": false,
1663
+ "description": "mdkg db queue enqueue <queue> <message-id> --payload-json <json>|--payload-file <path> [--dedupe-key <key>] [--available-at-ms <ms>] [--max-attempts <n>] [--json]"
1664
+ },
1665
+ {
1666
+ "name": "--root",
1667
+ "value": null,
1668
+ "required": false,
1669
+ "description": "--root, -r <path> Run against a specific repo root"
1670
+ },
1671
+ {
1672
+ "name": "--version",
1673
+ "value": null,
1674
+ "required": false,
1675
+ "description": "--version, -V Show version"
1676
+ }
1677
+ ],
1678
+ "output_formats": [
1679
+ "text",
1680
+ "json"
1681
+ ],
1682
+ "json_schema_ref": "mdkg.project_db.queue.adapter.v1",
1683
+ "side_effects": [
1684
+ "emit-read-only-adapter-contract",
1685
+ "read-or-write-local-project-db-queue-delivery-state"
1686
+ ],
1687
+ "read_paths": [
1688
+ ".mdkg/**"
1689
+ ],
1690
+ "write_paths": [
1691
+ ".mdkg/db/runtime/**"
1692
+ ],
1693
+ "dry_run": {
1694
+ "supported": false
1695
+ },
1696
+ "lock_policy": "mutation-lock-required-for-create-pause-resume-enqueue-claim-ack-fail-dead-letter-release-expired",
1697
+ "atomic_write_policy": "sqlite-transactions",
1698
+ "receipts": [
1699
+ "queue-adapter-contract-receipt",
1700
+ "queue-receipt"
1701
+ ],
1702
+ "danger_level": "mixed",
1703
+ "aliases": [],
1704
+ "exit_codes": [
1705
+ {
1706
+ "code": 0,
1707
+ "meaning": "success"
1708
+ },
1709
+ {
1710
+ "code": 1,
1711
+ "meaning": "validation-or-runtime-error"
1712
+ }
1713
+ ],
1714
+ "examples": [
1715
+ " mdkg db queue create <queue> [--paused] [--reason <text>] [--json]",
1716
+ " mdkg db queue pause <queue> [--reason <text>] [--json]",
1717
+ " mdkg db queue resume <queue> [--json]"
1718
+ ],
1719
+ "docs": {
1720
+ "help_target": "mdkg help db queue",
1721
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
1722
+ }
1723
+ },
1596
1724
  {
1597
1725
  "key": "db snapshot",
1598
1726
  "path": [
@@ -2443,10 +2571,23 @@
2443
2571
  "visibility": "public",
2444
2572
  "summary": "mdkg format command",
2445
2573
  "usage": [
2446
- " mdkg format"
2574
+ " mdkg format",
2575
+ " mdkg format --headings [--dry-run|--apply] [--json]"
2447
2576
  ],
2448
2577
  "args": [],
2449
2578
  "flags": [
2579
+ {
2580
+ "name": "--apply",
2581
+ "value": "to",
2582
+ "required": false,
2583
+ "description": "--headings adds missing recommended body headings; it defaults to dry-run and requires --apply to write files."
2584
+ },
2585
+ {
2586
+ "name": "--headings",
2587
+ "value": "[--dry-run|--apply]",
2588
+ "required": false,
2589
+ "description": "mdkg format --headings [--dry-run|--apply] [--json]"
2590
+ },
2450
2591
  {
2451
2592
  "name": "--help",
2452
2593
  "value": null,
@@ -2467,9 +2608,10 @@
2467
2608
  }
2468
2609
  ],
2469
2610
  "output_formats": [
2470
- "text"
2611
+ "text",
2612
+ "json"
2471
2613
  ],
2472
- "json_schema_ref": null,
2614
+ "json_schema_ref": "mdkg.command_output.v1",
2473
2615
  "side_effects": [
2474
2616
  "normalize-graph-markdown"
2475
2617
  ],
@@ -2503,7 +2645,8 @@
2503
2645
  }
2504
2646
  ],
2505
2647
  "examples": [
2506
- " mdkg format"
2648
+ " mdkg format",
2649
+ " mdkg format --headings [--dry-run|--apply] [--json]"
2507
2650
  ],
2508
2651
  "docs": {
2509
2652
  "help_target": "mdkg help format",
@@ -3726,9 +3869,15 @@
3726
3869
  "usage": [
3727
3870
  " mdkg graph clone <source-bundle-or-mdkg-dir> --target <path> [--json]",
3728
3871
  " mdkg graph fork <source-bundle-or-mdkg-dir> --target <path> [--start-goal <goal-id>] [--json]",
3729
- " mdkg graph import-template <source-bundle-or-mdkg-dir> [--start-goal <goal-id>] [--select-goal] [--id-prefix <prefix>] [--dry-run] [--apply] [--json]"
3872
+ " mdkg graph import-template <source-bundle-or-mdkg-dir> [--start-goal <goal-id>] [--select-goal] [--id-prefix <prefix>] [--dry-run] [--apply] [--json]",
3873
+ " mdkg graph refs <id-or-qid> [--ws <alias>] [--json]"
3730
3874
  ],
3731
3875
  "args": [
3876
+ {
3877
+ "name": "id-or-qid",
3878
+ "required": true,
3879
+ "source": "<id-or-qid>"
3880
+ },
3732
3881
  {
3733
3882
  "name": "source-bundle-or-mdkg-dir",
3734
3883
  "required": true,
@@ -4012,13 +4161,13 @@
4012
4161
  "name": "--select-goal",
4013
4162
  "value": "requires",
4014
4163
  "required": false,
4015
- "description": "- --select-goal requires --start-goal and writes selected-goal state only after apply validation"
4164
+ "description": "- --select-goal requires --start-goal; on apply it activates the imported start goal, pauses competing active root goals, validates, then writes selected-goal state"
4016
4165
  },
4017
4166
  {
4018
4167
  "name": "--start-goal",
4019
- "value": "and",
4168
+ "value": null,
4020
4169
  "required": false,
4021
- "description": "- --select-goal requires --start-goal and writes selected-goal state only after apply validation"
4170
+ "description": "- --select-goal requires --start-goal; on apply it activates the imported start goal, pauses competing active root goals, validates, then writes selected-goal state"
4022
4171
  },
4023
4172
  {
4024
4173
  "name": "--version",
@@ -4065,6 +4214,86 @@
4065
4214
  "command_matrix": "CLI_COMMAND_MATRIX.md"
4066
4215
  }
4067
4216
  },
4217
+ {
4218
+ "key": "graph refs",
4219
+ "path": [
4220
+ "graph",
4221
+ "refs"
4222
+ ],
4223
+ "category": "graph",
4224
+ "status": "stable",
4225
+ "visibility": "public",
4226
+ "summary": "mdkg graph refs command",
4227
+ "usage": [
4228
+ " mdkg graph refs <id-or-qid> [--ws <alias>] [--json]"
4229
+ ],
4230
+ "args": [
4231
+ {
4232
+ "name": "id-or-qid",
4233
+ "required": true,
4234
+ "source": "<id-or-qid>"
4235
+ }
4236
+ ],
4237
+ "flags": [
4238
+ {
4239
+ "name": "--help",
4240
+ "value": null,
4241
+ "required": false,
4242
+ "description": "--help, -h Show help"
4243
+ },
4244
+ {
4245
+ "name": "--root",
4246
+ "value": null,
4247
+ "required": false,
4248
+ "description": "--root, -r <path> Run against a specific repo root"
4249
+ },
4250
+ {
4251
+ "name": "--version",
4252
+ "value": null,
4253
+ "required": false,
4254
+ "description": "--version, -V Show version"
4255
+ }
4256
+ ],
4257
+ "output_formats": [
4258
+ "text",
4259
+ "json"
4260
+ ],
4261
+ "json_schema_ref": "mdkg.command_output.v1",
4262
+ "side_effects": [
4263
+ "none"
4264
+ ],
4265
+ "read_paths": [
4266
+ ".mdkg/**"
4267
+ ],
4268
+ "write_paths": [],
4269
+ "dry_run": {
4270
+ "supported": false
4271
+ },
4272
+ "lock_policy": "none-read-only",
4273
+ "atomic_write_policy": "none-read-only",
4274
+ "receipts": [
4275
+ "graph-refs-receipt"
4276
+ ],
4277
+ "danger_level": "read-only",
4278
+ "aliases": [],
4279
+ "exit_codes": [
4280
+ {
4281
+ "code": 0,
4282
+ "meaning": "success"
4283
+ },
4284
+ {
4285
+ "code": 1,
4286
+ "meaning": "validation-or-runtime-error"
4287
+ }
4288
+ ],
4289
+ "examples": [
4290
+ " mdkg graph refs <id-or-qid> [--ws <alias>] [--json]"
4291
+ ],
4292
+ "docs": {
4293
+ "help_target": "mdkg help graph refs",
4294
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
4295
+ }
4296
+ },
4068
4297
  {
4069
4298
  "key": "guide",
4070
4299
  "path": [
@@ -4135,6 +4364,93 @@
4135
4364
  "command_matrix": "CLI_COMMAND_MATRIX.md"
4136
4365
  }
4137
4366
  },
4367
+ {
4368
+ "key": "handoff",
4369
+ "path": [
4370
+ "handoff"
4371
+ ],
4372
+ "category": "handoff",
4373
+ "status": "stable",
4374
+ "visibility": "public",
4375
+ "summary": "mdkg handoff command",
4376
+ "usage": [
4377
+ " mdkg handoff create <id-or-qid> [--ws <alias>] [--depth <n>] [--out <path>] [--json]"
4378
+ ],
4379
+ "args": [
4380
+ {
4381
+ "name": "id-or-qid",
4382
+ "required": true,
4383
+ "source": "<id-or-qid>"
4384
+ }
4385
+ ],
4386
+ "flags": [
4387
+ {
4388
+ "name": "--help",
4389
+ "value": null,
4390
+ "required": false,
4391
+ "description": "--help, -h Show help"
4392
+ },
4393
+ {
4394
+ "name": "--out",
4395
+ "value": "must",
4396
+ "required": false,
4397
+ "description": "- --out must stay inside the repo root"
4398
+ },
4399
+ {
4400
+ "name": "--root",
4401
+ "value": null,
4402
+ "required": false,
4403
+ "description": "--root, -r <path> Run against a specific repo root"
4404
+ },
4405
+ {
4406
+ "name": "--version",
4407
+ "value": null,
4408
+ "required": false,
4409
+ "description": "--version, -V Show version"
4410
+ }
4411
+ ],
4412
+ "output_formats": [
4413
+ "text",
4414
+ "json"
4415
+ ],
4416
+ "json_schema_ref": "mdkg.handoff.v1",
4417
+ "side_effects": [
4418
+ "create-sanitized-agent-handoff-when-out-is-provided"
4419
+ ],
4420
+ "read_paths": [
4421
+ ".mdkg/**"
4422
+ ],
4423
+ "write_paths": [
4424
+ ".mdkg/handoffs/**"
4425
+ ],
4426
+ "dry_run": {
4427
+ "supported": false
4428
+ },
4429
+ "lock_policy": "not-required-for-stdout-output",
4430
+ "atomic_write_policy": "atomic-file-write-when-out-is-provided",
4431
+ "receipts": [
4432
+ "handoff-receipt"
4433
+ ],
4434
+ "danger_level": "moderate",
4435
+ "aliases": [],
4436
+ "exit_codes": [
4437
+ {
4438
+ "code": 0,
4439
+ "meaning": "success"
4440
+ },
4441
+ {
4442
+ "code": 1,
4443
+ "meaning": "validation-or-runtime-error"
4444
+ }
4445
+ ],
4446
+ "examples": [
4447
+ " mdkg handoff create <id-or-qid> [--ws <alias>] [--depth <n>] [--out <path>] [--json]"
4448
+ ],
4449
+ "docs": {
4450
+ "help_target": "mdkg help handoff",
4451
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
4452
+ }
4453
+ },
4138
4454
  {
4139
4455
  "key": "index",
4140
4456
  "path": [
@@ -4404,6 +4720,159 @@
4404
4720
  "command_matrix": "CLI_COMMAND_MATRIX.md"
4405
4721
  }
4406
4722
  },
4723
+ {
4724
+ "key": "mcp",
4725
+ "path": [
4726
+ "mcp"
4727
+ ],
4728
+ "category": "mcp",
4729
+ "status": "stable",
4730
+ "visibility": "public",
4731
+ "summary": "mdkg mcp command",
4732
+ "usage": [
4733
+ " mdkg mcp serve --stdio"
4734
+ ],
4735
+ "args": [],
4736
+ "flags": [
4737
+ {
4738
+ "name": "--help",
4739
+ "value": null,
4740
+ "required": false,
4741
+ "description": "--help, -h Show help"
4742
+ },
4743
+ {
4744
+ "name": "--root",
4745
+ "value": "<path>",
4746
+ "required": false,
4747
+ "description": "- use --root <path> to select the mdkg graph explicitly"
4748
+ },
4749
+ {
4750
+ "name": "--stdio",
4751
+ "value": null,
4752
+ "required": false,
4753
+ "description": "mdkg mcp serve --stdio"
4754
+ },
4755
+ {
4756
+ "name": "--version",
4757
+ "value": null,
4758
+ "required": false,
4759
+ "description": "--version, -V Show version"
4760
+ }
4761
+ ],
4762
+ "output_formats": [
4763
+ "text"
4764
+ ],
4765
+ "json_schema_ref": null,
4766
+ "side_effects": [
4767
+ "none"
4768
+ ],
4769
+ "read_paths": [
4770
+ ".mdkg/**"
4771
+ ],
4772
+ "write_paths": [],
4773
+ "dry_run": {
4774
+ "supported": false
4775
+ },
4776
+ "lock_policy": "none-read-only",
4777
+ "atomic_write_policy": "none-read-only",
4778
+ "receipts": [],
4779
+ "danger_level": "read-only",
4780
+ "aliases": [],
4781
+ "exit_codes": [
4782
+ {
4783
+ "code": 0,
4784
+ "meaning": "success"
4785
+ },
4786
+ {
4787
+ "code": 1,
4788
+ "meaning": "validation-or-runtime-error"
4789
+ }
4790
+ ],
4791
+ "examples": [
4792
+ " mdkg mcp serve --stdio"
4793
+ ],
4794
+ "docs": {
4795
+ "help_target": "mdkg help mcp",
4796
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
4797
+ }
4798
+ },
4799
+ {
4800
+ "key": "mcp serve",
4801
+ "path": [
4802
+ "mcp",
4803
+ "serve"
4804
+ ],
4805
+ "category": "mcp",
4806
+ "status": "stable",
4807
+ "visibility": "public",
4808
+ "summary": "mdkg mcp serve command",
4809
+ "usage": [
4810
+ " mdkg mcp serve --stdio"
4811
+ ],
4812
+ "args": [],
4813
+ "flags": [
4814
+ {
4815
+ "name": "--help",
4816
+ "value": null,
4817
+ "required": false,
4818
+ "description": "--help, -h Show help"
4819
+ },
4820
+ {
4821
+ "name": "--root",
4822
+ "value": null,
4823
+ "required": false,
4824
+ "description": "- starts one local Model Context Protocol server bound to the selected --root"
4825
+ },
4826
+ {
4827
+ "name": "--stdio",
4828
+ "value": null,
4829
+ "required": false,
4830
+ "description": "mdkg mcp serve --stdio"
4831
+ },
4832
+ {
4833
+ "name": "--version",
4834
+ "value": null,
4835
+ "required": false,
4836
+ "description": "--version, -V Show version"
4837
+ }
4838
+ ],
4839
+ "output_formats": [
4840
+ "text"
4841
+ ],
4842
+ "json_schema_ref": null,
4843
+ "side_effects": [
4844
+ "none"
4845
+ ],
4846
+ "read_paths": [
4847
+ ".mdkg/**"
4848
+ ],
4849
+ "write_paths": [],
4850
+ "dry_run": {
4851
+ "supported": false
4852
+ },
4853
+ "lock_policy": "none-read-only",
4854
+ "atomic_write_policy": "none-read-only",
4855
+ "receipts": [],
4856
+ "danger_level": "read-only",
4857
+ "aliases": [],
4858
+ "exit_codes": [
4859
+ {
4860
+ "code": 0,
4861
+ "meaning": "success"
4862
+ },
4863
+ {
4864
+ "code": 1,
4865
+ "meaning": "validation-or-runtime-error"
4866
+ }
4867
+ ],
4868
+ "examples": [
4869
+ " mdkg mcp serve --stdio"
4870
+ ],
4871
+ "docs": {
4872
+ "help_target": "mdkg help mcp serve",
4873
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
4874
+ }
4875
+ },
4407
4876
  {
4408
4877
  "key": "new",
4409
4878
  "path": [
@@ -4706,6 +5175,12 @@
4706
5175
  "required": false,
4707
5176
  "description": "--dry-run Preview selection/order/stats without writing files"
4708
5177
  },
5178
+ {
5179
+ "name": "--edges",
5180
+ "value": "accepts",
5181
+ "required": false,
5182
+ "description": "--edges accepts parent, epic, relates, blocked_by, blocks, prev, next, context_refs, evidence_refs"
5183
+ },
4709
5184
  {
4710
5185
  "name": "--format",
4711
5186
  "value": "<fmt>",
@@ -6992,7 +7467,7 @@
6992
7467
  "usage": [
6993
7468
  " mdkg task start <id-or-qid> [--ws <alias>] [--run-id <id>] [--note \"<text>\"] [--json]",
6994
7469
  " mdkg task update <id-or-qid> [options] [--json]",
6995
- " mdkg task done <id-or-qid> [--checkpoint \"<title>\"] [options] [--json]"
7470
+ " mdkg task done <id-or-qid> [--checkpoint \"<title>\"] [--checkpoint-kind implementation|test-proof|goal-closeout|audit|handoff] [options] [--json]"
6996
7471
  ],
6997
7472
  "args": [
6998
7473
  {
@@ -7072,7 +7547,7 @@
7072
7547
  }
7073
7548
  ],
7074
7549
  "examples": [
7075
- " mdkg task done <id-or-qid> [--checkpoint \"<title>\"] [options] [--json]",
7550
+ " mdkg task done <id-or-qid> [--checkpoint \"<title>\"] [--checkpoint-kind implementation|test-proof|goal-closeout|audit|handoff] [options] [--json]",
7076
7551
  " mdkg task start <id-or-qid> [--ws <alias>] [--run-id <id>] [--note \"<text>\"] [--json]",
7077
7552
  " mdkg task update <id-or-qid> [options] [--json]"
7078
7553
  ],
@@ -7446,10 +7921,16 @@
7446
7921
  "visibility": "public",
7447
7922
  "summary": "mdkg validate command",
7448
7923
  "usage": [
7449
- " mdkg validate [--out <path>] [--quiet] [--json]"
7924
+ " mdkg validate [--out <path>] [--quiet] [--changed-only] [--json]"
7450
7925
  ],
7451
7926
  "args": [],
7452
7927
  "flags": [
7928
+ {
7929
+ "name": "--changed-only",
7930
+ "value": "filters",
7931
+ "required": false,
7932
+ "description": "--changed-only filters warning presentation to changed .mdkg files while full graph errors still run."
7933
+ },
7453
7934
  {
7454
7935
  "name": "--help",
7455
7936
  "value": null,
@@ -7500,7 +7981,7 @@
7500
7981
  }
7501
7982
  ],
7502
7983
  "examples": [
7503
- " mdkg validate [--out <path>] [--quiet] [--json]"
7984
+ " mdkg validate [--out <path>] [--quiet] [--changed-only] [--json]"
7504
7985
  ],
7505
7986
  "docs": {
7506
7987
  "help_target": "mdkg help validate",
@@ -7521,9 +8002,15 @@
7521
8002
  " mdkg work trigger <work-or-capability-ref> ...",
7522
8003
  " mdkg work order new|status|update ...",
7523
8004
  " mdkg work receipt new|verify|update ...",
7524
- " mdkg work artifact add ..."
8005
+ " mdkg work artifact add ...",
8006
+ " mdkg work validate [<id-or-qid>] [--type <workflow-type>] [--json]"
7525
8007
  ],
7526
8008
  "args": [
8009
+ {
8010
+ "name": "id-or-qid",
8011
+ "required": true,
8012
+ "source": "<id-or-qid>"
8013
+ },
7527
8014
  {
7528
8015
  "name": "work-or-capability-ref",
7529
8016
  "required": true,
@@ -7551,9 +8038,10 @@
7551
8038
  }
7552
8039
  ],
7553
8040
  "output_formats": [
7554
- "text"
8041
+ "text",
8042
+ "json"
7555
8043
  ],
7556
- "json_schema_ref": null,
8044
+ "json_schema_ref": "mdkg.command_output.v1",
7557
8045
  "side_effects": [
7558
8046
  "read-or-write-work-contract-mirrors"
7559
8047
  ],
@@ -8120,6 +8608,86 @@
8120
8608
  "command_matrix": "CLI_COMMAND_MATRIX.md"
8121
8609
  }
8122
8610
  },
8611
+ {
8612
+ "key": "work validate",
8613
+ "path": [
8614
+ "work",
8615
+ "validate"
8616
+ ],
8617
+ "category": "work",
8618
+ "status": "stable",
8619
+ "visibility": "public",
8620
+ "summary": "mdkg work validate command",
8621
+ "usage": [
8622
+ " mdkg work validate [<id-or-qid>] [--type spec|work|work_order|receipt|feedback|dispute|proposal] [--json]"
8623
+ ],
8624
+ "args": [
8625
+ {
8626
+ "name": "id-or-qid",
8627
+ "required": true,
8628
+ "source": "<id-or-qid>"
8629
+ }
8630
+ ],
8631
+ "flags": [
8632
+ {
8633
+ "name": "--help",
8634
+ "value": null,
8635
+ "required": false,
8636
+ "description": "--help, -h Show help"
8637
+ },
8638
+ {
8639
+ "name": "--root",
8640
+ "value": null,
8641
+ "required": false,
8642
+ "description": "--root, -r <path> Run against a specific repo root"
8643
+ },
8644
+ {
8645
+ "name": "--version",
8646
+ "value": null,
8647
+ "required": false,
8648
+ "description": "--version, -V Show version"
8649
+ }
8650
+ ],
8651
+ "output_formats": [
8652
+ "text",
8653
+ "json"
8654
+ ],
8655
+ "json_schema_ref": "mdkg.work_validate.v1",
8656
+ "side_effects": [
8657
+ "none"
8658
+ ],
8659
+ "read_paths": [
8660
+ ".mdkg/**"
8661
+ ],
8662
+ "write_paths": [],
8663
+ "dry_run": {
8664
+ "supported": false
8665
+ },
8666
+ "lock_policy": "none-read-only",
8667
+ "atomic_write_policy": "none-read-only",
8668
+ "receipts": [
8669
+ "work-validate-receipt"
8670
+ ],
8671
+ "danger_level": "read-only",
8672
+ "aliases": [],
8673
+ "exit_codes": [
8674
+ {
8675
+ "code": 0,
8676
+ "meaning": "success"
8677
+ },
8678
+ {
8679
+ "code": 1,
8680
+ "meaning": "validation-or-runtime-error"
8681
+ }
8682
+ ],
8683
+ "examples": [
8684
+ " mdkg work validate [<id-or-qid>] [--type spec|work|work_order|receipt|feedback|dispute|proposal] [--json]"
8685
+ ],
8686
+ "docs": {
8687
+ "help_target": "mdkg help work validate",
8688
+ "command_matrix": "CLI_COMMAND_MATRIX.md"
8689
+ }
8690
+ },
8123
8691
  {
8124
8692
  "key": "workspace",
8125
8693
  "path": [
@@ -8215,5 +8783,5 @@
8215
8783
  }
8216
8784
  }
8217
8785
  ],
8218
- "contract_hash": "2fd862666a24adc363a0912822b639f7e437bf5fd31dea13e6f4d87bf0a57d60"
8786
+ "contract_hash": "e6b42d5850cb4e76b9cb29a21bb643b50c042667bb09c598ec3c7dd87f7cccdd"
8219
8787
  }