dsh-openwrite 0.2.28 → 0.2.33

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 (125) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +49 -8
  3. package/THIRD_PARTY_NOTICES.md +4 -3
  4. package/companions.mjs +508 -0
  5. package/cordis.patch.yml +0 -2
  6. package/docs/CLOSED_ISSUE_FOLLOWUPS.md +1 -1
  7. package/docs/COMPANION_PLUGINS.md +142 -0
  8. package/docs/CONTEXT_SLOTS.md +1 -1
  9. package/docs/COST_MEASUREMENT.md +2 -2
  10. package/docs/DEVELOPMENT.md +6 -11
  11. package/docs/DSH_STORE.md +14 -2
  12. package/docs/EDITOR_SAFETY_REPAIRS.md +2 -2
  13. package/docs/INSTALL.md +112 -4
  14. package/docs/ISSUES_121_123.md +4 -4
  15. package/docs/ISSUES_140_142.md +58 -0
  16. package/docs/ISSUES_149_150_151.md +77 -0
  17. package/docs/ISSUE_123_FOLLOWUP.md +3 -2
  18. package/docs/ISSUE_146_REVIEW_EVIDENCE.md +53 -0
  19. package/docs/LEARNING.md +1 -1
  20. package/docs/MOBILE_READINESS.md +62 -0
  21. package/docs/PLUGIN_MAINTENANCE.md +1 -3
  22. package/docs/RELEASE_ACCEPTANCE.md +20 -3
  23. package/docs/REVIEW_ROUND_22.md +67 -0
  24. package/docs/REVIEW_ROUND_23.md +48 -0
  25. package/docs/REVIEW_ROUND_25.md +51 -0
  26. package/docs/SELECTION_UPGRADE_REPAIRS.md +2 -2
  27. package/docs/TOOLS.md +181 -604
  28. package/docs/WORKFLOWS.md +5 -5
  29. package/package.json +17 -21
  30. package/packages/openwrite-bridge/lib/client.d.ts +0 -1
  31. package/packages/openwrite-bridge/lib/client.js +90 -9
  32. package/packages/openwrite-bridge/lib/contracts-generated.js +2 -1
  33. package/packages/openwrite-bridge/lib/dog-delivery.d.ts +1 -0
  34. package/packages/openwrite-bridge/lib/dog-delivery.js +3 -1
  35. package/packages/openwrite-bridge/lib/dog-review.js +15 -3
  36. package/packages/openwrite-bridge/lib/domain.d.ts +27 -0
  37. package/packages/openwrite-bridge/lib/domain.js +250 -29
  38. package/packages/openwrite-bridge/lib/host-llm.d.ts +188 -0
  39. package/packages/openwrite-bridge/lib/host-llm.js +657 -0
  40. package/packages/openwrite-bridge/lib/host-web.d.ts +61 -0
  41. package/packages/openwrite-bridge/lib/host-web.js +166 -0
  42. package/packages/openwrite-bridge/lib/index.d.ts +4 -0
  43. package/packages/openwrite-bridge/lib/index.js +150 -6
  44. package/packages/openwrite-bridge/lib/managed-runtime.d.ts +47 -2
  45. package/packages/openwrite-bridge/lib/managed-runtime.js +176 -34
  46. package/packages/openwrite-bridge/lib/tool-policy.js +37 -12
  47. package/packages/openwrite-bridge/lib/tools.js +1223 -1227
  48. package/packages/openwrite-bridge/package.json +7 -5
  49. package/packages/studio-panel/lib/client.js +123207 -121534
  50. package/packages/studio-panel/lib/client.js.map +1 -1
  51. package/packages/studio-panel/lib/types/client/LaunchOpenWrite.d.ts +10 -0
  52. package/packages/studio-panel/lib/types/client/ModelView.d.ts +28 -4
  53. package/packages/studio-panel/lib/types/client/OpenWriteSettings.d.ts +64 -0
  54. package/packages/studio-panel/lib/types/client/SceneWorkbench.d.ts +2 -0
  55. package/packages/studio-panel/lib/types/client/SearchSettings.d.ts +2 -0
  56. package/packages/studio-panel/lib/types/client/SerialWritingView.d.ts +2 -1
  57. package/packages/studio-panel/lib/types/client/TurnMutationSummary.d.ts +2 -0
  58. package/packages/studio-panel/lib/types/client/VditorBody.d.ts +1 -1
  59. package/packages/studio-panel/lib/types/client/api.d.ts +41 -2
  60. package/packages/studio-panel/lib/types/client/browser-download.d.ts +4 -0
  61. package/packages/studio-panel/lib/types/client/companions.d.ts +46 -0
  62. package/packages/studio-panel/lib/types/client/dto.d.ts +22 -0
  63. package/packages/studio-panel/lib/types/client/locales.d.ts +1 -1
  64. package/packages/studio-panel/lib/types/client/workspace-chrome.d.ts +41 -0
  65. package/packages/studio-panel/package.json +5 -3
  66. package/plugin.mjs +159 -20
  67. package/preset-definition.mjs +144 -4
  68. package/presets/openwrite/agent.cordis.yml +7 -9
  69. package/presets/openwrite/ops-integration.mjs +28 -0
  70. package/presets/openwrite/preset.yml +2 -1
  71. package/presets/openwrite/skills/canon/SKILL.md +3 -3
  72. package/presets/openwrite/skills/delivery-artifact-query/SKILL.md +41 -0
  73. package/presets/openwrite/skills/dialoguequality/SKILL.md +16 -17
  74. package/presets/openwrite/skills/dog-delivery-verification/SKILL.md +113 -0
  75. package/presets/openwrite/skills/export-book/SKILL.md +3 -3
  76. package/presets/openwrite/skills/foreshadow/SKILL.md +1 -1
  77. package/presets/openwrite/skills/foreshadowing-system/SKILL.md +16 -25
  78. package/presets/openwrite/skills/import-artifact-query/SKILL.md +30 -0
  79. package/presets/openwrite/skills/learn/SKILL.md +3 -3
  80. package/presets/openwrite/skills/novel-creator/SKILL.md +10 -10
  81. package/presets/openwrite/skills/novel-reviewer/SKILL.md +11 -11
  82. package/presets/openwrite/skills/progress/SKILL.md +1 -1
  83. package/presets/openwrite/skills/review-artifact-query/SKILL.md +41 -0
  84. package/presets/openwrite/skills/review-chapter/SKILL.md +2 -2
  85. package/presets/openwrite/skills/revise-span/SKILL.md +5 -5
  86. package/presets/openwrite/skills/style-system/SKILL.md +13 -6
  87. package/presets/openwrite/skills/truth-validation/SKILL.md +9 -12
  88. package/presets/openwrite/skills/workflow-manager/SKILL.md +13 -13
  89. package/presets/openwrite/skills/world-query/SKILL.md +16 -11
  90. package/presets/openwrite/skills/write-next/SKILL.md +1 -1
  91. package/release/{openwrite-5.8.20-py3-none-any.whl → openwrite-5.8.30-py3-none-any.whl} +0 -0
  92. package/release/runtime-manifest.json +4 -13
  93. package/release/source.json +21 -21
  94. package/release/wheels/licenses/OPENSSL-3.6.3-LICENSE.txt +225 -0
  95. package/scripts/maintenance.mjs +67 -7
  96. package/scripts/plugin-doctor.mjs +179 -0
  97. package/scripts/prepare.mjs +11 -2
  98. package/scripts/safe-upgrade.mjs +38 -5
  99. package/dog-tools.mjs +0 -13
  100. package/presets/openwrite/skills/dog-delivery-query/SKILL.md +0 -42
  101. package/presets/openwrite/skills/dog-import-query/SKILL.md +0 -29
  102. package/presets/openwrite/skills/dog-review-query/SKILL.md +0 -42
  103. package/scripts/dog/delivery-stage.js +0 -32
  104. package/scripts/dog/import-chapter.js +0 -20
  105. package/scripts/dog/import-record.js +0 -35
  106. package/scripts/dog/review-dimension.js +0 -41
  107. package/scripts/dog/review-record.js +0 -42
  108. package/vendor/dsh-dog/LICENSE +0 -29
  109. package/vendor/dsh-dog/README.md +0 -114
  110. package/vendor/dsh-dog/UPSTREAM.md +0 -30
  111. package/vendor/dsh-dog/cordis.patch.yml +0 -14
  112. package/vendor/dsh-dog/lib/client.js +0 -2960
  113. package/vendor/dsh-dog/lib/client.js.map +0 -1
  114. package/vendor/dsh-dog/lib/core--byUPJL8.js +0 -2191
  115. package/vendor/dsh-dog/lib/core-BiEBMLz3.d.ts +0 -495
  116. package/vendor/dsh-dog/lib/core.d.ts +0 -2
  117. package/vendor/dsh-dog/lib/core.js +0 -2
  118. package/vendor/dsh-dog/lib/index.d.ts +0 -143
  119. package/vendor/dsh-dog/lib/index.js +0 -1230
  120. package/vendor/dsh-dog/package.json +0 -110
  121. package/vendor/dsh-dog/schemas/schema-0.2/graph.schema.json +0 -139
  122. package/vendor/dsh-dog/schemas/schema-0.2/report.schema.json +0 -87
  123. package/vendor/dsh-dog/schemas/schema-0.2/run.schema.json +0 -259
  124. package/vendor/dsh-dog/schemas/schema-0.2/runtime-event.schema.json +0 -105
  125. package/vendor/dsh-dog/schemas/schema-0.2/verification.schema.json +0 -40
@@ -1,110 +0,0 @@
1
- {
2
- "name": "@dsh-external/dsh-dog",
3
- "version": "1.2.0",
4
- "description": "DeepSeek Harness DoG (DAG of Goals) graph validation and trusted artifact verification plugin.",
5
- "private": true,
6
- "type": "module",
7
- "main": "lib/index.js",
8
- "types": "lib/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./lib/index.d.ts",
12
- "default": "./lib/index.js"
13
- },
14
- "./core": {
15
- "types": "./lib/core.d.ts",
16
- "default": "./lib/core.js"
17
- },
18
- "./client": "./lib/client.js",
19
- "./cordis.patch.yml": "./cordis.patch.yml",
20
- "./package.json": "./package.json"
21
- },
22
- "files": [
23
- "lib",
24
- "src",
25
- "SPEC.md",
26
- "cordis.patch.yml"
27
- ],
28
- "scripts": {
29
- "typecheck": "tsc -p tsconfig.json && tsc -p tsconfig.client.json",
30
- "test": "vitest run",
31
- "build": "tsdown",
32
- "check": "pnpm run typecheck && pnpm run test && pnpm run build"
33
- },
34
- "dsh": {
35
- "bundle": {
36
- "patch": "./cordis.patch.yml"
37
- },
38
- "client": {
39
- "inject": [
40
- "@deepseek-ai/dsh-client-connection",
41
- "@deepseek-ai/dsh-api-session-controller",
42
- "@deepseek-ai/dsh-client-ui-layout",
43
- "@deepseek-ai/dsh-client-ui-session",
44
- "@deepseek-ai/dsh-client-ui-workspace"
45
- ],
46
- "platform": "web"
47
- },
48
- "compatibility": {
49
- "dsh": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
50
- "dshReleases": {
51
- "0.1.2-rc.1": "compatible",
52
- "0.1.5-alpha.1": "compatible",
53
- "0.2.0-rc.2": "compatible",
54
- "0.2.1-rc.2": "compatible",
55
- "0.2.1-rc.3": "compatible"
56
- }
57
- }
58
- },
59
- "peerDependencies": {
60
- "@deepseek-ai/cordis": "4.0.2 || ~4.0.4",
61
- "@deepseek-ai/dsh-client-connection": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
62
- "@deepseek-ai/dsh-client-ui-layout": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
63
- "@deepseek-ai/dsh-client-ui-slots": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
64
- "@deepseek-ai/dsh-home-paths": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
65
- "@deepseek-ai/dsh-host-webserver": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
66
- "@deepseek-ai/dsh-tools": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3",
67
- "@deepseek-ai/schemastery": "3.18.2",
68
- "react": "^18.3.1",
69
- "@deepseek-ai/dsh-client-ui-workspace": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.3"
70
- },
71
- "devDependencies": {
72
- "@deepseek-ai/cordis": "4.0.2",
73
- "@deepseek-ai/dsh-agent": "0.1.2-rc.1",
74
- "@deepseek-ai/dsh-api-gateway": "0.1.2-rc.1",
75
- "@deepseek-ai/dsh-api-session-controller": "0.1.2-rc.1",
76
- "@deepseek-ai/dsh-attachment": "0.1.2-rc.1",
77
- "@deepseek-ai/dsh-client-connection": "0.1.2-rc.1",
78
- "@deepseek-ai/dsh-client-ui-layout": "0.1.2-rc.1",
79
- "@deepseek-ai/dsh-client-ui-renderer": "0.1.2-rc.1",
80
- "@deepseek-ai/dsh-client-ui-slots": "0.1.2-rc.1",
81
- "@deepseek-ai/dsh-code-runtime": "0.1.2-rc.1",
82
- "@deepseek-ai/dsh-home-paths": "0.1.2-rc.1",
83
- "@deepseek-ai/dsh-host-webserver": "0.1.2-rc.1",
84
- "@deepseek-ai/dsh-invariants": "0.1.2-rc.1",
85
- "@deepseek-ai/dsh-jobs": "0.1.2-rc.1",
86
- "@deepseek-ai/dsh-llm": "0.1.2-rc.1",
87
- "@deepseek-ai/dsh-scope": "0.1.2-rc.1",
88
- "@deepseek-ai/dsh-session": "0.1.2-rc.1",
89
- "@deepseek-ai/dsh-settings": "0.1.2-rc.1",
90
- "@deepseek-ai/dsh-subagent": "0.1.2-rc.1",
91
- "@deepseek-ai/dsh-system-prompt": "0.1.2-rc.1",
92
- "@deepseek-ai/dsh-tools": "0.1.2-rc.1",
93
- "@deepseek-ai/dsh-user-approval": "0.1.2-rc.1",
94
- "@deepseek-ai/schemastery": "3.18.2",
95
- "@types/node": "^22.20.0",
96
- "@types/react": "~18.3.31",
97
- "tsdown": "^0.22.2",
98
- "typescript": "^5.9.3",
99
- "vitest": "^4.1.1",
100
- "@deepseek-ai/dsh-client-ui-session": "0.1.2-rc.1",
101
- "react": "^18.3.1",
102
- "@deepseek-ai/dsh-client-ui-workspace": "0.1.2-rc.1"
103
- },
104
- "license": "BSD-3-Clause",
105
- "dependencies": {
106
- "ajv": "^8.20.0",
107
- "ajv-formats": "^3.0.1",
108
- "tar": "7.5.7"
109
- }
110
- }
@@ -1,139 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://github.com/dsh-external/dsh-dog/schemas/schema-0.9/graph.schema.json",
4
- "title": "DoG v0.9 graph input (dog_validate / dog_create payload)",
5
- "description": "Verification graph authored by the planning agent. Machine-readable counterpart of SPEC §4 / §1. Graph-level semantic rules (reference resolution, acyclicity, leaf-requires-verifier) are enforced by the compiler, not expressible here.",
6
- "type": "object",
7
- "additionalProperties": false,
8
- "required": ["schemaVersion", "id", "root", "nodes", "contains", "dependsOn"],
9
- "properties": {
10
- "schemaVersion": { "const": "0.9" },
11
- "id": { "$ref": "#/$defs/asciiId" },
12
- "root": { "$ref": "#/$defs/goalId" },
13
- "nodes": {
14
- "type": "object",
15
- "minProperties": 1,
16
- "propertyNames": { "$ref": "#/$defs/goalId" },
17
- "additionalProperties": { "$ref": "#/$defs/node" }
18
- },
19
- "contains": {
20
- "type": "array",
21
- "items": { "$ref": "#/$defs/containment" }
22
- },
23
- "dependsOn": {
24
- "type": "array",
25
- "items": { "$ref": "#/$defs/dependency" }
26
- }
27
- },
28
- "$defs": {
29
- "asciiId": {
30
- "type": "string",
31
- "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$"
32
- },
33
- "goalId": {
34
- "type": "string",
35
- "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$"
36
- },
37
- "node": {
38
- "type": "object",
39
- "additionalProperties": false,
40
- "required": ["kind", "title", "constraint", "target"],
41
- "properties": {
42
- "kind": { "enum": ["leaf", "composite"] },
43
- "title": { "type": "string", "minLength": 1 },
44
- "constraint": { "enum": ["hard", "soft"] },
45
- "target": {
46
- "description": "Single file, or a directory/collection packed into .tar by the engine.",
47
- "type": "string",
48
- "minLength": 1
49
- },
50
- "verifier": {
51
- "description": "Leaf: required. Composite: optional whole-object assertion (runs after the subtree settles).",
52
- "type": "object",
53
- "additionalProperties": false,
54
- "required": ["mode"],
55
- "properties": {
56
- "mode": { "enum": ["programmatic", "agentic"] },
57
- "script": { "type": "string", "minLength": 1 },
58
- "instruction": { "type": "string", "minLength": 1 }
59
- }
60
- },
61
- "completion": {
62
- "description": "Required when kind=composite; forbidden when kind=leaf.",
63
- "$ref": "#/$defs/expr"
64
- }
65
- },
66
- "allOf": [
67
- {
68
- "if": { "properties": { "kind": { "const": "leaf" } }, "required": ["kind"] },
69
- "then": {
70
- "required": ["verifier"],
71
- "not": { "required": ["completion"] }
72
- }
73
- },
74
- {
75
- "if": { "properties": { "kind": { "const": "composite" } }, "required": ["kind"] },
76
- "then": { "required": ["completion"] }
77
- }
78
- ]
79
- },
80
- "expr": {
81
- "type": "object",
82
- "additionalProperties": false,
83
- "properties": {
84
- "op": { "enum": ["ref", "all", "any", "not", "atLeast"] },
85
- "id": { "$ref": "#/$defs/goalId" },
86
- "count": { "type": "integer", "minimum": 1 },
87
- "item": { "$ref": "#/$defs/expr" },
88
- "items": {
89
- "type": "array",
90
- "minItems": 1,
91
- "items": { "$ref": "#/$defs/expr" }
92
- }
93
- },
94
- "allOf": [
95
- {
96
- "if": { "properties": { "op": { "const": "ref" } }, "required": ["op"] },
97
- "then": { "required": ["id"], "not": { "anyOf": [{ "required": ["items"] }, { "required": ["item"] }, { "required": ["count"] }] } }
98
- },
99
- {
100
- "if": { "properties": { "op": { "const": "not" } }, "required": ["op"] },
101
- "then": { "required": ["item"], "not": { "anyOf": [{ "required": ["items"] }, { "required": ["id"] }, { "required": ["count"] }] } }
102
- },
103
- {
104
- "if": { "properties": { "op": { "const": "atLeast" } }, "required": ["op"] },
105
- "then": { "required": ["count", "items"], "not": { "anyOf": [{ "required": ["id"] }, { "required": ["item"] }] } }
106
- },
107
- {
108
- "if": { "properties": { "op": { "enum": ["all", "any"] } }, "required": ["op"] },
109
- "then": { "required": ["items"], "not": { "anyOf": [{ "required": ["id"] }, { "required": ["item"] }, { "required": ["count"] }] } }
110
- }
111
- ]
112
- },
113
- "containment": {
114
- "type": "object",
115
- "additionalProperties": false,
116
- "required": ["parent", "child", "required", "failure"],
117
- "properties": {
118
- "parent": { "$ref": "#/$defs/goalId" },
119
- "child": { "$ref": "#/$defs/goalId" },
120
- "required": { "type": "boolean" },
121
- "failure": { "enum": ["fatal", "tolerable", "degrade"] },
122
- "degradeTo": { "$ref": "#/$defs/goalId" }
123
- }
124
- },
125
- "dependency": {
126
- "type": "object",
127
- "additionalProperties": false,
128
- "required": ["source", "target"],
129
- "properties": {
130
- "source": { "$ref": "#/$defs/goalId" },
131
- "target": { "$ref": "#/$defs/goalId" },
132
- "data": {
133
- "type": "array",
134
- "items": { "type": "string" }
135
- }
136
- }
137
- }
138
- }
139
- }
@@ -1,87 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://github.com/dsh-external/dsh-dog/schemas/schema-0.2/report.schema.json",
4
- "title": "DoG v0.2 CI report (dog_status full response)",
5
- "description": "Machine-readable report consumed by the development agent and external CI. Machine-readable counterpart of SPEC §10 report stage.",
6
- "type": "object",
7
- "additionalProperties": false,
8
- "required": ["runId", "graphId", "rootState", "goals"],
9
- "properties": {
10
- "runId": { "$ref": "#/$defs/uuid" },
11
- "graphId": { "type": "string", "minLength": 1 },
12
- "graphDigest": { "$ref": "#/$defs/sha256" },
13
- "rootState": {
14
- "enum": ["success", "partial_success", "failure", "infeasible", "needs_replan", "cancelled", "running"]
15
- },
16
- "goals": {
17
- "type": "array",
18
- "items": { "$ref": "#/$defs/goalReport" }
19
- },
20
- "revalidated": {
21
- "description": "Goal IDs re-run in this run (GM changed or non-programmatic).",
22
- "type": "array",
23
- "items": { "type": "string", "minLength": 1 }
24
- },
25
- "inherited": {
26
- "description": "Goal IDs whose prior verification record was reused unchanged.",
27
- "type": "array",
28
- "items": {
29
- "type": "object",
30
- "additionalProperties": false,
31
- "required": ["goalId", "fromRunId", "state"],
32
- "properties": {
33
- "goalId": { "type": "string", "minLength": 1 },
34
- "fromRunId": { "$ref": "#/$defs/uuid" },
35
- "state": { "const": "inherited" }
36
- }
37
- }
38
- },
39
- "warning": {
40
- "type": "string",
41
- "description": "Threshold warning when the submission re-triggered more leaves than revalidateThreshold (SPEC §9.2)."
42
- },
43
- "generatedAt": { "type": "string", "format": "date-time" }
44
- },
45
- "$defs": {
46
- "uuid": {
47
- "type": "string",
48
- "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
49
- },
50
- "sha256": {
51
- "type": "string",
52
- "pattern": "^([0-9a-f]{64}|sha256:[0-9a-f]{64})$"
53
- },
54
- "goalReport": {
55
- "type": "object",
56
- "additionalProperties": false,
57
- "required": ["goalId", "state"],
58
- "properties": {
59
- "goalId": { "type": "string", "minLength": 1 },
60
- "state": {
61
- "enum": [
62
- "pending", "running", "success", "failure", "blocked",
63
- "needs_human", "cancelled", "invalidated", "partial", "inherited"
64
- ]
65
- },
66
- "verifier": {
67
- "type": "object",
68
- "additionalProperties": false,
69
- "required": ["mode"],
70
- "properties": {
71
- "mode": { "enum": ["programmatic", "agentic"] }
72
- }
73
- },
74
- "evidence": {
75
- "description": "Proof satisfying the contract's evidence schema. References resolve into the sandbox store; never raw artifact bytes.",
76
- "type": "array",
77
- "items": { "type": "object" }
78
- },
79
- "defect": {
80
- "description": "Bounded human-readable reason when state=failure or needs_human.",
81
- "type": "string"
82
- },
83
- "settledAt": { "type": "string", "format": "date-time" }
84
- }
85
- }
86
- }
87
- }
@@ -1,259 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://github.com/dsh-external/dsh-dog/schemas/schema-0.2/run.schema.json",
4
- "title": "DoG v0.2 persisted run record (runs/<run-id>.json)",
5
- "description": "Execution state and terminal result of one dog_run. Machine-readable counterpart of SPEC §8 + §11.",
6
- "type": "object",
7
- "additionalProperties": false,
8
- "required": [
9
- "runId",
10
- "graphId",
11
- "graphDigest",
12
- "state",
13
- "goals",
14
- "createdAt",
15
- "updatedAt"
16
- ],
17
- "properties": {
18
- "runId": {
19
- "$ref": "#/$defs/uuid"
20
- },
21
- "graphId": {
22
- "type": "string",
23
- "minLength": 1
24
- },
25
- "graphDigest": {
26
- "$ref": "#/$defs/sha256"
27
- },
28
- "workspaceBaseDir": {
29
- "description": "Calling session cwd; verifier workspaces are allocated under it when known.",
30
- "type": "string",
31
- "minLength": 1
32
- },
33
- "state": {
34
- "enum": [
35
- "running",
36
- "completed",
37
- "cancelled",
38
- "failed"
39
- ]
40
- },
41
- "rootState": {
42
- "description": "Terminal root state when settled (SPEC §8).",
43
- "enum": [
44
- "success",
45
- "partial_success",
46
- "failure",
47
- "infeasible",
48
- "needs_replan",
49
- "cancelled"
50
- ]
51
- },
52
- "goals": {
53
- "type": "object",
54
- "additionalProperties": {
55
- "$ref": "#/$defs/goalResult"
56
- }
57
- },
58
- "gmDigests": {
59
- "description": "Per-leaf grounding-material digest recorded at revalidate_select.",
60
- "type": "object",
61
- "additionalProperties": {
62
- "$ref": "#/$defs/sha256"
63
- }
64
- },
65
- "invocation": {
66
- "type": "object",
67
- "additionalProperties": false,
68
- "required": [
69
- "callId"
70
- ],
71
- "properties": {
72
- "callId": {
73
- "type": "string",
74
- "minLength": 1
75
- },
76
- "agentSessionId": {
77
- "type": "string",
78
- "minLength": 1
79
- },
80
- "parentSessionId": {
81
- "type": "string",
82
- "minLength": 1
83
- },
84
- "invokedAt": {
85
- "type": "string",
86
- "format": "date-time"
87
- }
88
- }
89
- },
90
- "warning": {
91
- "type": "string",
92
- "description": "Bounded run warning (e.g. runtime-event persist failure); never alters a verdict."
93
- },
94
- "createdAt": {
95
- "type": "string",
96
- "format": "date-time"
97
- },
98
- "updatedAt": {
99
- "type": "string",
100
- "format": "date-time"
101
- },
102
- "runtimeWarning": {
103
- "type": "string"
104
- }
105
- },
106
- "$defs": {
107
- "uuid": {
108
- "type": "string",
109
- "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
110
- },
111
- "sha256": {
112
- "type": "string",
113
- "pattern": "^([0-9a-f]{64}|sha256:[0-9a-f]{64})$"
114
- },
115
- "goalResult": {
116
- "type": "object",
117
- "additionalProperties": false,
118
- "required": [
119
- "state"
120
- ],
121
- "properties": {
122
- "state": {
123
- "enum": [
124
- "pending",
125
- "running",
126
- "success",
127
- "failure",
128
- "blocked",
129
- "needs_human",
130
- "cancelled",
131
- "invalidated",
132
- "partial",
133
- "inherited"
134
- ]
135
- },
136
- "reason": {
137
- "type": "string"
138
- },
139
- "inheritedFrom": {
140
- "description": "Run ID whose verification record was reused when state=inherited.",
141
- "$ref": "#/$defs/uuid"
142
- },
143
- "verification": {
144
- "type": "object",
145
- "additionalProperties": false,
146
- "required": [
147
- "schemaVersion",
148
- "runId",
149
- "graphId",
150
- "graphDigest",
151
- "goalId",
152
- "judgment",
153
- "passed",
154
- "at"
155
- ],
156
- "properties": {
157
- "schemaVersion": {
158
- "const": "0.1"
159
- },
160
- "runId": {
161
- "$ref": "#/$defs/uuid"
162
- },
163
- "graphId": {
164
- "type": "string",
165
- "minLength": 1
166
- },
167
- "graphDigest": {
168
- "$ref": "#/$defs/sha256"
169
- },
170
- "goalId": {
171
- "type": "string",
172
- "minLength": 1
173
- },
174
- "judgment": {
175
- "type": "object",
176
- "additionalProperties": false,
177
- "required": [
178
- "mode"
179
- ],
180
- "properties": {
181
- "mode": {
182
- "enum": [
183
- "programmatic",
184
- "agentic"
185
- ]
186
- },
187
- "script": {
188
- "type": "string"
189
- },
190
- "scriptDigest": {
191
- "type": "string"
192
- },
193
- "instructionHash": {
194
- "type": "string"
195
- }
196
- }
197
- },
198
- "gmDigest": {
199
- "$ref": "#/$defs/sha256"
200
- },
201
- "passed": {
202
- "type": [
203
- "boolean",
204
- "null"
205
- ]
206
- },
207
- "evidence": {
208
- "type": [
209
- "object",
210
- "array",
211
- "string",
212
- "number",
213
- "boolean",
214
- "null"
215
- ]
216
- },
217
- "at": {
218
- "type": "string",
219
- "format": "date-time"
220
- }
221
- }
222
- },
223
- "agentSessions": {
224
- "type": "array",
225
- "items": {
226
- "type": "object",
227
- "additionalProperties": false,
228
- "required": [
229
- "sessionId",
230
- "role",
231
- "boundAt"
232
- ],
233
- "properties": {
234
- "sessionId": {
235
- "type": "string",
236
- "minLength": 1
237
- },
238
- "parentSessionId": {
239
- "type": "string",
240
- "minLength": 1
241
- },
242
- "role": {
243
- "enum": [
244
- "orchestrator",
245
- "verifier",
246
- "reviewer"
247
- ]
248
- },
249
- "boundAt": {
250
- "type": "string",
251
- "format": "date-time"
252
- }
253
- }
254
- }
255
- }
256
- }
257
- }
258
- }
259
- }