@tiangong-ai/cli 0.0.60 → 0.0.62

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 (239) hide show
  1. package/AGENTS.md +17 -6
  2. package/README.md +577 -55
  3. package/dist/data/builtins.js +33 -5
  4. package/dist/data/builtins.js.map +1 -1
  5. package/dist/data/catalog.js +46 -0
  6. package/dist/data/catalog.js.map +1 -1
  7. package/dist/data/commands.js +15 -1
  8. package/dist/data/commands.js.map +1 -1
  9. package/dist/data/connectors/airnow-hourly-observations.js +60 -10
  10. package/dist/data/connectors/airnow-hourly-observations.js.map +1 -1
  11. package/dist/data/connectors/epa-eis-records.js +16 -2
  12. package/dist/data/connectors/epa-eis-records.js.map +1 -1
  13. package/dist/data/connectors/gdelt-doc-search.js +54 -18
  14. package/dist/data/connectors/gdelt-doc-search.js.map +1 -1
  15. package/dist/data/connectors/gdelt-file-feeds.js +20 -11
  16. package/dist/data/connectors/gdelt-file-feeds.js.map +1 -1
  17. package/dist/data/connectors/gdelt-web-ngrams.d.ts +2 -0
  18. package/dist/data/connectors/gdelt-web-ngrams.js +350 -0
  19. package/dist/data/connectors/gdelt-web-ngrams.js.map +1 -0
  20. package/dist/data/connectors/gdelt-web-ngrams.schemas.d.ts +188 -0
  21. package/dist/data/connectors/gdelt-web-ngrams.schemas.js +138 -0
  22. package/dist/data/connectors/gdelt-web-ngrams.schemas.js.map +1 -0
  23. package/dist/data/connectors/nasa-firms-fire.js +4 -0
  24. package/dist/data/connectors/nasa-firms-fire.js.map +1 -1
  25. package/dist/data/connectors/open-meteo-air-quality.js +27 -22
  26. package/dist/data/connectors/open-meteo-air-quality.js.map +1 -1
  27. package/dist/data/connectors/open-meteo-air-quality.schemas.d.ts +4 -1
  28. package/dist/data/connectors/open-meteo-air-quality.schemas.js +21 -1
  29. package/dist/data/connectors/open-meteo-air-quality.schemas.js.map +1 -1
  30. package/dist/data/connectors/open-meteo-flood.js +28 -23
  31. package/dist/data/connectors/open-meteo-flood.js.map +1 -1
  32. package/dist/data/connectors/open-meteo-flood.schemas.d.ts +4 -1
  33. package/dist/data/connectors/open-meteo-flood.schemas.js +21 -1
  34. package/dist/data/connectors/open-meteo-flood.schemas.js.map +1 -1
  35. package/dist/data/connectors/open-meteo-historical-weather.js +26 -21
  36. package/dist/data/connectors/open-meteo-historical-weather.js.map +1 -1
  37. package/dist/data/connectors/open-meteo-historical-weather.schemas.d.ts +4 -1
  38. package/dist/data/connectors/open-meteo-historical-weather.schemas.js +21 -1
  39. package/dist/data/connectors/open-meteo-historical-weather.schemas.js.map +1 -1
  40. package/dist/data/connectors/openaq-air-quality.js +50 -12
  41. package/dist/data/connectors/openaq-air-quality.js.map +1 -1
  42. package/dist/data/connectors/openaq-air-quality.schemas.d.ts +0 -4
  43. package/dist/data/connectors/openaq-air-quality.schemas.js +2 -2
  44. package/dist/data/connectors/openaq-air-quality.schemas.js.map +1 -1
  45. package/dist/data/connectors/youtube-public-content.js +76 -6
  46. package/dist/data/connectors/youtube-public-content.js.map +1 -1
  47. package/dist/data/connectors/youtube-public-content.schemas.d.ts +63 -3
  48. package/dist/data/connectors/youtube-public-content.schemas.js +56 -2
  49. package/dist/data/connectors/youtube-public-content.schemas.js.map +1 -1
  50. package/dist/data/contracts.d.ts +22 -1
  51. package/dist/data/runtime/bounded-http.d.ts +2 -0
  52. package/dist/data/runtime/bounded-http.js +221 -59
  53. package/dist/data/runtime/bounded-http.js.map +1 -1
  54. package/dist/data/runtime/execute.d.ts +2 -0
  55. package/dist/data/runtime/execute.js +82 -60
  56. package/dist/data/runtime/execute.js.map +1 -1
  57. package/dist/data/runtime/http-timing.d.ts +15 -0
  58. package/dist/data/runtime/http-timing.js +59 -0
  59. package/dist/data/runtime/http-timing.js.map +1 -0
  60. package/dist/data/runtime/http-transport.d.ts +1 -0
  61. package/dist/data/runtime/http-transport.js +27 -0
  62. package/dist/data/runtime/http-transport.js.map +1 -0
  63. package/dist/data/schemas/catalog.v1.json +46 -0
  64. package/dist/data/schemas/discovery.v1.json +12 -0
  65. package/dist/data/schemas/error.v1.json +1 -0
  66. package/dist/data/schemas/manifest.v1.json +19 -1
  67. package/dist/research/orchestration.js +341 -28
  68. package/dist/research/orchestration.js.map +1 -1
  69. package/dist/research/setup-command.js +37 -6
  70. package/dist/research/setup-command.js.map +1 -1
  71. package/dist/research/workspace/acquisition-routes.d.ts +1 -1
  72. package/dist/research/workspace/acquisition-routes.js +2 -11
  73. package/dist/research/workspace/acquisition-routes.js.map +1 -1
  74. package/dist/research/workspace/artifact-read-audit.d.ts +16 -0
  75. package/dist/research/workspace/artifact-read-audit.js +176 -0
  76. package/dist/research/workspace/artifact-read-audit.js.map +1 -0
  77. package/dist/research/workspace/artifact-trace.d.ts +12 -0
  78. package/dist/research/workspace/artifact-trace.js +109 -0
  79. package/dist/research/workspace/artifact-trace.js.map +1 -0
  80. package/dist/research/workspace/artifact-view-mcp.d.ts +75 -0
  81. package/dist/research/workspace/artifact-view-mcp.js +214 -0
  82. package/dist/research/workspace/artifact-view-mcp.js.map +1 -0
  83. package/dist/research/workspace/artifact-views.d.ts +100 -0
  84. package/dist/research/workspace/artifact-views.js +395 -0
  85. package/dist/research/workspace/artifact-views.js.map +1 -0
  86. package/dist/research/workspace/audit-bundle.d.ts +4 -0
  87. package/dist/research/workspace/audit-bundle.js +130 -11
  88. package/dist/research/workspace/audit-bundle.js.map +1 -1
  89. package/dist/research/workspace/broker.js +25 -4
  90. package/dist/research/workspace/broker.js.map +1 -1
  91. package/dist/research/workspace/constants.d.ts +1 -0
  92. package/dist/research/workspace/constants.js +1 -0
  93. package/dist/research/workspace/constants.js.map +1 -1
  94. package/dist/research/workspace/content-evidence.d.ts +1 -0
  95. package/dist/research/workspace/content-evidence.js +1 -1
  96. package/dist/research/workspace/content-evidence.js.map +1 -1
  97. package/dist/research/workspace/credentials.js +2 -1
  98. package/dist/research/workspace/credentials.js.map +1 -1
  99. package/dist/research/workspace/data-evidence-adapter.d.ts +71 -0
  100. package/dist/research/workspace/data-evidence-adapter.js +269 -59
  101. package/dist/research/workspace/data-evidence-adapter.js.map +1 -1
  102. package/dist/research/workspace/data-evidence-view.d.ts +58 -0
  103. package/dist/research/workspace/data-evidence-view.js +411 -0
  104. package/dist/research/workspace/data-evidence-view.js.map +1 -0
  105. package/dist/research/workspace/evidence-ledger.js +32 -29
  106. package/dist/research/workspace/evidence-ledger.js.map +1 -1
  107. package/dist/research/workspace/evidence.d.ts +28 -0
  108. package/dist/research/workspace/evidence.js +48 -0
  109. package/dist/research/workspace/evidence.js.map +1 -1
  110. package/dist/research/workspace/executor.d.ts +32 -2
  111. package/dist/research/workspace/executor.js +286 -42
  112. package/dist/research/workspace/executor.js.map +1 -1
  113. package/dist/research/workspace/investigation-attempt.d.ts +159 -0
  114. package/dist/research/workspace/investigation-attempt.js +619 -0
  115. package/dist/research/workspace/investigation-attempt.js.map +1 -0
  116. package/dist/research/workspace/investigation-audit.d.ts +20 -0
  117. package/dist/research/workspace/investigation-audit.js +306 -0
  118. package/dist/research/workspace/investigation-audit.js.map +1 -0
  119. package/dist/research/workspace/investigation-candidate.d.ts +84 -0
  120. package/dist/research/workspace/investigation-candidate.js +156 -0
  121. package/dist/research/workspace/investigation-candidate.js.map +1 -0
  122. package/dist/research/workspace/investigation-certification.d.ts +39 -0
  123. package/dist/research/workspace/investigation-certification.js +152 -0
  124. package/dist/research/workspace/investigation-certification.js.map +1 -0
  125. package/dist/research/workspace/investigation-close.d.ts +47 -0
  126. package/dist/research/workspace/investigation-close.js +153 -0
  127. package/dist/research/workspace/investigation-close.js.map +1 -0
  128. package/dist/research/workspace/investigation-lineage.d.ts +8 -0
  129. package/dist/research/workspace/investigation-lineage.js +10 -0
  130. package/dist/research/workspace/investigation-lineage.js.map +1 -0
  131. package/dist/research/workspace/investigation-observer.d.ts +22 -0
  132. package/dist/research/workspace/investigation-observer.js +122 -0
  133. package/dist/research/workspace/investigation-observer.js.map +1 -0
  134. package/dist/research/workspace/investigation-promotion.d.ts +129 -0
  135. package/dist/research/workspace/investigation-promotion.js +316 -0
  136. package/dist/research/workspace/investigation-promotion.js.map +1 -0
  137. package/dist/research/workspace/investigation-requirements.d.ts +5 -0
  138. package/dist/research/workspace/investigation-requirements.js +32 -0
  139. package/dist/research/workspace/investigation-requirements.js.map +1 -0
  140. package/dist/research/workspace/investigation-resources.d.ts +12 -0
  141. package/dist/research/workspace/investigation-resources.js +78 -0
  142. package/dist/research/workspace/investigation-resources.js.map +1 -0
  143. package/dist/research/workspace/investigation-source-export.d.ts +6 -0
  144. package/dist/research/workspace/investigation-source-export.js +68 -0
  145. package/dist/research/workspace/investigation-source-export.js.map +1 -0
  146. package/dist/research/workspace/investigation-store.d.ts +9 -0
  147. package/dist/research/workspace/investigation-store.js +55 -0
  148. package/dist/research/workspace/investigation-store.js.map +1 -0
  149. package/dist/research/workspace/investigation.d.ts +424 -0
  150. package/dist/research/workspace/investigation.js +716 -0
  151. package/dist/research/workspace/investigation.js.map +1 -0
  152. package/dist/research/workspace/native-process-supervisor.d.ts +1 -0
  153. package/dist/research/workspace/native-process-supervisor.js +97 -0
  154. package/dist/research/workspace/native-process-supervisor.js.map +1 -0
  155. package/dist/research/workspace/native-run.d.ts +150 -0
  156. package/dist/research/workspace/native-run.js +879 -0
  157. package/dist/research/workspace/native-run.js.map +1 -0
  158. package/dist/research/workspace/preflight.d.ts +11 -2
  159. package/dist/research/workspace/preflight.js +28 -20
  160. package/dist/research/workspace/preflight.js.map +1 -1
  161. package/dist/research/workspace/project-authority.js +2 -0
  162. package/dist/research/workspace/project-authority.js.map +1 -1
  163. package/dist/research/workspace/project-budget.d.ts +41 -0
  164. package/dist/research/workspace/project-budget.js +265 -0
  165. package/dist/research/workspace/project-budget.js.map +1 -0
  166. package/dist/research/workspace/project-mutations.d.ts +1 -1
  167. package/dist/research/workspace/project-mutations.js +29 -3
  168. package/dist/research/workspace/project-mutations.js.map +1 -1
  169. package/dist/research/workspace/projects.d.ts +66 -0
  170. package/dist/research/workspace/projects.js +182 -3
  171. package/dist/research/workspace/projects.js.map +1 -1
  172. package/dist/research/workspace/provider-budget.d.ts +3 -0
  173. package/dist/research/workspace/provider-budget.js +45 -0
  174. package/dist/research/workspace/provider-budget.js.map +1 -0
  175. package/dist/research/workspace/provider-state.d.ts +1 -0
  176. package/dist/research/workspace/provider-state.js +20 -0
  177. package/dist/research/workspace/provider-state.js.map +1 -0
  178. package/dist/research/workspace/publication-lineage.d.ts +34 -0
  179. package/dist/research/workspace/publication-lineage.js +165 -0
  180. package/dist/research/workspace/publication-lineage.js.map +1 -0
  181. package/dist/research/workspace/publication-workflow.d.ts +24 -0
  182. package/dist/research/workspace/publication-workflow.js +118 -14
  183. package/dist/research/workspace/publication-workflow.js.map +1 -1
  184. package/dist/research/workspace/request-provenance.d.ts +67 -0
  185. package/dist/research/workspace/request-provenance.js +115 -0
  186. package/dist/research/workspace/request-provenance.js.map +1 -0
  187. package/dist/research/workspace/review-executor.d.ts +6 -1
  188. package/dist/research/workspace/review-executor.js +39 -14
  189. package/dist/research/workspace/review-executor.js.map +1 -1
  190. package/dist/research/workspace/runtime.d.ts +64 -1
  191. package/dist/research/workspace/runtime.js +359 -112
  192. package/dist/research/workspace/runtime.js.map +1 -1
  193. package/dist/research/workspace/sanitization.js +1 -1
  194. package/dist/research/workspace/sanitization.js.map +1 -1
  195. package/dist/research/workspace/schema-compatibility.d.ts +5 -0
  196. package/dist/research/workspace/schema-compatibility.js +55 -0
  197. package/dist/research/workspace/schema-compatibility.js.map +1 -0
  198. package/dist/research/workspace/scientific-amendment.d.ts +103 -0
  199. package/dist/research/workspace/scientific-amendment.js +537 -0
  200. package/dist/research/workspace/scientific-amendment.js.map +1 -0
  201. package/dist/research/workspace/scientific-design.js +8 -17
  202. package/dist/research/workspace/scientific-design.js.map +1 -1
  203. package/dist/research/workspace/scientific-fulfillment-audit.d.ts +21 -0
  204. package/dist/research/workspace/scientific-fulfillment-audit.js +217 -0
  205. package/dist/research/workspace/scientific-fulfillment-audit.js.map +1 -0
  206. package/dist/research/workspace/scientific-fulfillment.d.ts +130 -0
  207. package/dist/research/workspace/scientific-fulfillment.js +553 -0
  208. package/dist/research/workspace/scientific-fulfillment.js.map +1 -0
  209. package/dist/research/workspace/scientific-review-execution.js +236 -75
  210. package/dist/research/workspace/scientific-review-execution.js.map +1 -1
  211. package/dist/research/workspace/scientific-review.d.ts +6 -1
  212. package/dist/research/workspace/scientific-review.js +228 -52
  213. package/dist/research/workspace/scientific-review.js.map +1 -1
  214. package/dist/research/workspace/setup-catalog.js +3 -3
  215. package/dist/research/workspace/setup-release.d.ts +22 -0
  216. package/dist/research/workspace/setup-release.js +426 -0
  217. package/dist/research/workspace/setup-release.js.map +1 -0
  218. package/dist/research/workspace/setup-runtime-integrity.d.ts +2 -0
  219. package/dist/research/workspace/setup-runtime-integrity.js +31 -0
  220. package/dist/research/workspace/setup-runtime-integrity.js.map +1 -0
  221. package/dist/research/workspace/setup-upgrade.d.ts +17 -0
  222. package/dist/research/workspace/setup-upgrade.js +784 -0
  223. package/dist/research/workspace/setup-upgrade.js.map +1 -0
  224. package/dist/research/workspace/setup.d.ts +31 -39
  225. package/dist/research/workspace/setup.js +220 -17
  226. package/dist/research/workspace/setup.js.map +1 -1
  227. package/dist/research/workspace/task-acceptance.d.ts +17 -2
  228. package/dist/research/workspace/task-acceptance.js +106 -10
  229. package/dist/research/workspace/task-acceptance.js.map +1 -1
  230. package/dist/research/workspace/task-audit.d.ts +5 -1
  231. package/dist/research/workspace/task-audit.js +70 -5
  232. package/dist/research/workspace/task-audit.js.map +1 -1
  233. package/dist/research/workspace/task-contract.d.ts +4 -1
  234. package/dist/research/workspace/task-contract.js +26 -5
  235. package/dist/research/workspace/task-contract.js.map +1 -1
  236. package/dist/research/workspace/types.d.ts +50 -3
  237. package/dist/research/workspace/workspace.js +34 -4
  238. package/dist/research/workspace/workspace.js.map +1 -1
  239. package/package.json +2 -1
@@ -1,6 +1,11 @@
1
+ import { loadInvestigationAudit, } from "./investigation-audit.js";
2
+ import { investigatedRequirementHashes } from "./investigation-requirements.js";
3
+ import { requirementAmendmentBinding, } from "./scientific-amendment.js";
1
4
  import { readFile } from "node:fs/promises";
2
5
  import { join } from "node:path";
3
6
  import { CliError } from "../../errors.js";
7
+ import { unrecordedRequestProvenance } from "./request-provenance.js";
8
+ import { assertNativeRunJournalBinding, validateNativeRunRecord, } from "./native-run.js";
4
9
  import { compileTaskAcceptanceContext, taskRecordStatus, taskRequirementRows, validateTaskAcceptanceRecord, validateTaskReview, } from "./task-acceptance.js";
5
10
  import { latestTaskBinding, loadTaskHistory, taskRequirementSha256, validateTaskObject, } from "./task-contract.js";
6
11
  import { canonicalJson, isObject, resolveContained, sha256Text, writeJsonAtomic, } from "./storage.js";
@@ -18,7 +23,7 @@ export async function writeTaskAuditContext(root, project, destination) {
18
23
  };
19
24
  }
20
25
  /** Verify new task relationships using only the bundle's already indexed exact files. */
21
- export async function verifyTaskAudit(bundle, projectId, binding, files) {
26
+ export async function verifyTaskAudit(bundle, projectId, binding, files, amendmentImpact, scientificHistory) {
22
27
  const indexed = new Map(files.map((file) => [file.path, file]));
23
28
  const json = new Map();
24
29
  const read = async (path) => {
@@ -42,16 +47,28 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
42
47
  if (!Array.isArray(proof.events))
43
48
  throw invalid("Task audit requires its journal proof view.");
44
49
  const events = proof.events.filter((event) => event.scope === projectId);
50
+ const investigations = await loadInvestigationAudit(bundle, projectId, files, proof.events, scientificHistory);
45
51
  const currentBinding = latestTaskBinding(events, projectId);
46
52
  if (!currentBinding) {
47
- if (binding || indexed.has("state/task-acceptance.json"))
53
+ if (binding ||
54
+ indexed.has("state/task-acceptance.json") ||
55
+ events.some((event) => event.type.startsWith("project.task.run.")))
48
56
  throw invalid("Task audit has no committed task authority.");
49
57
  return undefined;
50
58
  }
51
59
  if (!binding || currentBinding.contractSha256 !== binding.contractSha256)
52
60
  throw invalid("Audit task binding does not match its committed task.");
53
61
  const objectReader = async (group, hash, hashField) => {
54
- if (!["contracts", "proposals", "acceptance"].includes(group) || !HASH.test(hash))
62
+ if (![
63
+ "contracts",
64
+ "proposals",
65
+ "acceptance",
66
+ "request-sources",
67
+ "runs",
68
+ "investigations",
69
+ "investigation-promotions",
70
+ ].includes(group) ||
71
+ !HASH.test(hash))
55
72
  throw invalid("Task audit object address is invalid.");
56
73
  return validateTaskObject(await read(`project/task/${group}/${hash}.json`), hash, hashField);
57
74
  };
@@ -61,17 +78,23 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
61
78
  const project = await read("state/project.json");
62
79
  if (project.id !== projectId || history.current.questionSha256 !== sha256Text(project.question))
63
80
  throw invalid("Audit task belongs to a different research question.");
81
+ if (project.scientificDesign?.amendmentSha256 && !amendmentImpact)
82
+ throw invalid("Amended task acceptance requires verified design history.");
64
83
  const context = validateTaskObject(await read("state/task-acceptance.json"), binding.contextSha256, "contextSha256");
65
84
  if (context.schemaVersion !== 1 ||
66
85
  context.projectId !== projectId ||
67
86
  context.contractSha256 !== binding.contractSha256 ||
68
87
  context.originalContractSha256 !== binding.originalContractSha256 ||
69
88
  context.originalRequest !== history.original.originalRequest ||
89
+ canonicalJson(context.requestProvenance) !==
90
+ canonicalJson(history.original.requestProvenance ?? unrecordedRequestProvenance()) ||
70
91
  !Array.isArray(context.requirements) ||
71
92
  !Array.isArray(context.results))
72
93
  throw invalid("Audit task view has inconsistent identity.");
73
94
  const contracts = new Map(history.contracts.map((contract) => [contract.contractSha256, contract]));
74
95
  const latest = new Map();
96
+ const runStarts = new Map();
97
+ const nativeRuns = new Map();
75
98
  let activeContract = null;
76
99
  for (const event of events) {
77
100
  const isTaskAuthority = latestTaskBinding([event], projectId);
@@ -81,6 +104,32 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
81
104
  }
82
105
  if (isTaskAuthority)
83
106
  activeContract = String(isTaskAuthority.contractSha256);
107
+ if (event.type === "project.task.run.started") {
108
+ const runId = String(event.payload.runId);
109
+ const contract = activeContract ? contracts.get(activeContract) : null;
110
+ const requirement = contract?.requirements.find((item) => taskRequirementSha256(item) === event.payload.requirementSha256 &&
111
+ item.id === event.payload.requirementId);
112
+ if (runStarts.has(runId) || !requirement || requirement.checkKind !== "computation")
113
+ throw invalid("Native run start is not bound to its active computational requirement.");
114
+ runStarts.set(runId, event);
115
+ continue;
116
+ }
117
+ if (event.type === "project.task.run.completed") {
118
+ const hash = String(event.payload.recordSha256);
119
+ const run = validateNativeRunRecord(await objectReader("runs", hash, "recordSha256"), projectId);
120
+ const started = runStarts.get(run.runId);
121
+ if (!started || nativeRuns.has(hash))
122
+ throw invalid("Native run completion has no unique start.");
123
+ assertNativeRunJournalBinding(run, started, event);
124
+ for (const object of [run.script, run.environmentLock, ...run.inputs, ...run.outputs]) {
125
+ const file = indexed.get(`project/${object.path}`);
126
+ if (!file || file.sha256 !== object.sha256 || file.bytes !== object.bytes)
127
+ throw invalid("Native run program, input, environment or output bytes are absent or inconsistent.");
128
+ }
129
+ await investigations?.verifyRun(run, started);
130
+ nativeRuns.set(hash, run);
131
+ continue;
132
+ }
84
133
  if (event.type !== "project.task.acceptance.recorded")
85
134
  continue;
86
135
  const record = validateTaskAcceptanceRecord(await objectReader("acceptance", String(event.payload.recordSha256), "recordSha256"), projectId);
@@ -93,6 +142,9 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
93
142
  (latest.get(record.requirementSha256)?.recordSha256 ?? null) !== record.previousRecordSha256)
94
143
  throw invalid("Audit check history is not bound to its active requirement or previous record.");
95
144
  latest.set(record.requirementSha256, record);
145
+ if (record.nativeRunSha256 &&
146
+ canonicalJson(nativeRuns.get(record.nativeRunSha256)) !== canonicalJson(record.nativeRun))
147
+ throw invalid("Acceptance does not bind a previously committed exact native run.");
96
148
  for (const result of record.results) {
97
149
  const file = indexed.get(`project/${result.path}`);
98
150
  if (!file || file.sha256 !== result.sha256 || file.bytes !== result.bytes)
@@ -104,6 +156,7 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
104
156
  sources: new Map(),
105
157
  atoms: new Map(),
106
158
  findings: new Map(),
159
+ artifacts: new Map(),
107
160
  };
108
161
  if (references.ready && latest.size) {
109
162
  const acquisition = await read("project/outputs/evidence-snapshot.json");
@@ -113,6 +166,8 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
113
166
  throw invalid("Audit source metadata is not snapshot-bound.");
114
167
  const evidence = await read(`project/${acquisition.evidenceRecord.path}`);
115
168
  const included = new Set(acquisition.sources.map((source) => source.id));
169
+ for (const artifact of acquisition.artifacts)
170
+ references.artifacts.set(artifact.artifactId, artifact.sha256);
116
171
  for (const source of evidence.sources)
117
172
  if (included.has(String(source.id)))
118
173
  references.sources.set(String(source.id), sha256Text(canonicalJson(source)));
@@ -144,12 +199,18 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
144
199
  }
145
200
  const expectedRows = taskRequirementRows(history);
146
201
  const results = new Map();
202
+ const investigated = await investigatedRequirementHashes(projectId, events, objectReader);
147
203
  for (const [hash, row] of expectedRows) {
204
+ if (investigated.has(hash))
205
+ row.requiresInvestigationCertification = true;
148
206
  const record = latest.get(hash);
149
207
  if (!record)
150
208
  continue;
151
209
  row.record = record;
152
- row.status = taskRecordStatus(record, references, project);
210
+ const amendmentBinding = requirementAmendmentBinding(row, amendmentImpact);
211
+ if (amendmentBinding)
212
+ row.requiredDesignAmendmentSha256 = amendmentBinding;
213
+ row.status = taskRecordStatus(record, references, project, amendmentBinding, Boolean(row.requiresInvestigationCertification));
153
214
  for (const result of record.results)
154
215
  results.set(result.sha256, result);
155
216
  }
@@ -173,7 +234,11 @@ export async function verifyTaskAudit(bundle, projectId, binding, files) {
173
234
  throw invalid("Audit review task context is stale.");
174
235
  validateTaskReview(review, context);
175
236
  }
176
- return { ...binding, executionCertified: false };
237
+ return {
238
+ ...binding,
239
+ executionCertified: false,
240
+ ...(investigations ? { investigations: investigations.report() } : {}),
241
+ };
177
242
  }
178
243
  function invalid(message) {
179
244
  return new CliError(message, { code: "RESEARCH_AUDIT_BUNDLE_INVALID", exitCode: 3 });
@@ -1 +1 @@
1
- {"version":3,"file":"task-audit.js","sourceRoot":"","sources":["../../../src/research/workspace/task-audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-audit.js","sourceRoot":"","sources":["../../../src/research/workspace/task-audit.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
+ import { type RequestProvenance } from "./request-provenance.js";
1
2
  import type { JournalEvent, ProjectState } from "./types.js";
2
3
  declare const inputSchemas: {
3
4
  "task-contract": {
4
5
  type: string;
5
6
  additionalProperties: boolean;
6
- required: string[];
7
7
  properties: Record<string, unknown>;
8
+ required: string[];
8
9
  };
9
10
  "task-scope-change": {
10
11
  type: string;
@@ -29,6 +30,7 @@ export interface TaskContract {
29
30
  version: number;
30
31
  questionSha256: string;
31
32
  originalRequest: string;
33
+ requestProvenance?: RequestProvenance;
32
34
  requirements: TaskRequirement[];
33
35
  parentContractSha256: string | null;
34
36
  originalContractSha256: string | null;
@@ -117,6 +119,7 @@ export declare function inheritProjectTask(root: string, source: ProjectState, t
117
119
  } | null>;
118
120
  export declare function taskContext(root: string, projectId: string, knownEvents?: JournalEvent[]): Promise<{
119
121
  originalRequest: string;
122
+ requestProvenance: RequestProvenance;
120
123
  requirements: TaskRequirement[];
121
124
  originalRequirementRefs: {
122
125
  id: string;
@@ -7,6 +7,7 @@ import { appendJournalEvent, readVerifiedJournal } from "./journal.js";
7
7
  import { assertProjectAuthority, projectAuthorityIndex } from "./project-authority.js";
8
8
  import { beginProjectMutation, prepareProjectMutation, projectMutationBinding, settleProjectMutation, } from "./project-mutations.js";
9
9
  import { loadProject } from "./projects.js";
10
+ import { prepareRequestProvenance, requestProvenanceInputSchema, unrecordedRequestProvenance, verifyRequestProvenance, } from "./request-provenance.js";
10
11
  import { configuredResearchSecrets, sanitizeResearchValue } from "./sanitization.js";
11
12
  import { canonicalJson, isObject, pathExists, sha256Text, workspacePaths, writeJsonAtomic, } from "./storage.js";
12
13
  import { withWorkspaceLock } from "./workspace.js";
@@ -35,11 +36,15 @@ const requirement = object({
35
36
  });
36
37
  const requirements = { type: "array", minItems: 1, maxItems: 256, items: requirement };
37
38
  const inputSchemas = {
38
- "task-contract": object({
39
- schemaVersion: { const: 1 },
40
- originalRequest: { type: "string", minLength: 8, maxLength: 64000 },
41
- requirements,
42
- }),
39
+ "task-contract": {
40
+ ...object({
41
+ schemaVersion: { const: 1 },
42
+ originalRequest: { type: "string", minLength: 8 },
43
+ requirements,
44
+ requestProvenance: requestProvenanceInputSchema,
45
+ }),
46
+ required: ["schemaVersion", "originalRequest", "requirements"],
47
+ },
43
48
  "task-scope-change": object({
44
49
  schemaVersion: { const: 1 },
45
50
  reason: { type: "string", minLength: 8, maxLength: 4000 },
@@ -115,6 +120,8 @@ export async function loadTaskHistory(projectId, currentHash, read) {
115
120
  const parent = await readContract(cursor.parentContractSha256);
116
121
  if (cursor.version !== parent.version + 1 ||
117
122
  cursor.originalRequest !== parent.originalRequest ||
123
+ canonicalJson(cursor.requestProvenance ?? unrecordedRequestProvenance()) !==
124
+ canonicalJson(parent.requestProvenance ?? unrecordedRequestProvenance()) ||
118
125
  (cursor.projectId !== parent.projectId &&
119
126
  (cursor.origin?.projectId !== parent.projectId ||
120
127
  cursor.origin.contractSha256 !== parent.contractSha256))) {
@@ -125,6 +132,7 @@ export async function loadTaskHistory(projectId, currentHash, read) {
125
132
  cursor = parent;
126
133
  }
127
134
  const original = contracts.at(-1);
135
+ await verifyRequestProvenance(original.originalRequest, original.requestProvenance, read);
128
136
  if (current.originalContractSha256 !== null &&
129
137
  current.originalContractSha256 !== original.contractSha256)
130
138
  throw invalid("Task original requirement binding drifted.");
@@ -140,6 +148,7 @@ export async function loadTaskHistory(projectId, currentHash, read) {
140
148
  }
141
149
  export async function defineProjectTask(root, projectId, value) {
142
150
  const input = validateInput("task-contract", value);
151
+ const provenance = prepareRequestProvenance(input.originalRequest, input.requestProvenance);
143
152
  return withWorkspaceLock(root, "research.task.define", async () => {
144
153
  const project = await loadProject(root, projectId);
145
154
  const events = await readVerifiedJournal(workspacePaths(root).journal);
@@ -147,6 +156,8 @@ export async function defineProjectTask(root, projectId, value) {
147
156
  const existing = await loadProjectTask(root, projectId, events);
148
157
  if (existing) {
149
158
  if (existing.original.originalRequest !== input.originalRequest ||
159
+ canonicalJson(existing.original.requestProvenance ?? unrecordedRequestProvenance()) !==
160
+ canonicalJson(provenance.binding) ||
150
161
  canonicalJson(existing.original.requirements) !== canonicalJson(input.requirements))
151
162
  throw invalid("Original requirements cannot be overwritten; propose an explicit scope change.");
152
163
  return taskBinding(existing.current, existing.original);
@@ -160,12 +171,16 @@ export async function defineProjectTask(root, projectId, value) {
160
171
  version: 1,
161
172
  questionSha256: sha256Text(project.question),
162
173
  originalRequest: input.originalRequest,
174
+ requestProvenance: provenance.binding,
163
175
  requirements: input.requirements,
164
176
  parentContractSha256: null,
165
177
  originalContractSha256: null,
166
178
  origin: null,
167
179
  authorization: null,
168
180
  });
181
+ if (provenance.sourceObject) {
182
+ await writeTaskObject(root, projectId, "request-sources", provenance.sourceObject.objectSha256, provenance.sourceObject);
183
+ }
169
184
  await writeTaskObject(root, projectId, "contracts", contract.contractSha256, contract);
170
185
  await appendJournalEvent(workspacePaths(root).journal, "project.task.defined", projectId, taskBinding(contract, contract));
171
186
  return taskBinding(contract, contract);
@@ -298,6 +313,11 @@ export async function inheritProjectTask(root, source, target) {
298
313
  const view = await loadProjectTask(root, source.id);
299
314
  if (!view)
300
315
  return null;
316
+ const requestSource = view.original.requestProvenance?.source;
317
+ if (requestSource) {
318
+ const object = await readTaskObject(root, source.id, "request-sources", requestSource.objectSha256, "objectSha256");
319
+ await writeTaskObject(root, target.id, "request-sources", object.objectSha256, object);
320
+ }
301
321
  for (const contract of view.contracts) {
302
322
  await writeTaskObject(root, target.id, "contracts", contract.contractSha256, contract);
303
323
  if (contract.authorization) {
@@ -325,6 +345,7 @@ export async function taskContext(root, projectId, knownEvents) {
325
345
  ? {
326
346
  ...taskBinding(view.current, view.original),
327
347
  originalRequest: view.original.originalRequest,
348
+ requestProvenance: view.original.requestProvenance ?? unrecordedRequestProvenance(),
328
349
  requirements: view.current.requirements,
329
350
  originalRequirementRefs: view.original.requirements.map((item) => ({
330
351
  id: item.id,
@@ -1 +1 @@
1
- {"version":3,"file":"task-contract.js","sourceRoot":"","sources":["../../../src/research/workspace/task-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-contract.js","sourceRoot":"","sources":["../../../src/research/workspace/task-contract.ts"],"names":[],"mappings":"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"}
@@ -259,6 +259,8 @@ export type ScientificGateStatus = "pending" | "prepared" | "passed" | "revision
259
259
  export interface ScientificDesignBinding {
260
260
  schemaVersion: 1;
261
261
  designSha256: string;
262
+ fulfillmentSha256?: string | null;
263
+ amendmentSha256?: string | null;
262
264
  objectLocator: string;
263
265
  centralStudyKind: string;
264
266
  producer: {
@@ -274,6 +276,35 @@ export interface ScientificDesignBinding {
274
276
  reviewerSessionSha256: string | null;
275
277
  }>;
276
278
  }
279
+ export interface ProjectBudgetAuthorization {
280
+ revision: number;
281
+ maxCostUsd: number;
282
+ authorizedAt: string;
283
+ originProjectId: string;
284
+ providerOperationMaxCostUsd: Record<string, number>;
285
+ }
286
+ export interface ProjectBudgetEntry {
287
+ id: string;
288
+ sourceProjectId: string;
289
+ kind: "native-stage" | "review" | "provider-operation" | "investigation";
290
+ reference: string;
291
+ authorizationRevision: number;
292
+ maxCostUsd: number;
293
+ status: "reserved" | "settled";
294
+ accountedCostUsd: number | null;
295
+ settlementBasis: "reported-usage" | "allocated-upper-bound" | "owner-estimate" | null;
296
+ resolutionReason?: string;
297
+ createdAt: string;
298
+ settledAt: string | null;
299
+ }
300
+ export interface ProjectBudgetState {
301
+ schemaVersion: 1;
302
+ authorization: ProjectBudgetAuthorization;
303
+ openingEstimateUsd: number;
304
+ openingBasis: "new-project" | "legacy-accounting" | "recovery-exposure";
305
+ openingSourceProjectId: string | null;
306
+ entries: ProjectBudgetEntry[];
307
+ }
277
308
  export interface ProjectUsage {
278
309
  tokens: number;
279
310
  inputTokens: number;
@@ -314,6 +345,7 @@ export interface ProjectState {
314
345
  createdAt: string;
315
346
  updatedAt: string;
316
347
  budgetConfirmedAt: string | null;
348
+ budget?: ProjectBudgetState;
317
349
  inputs: ProjectInput[];
318
350
  evidenceRequirements: ProjectEvidenceRequirements;
319
351
  publicationPolicy?: ResearchPolicyBinding | null;
@@ -368,21 +400,22 @@ export interface ExecutionResult {
368
400
  isolation?: ReviewIsolationFingerprint | undefined;
369
401
  reviewAttestation?: ReviewExecutionAttestation | undefined;
370
402
  telemetry?: AgentExecutionTelemetry | undefined;
403
+ artifactReads?: import("./artifact-views.js").ArtifactReadReceipt[];
371
404
  }
372
405
  export interface ReviewIsolationFingerprint {
373
406
  provider: "sandbox-exec" | "bubblewrap";
374
407
  policySha256: string;
375
408
  readScopes: Array<"platform-runtime" | "agent-runtime" | "private-capsule">;
376
409
  writeScopes: ["private-capsule"];
377
- networkPolicy: "reviewer-provider-only";
378
- toolPolicy: "none";
410
+ networkPolicy: "reviewer-provider-only" | "reviewer-provider-and-local-artifacts";
411
+ toolPolicy: "none" | "packet-read";
379
412
  }
380
413
  export interface ReviewExecutionAttestation {
381
414
  schemaVersion: 1;
382
415
  protocolVersion: 1;
383
416
  transport: "sandbox-bridge";
384
417
  isolationProvider: ReviewIsolationFingerprint["provider"];
385
- toolPolicy: "none";
418
+ toolPolicy: "none" | "packet-read";
386
419
  workspaceId: string;
387
420
  requestId: string;
388
421
  requestSha256: string;
@@ -396,9 +429,12 @@ export interface ReviewExecutionAttestation {
396
429
  signature: string;
397
430
  }
398
431
  export interface AgentExecutionTelemetry {
432
+ /** Sanitized CLI self-report, not an independently verified upstream identity. */
433
+ reportedModel?: string | null;
399
434
  eventCounts: Record<string, number>;
400
435
  itemCounts: Record<string, number>;
401
436
  toolCalls: number;
437
+ packetReadViolations?: number;
402
438
  providerTurns: number | null;
403
439
  reasoningOutputTokens: number;
404
440
  providerErrors: string[];
@@ -414,6 +450,17 @@ export interface AgentRuntimeFingerprint {
414
450
  binaryVersion: string;
415
451
  platform: NodeJS.Platform;
416
452
  architecture: string;
453
+ /** Absent on legacy records; configured routing is not upstream attestation. */
454
+ providerRouting?: AgentProviderRouting;
455
+ }
456
+ export interface AgentProviderRouting {
457
+ schemaVersion: 1;
458
+ configurationSha256: string;
459
+ endpointOrigin: string | null;
460
+ endpointSource: "process-environment" | "claude-settings-env" | "runtime-default";
461
+ modelMappingSources: Record<string, "process-environment" | "claude-settings-env">;
462
+ identityVerification: "unverified";
463
+ scope: "configured-routing-only";
417
464
  }
418
465
  export type FailureKind = "configuration" | "authentication" | "rate-limit" | "server" | "structured-output" | "budget" | "transient" | "deterministic";
419
466
  export interface RunRecord {