Skills › Scientific Agent Skills › hypothesis-generation › hypothesis_record_template.json
hypothesis_record_template.json
331 lines · skills/hypothesis-generation/assets/hypothesis_record_template.json at 5f2bc03
1{
2 "schema_version": "2.0",
3 "project_id": "HG-SYN-001",
4 "status": "draft",
5 "updated_on": "2026-07-23",
6 "human_owner": "Accountable human investigator",
7 "observation": {
8 "statement": "In a synthetic demonstration dataset, units measured after condition X had a different mean value of outcome Y than units measured after the comparator condition.",
9 "provenance": "Synthetic demonstration only; no human, animal, clinical, proprietary, or security-sensitive data.",
10 "source_ids": [
11 "SRC-SYN-001"
12 ],
13 "uncertainties": [
14 "The synthetic pattern could reflect the generating process, selection, measurement, or random variation."
15 ]
16 },
17 "research_question": {
18 "statement": "In the synthetic target system, what is the effect of assigning condition X rather than the comparator on outcome Y after one measurement interval?",
19 "framework": "PICO",
20 "question_type": "causal",
21 "population_or_system": "Synthetic independent units meeting the declared eligibility rule",
22 "intervention_or_exposure": "Assignment to synthetic condition X",
23 "comparator": "Assignment to the synthetic comparator condition",
24 "outcome": "Validated synthetic outcome Y",
25 "timeframe": "One prespecified measurement interval"
26 },
27 "hypotheses": [
28 {
29 "hypothesis_id": "H1",
30 "statement": "Condition X changes outcome Y through the proposed synthetic process M.",
31 "mechanism": "Condition X changes intermediate M before outcome Y is measured.",
32 "status": "candidate",
33 "source_ids": [
34 "SRC-SYN-001"
35 ],
36 "assumptions": [
37 "The synthetic assignment and measurement procedures operate as declared."
38 ],
39 "boundary_conditions": [
40 "The candidate is limited to the declared synthetic units and one-interval horizon."
41 ],
42 "uncertainties": [
43 "The intermediate may be a marker rather than a mediator."
44 ],
45 "prediction_ids": [
46 "P1"
47 ],
48 "rival_hypothesis_ids": [
49 "H2"
50 ]
51 },
52 {
53 "hypothesis_id": "H2",
54 "statement": "The observed difference in outcome Y is produced by a synthetic measurement drift rather than process M.",
55 "mechanism": "A time-linked offset changes the recorded outcome without changing the target construct.",
56 "status": "candidate",
57 "source_ids": [
58 "SRC-SYN-001"
59 ],
60 "assumptions": [
61 "The synthetic measurement offset is not removed by calibration."
62 ],
63 "boundary_conditions": [
64 "The candidate applies only to measurements from the affected synthetic acquisition period."
65 ],
66 "uncertainties": [
67 "The size and stability of any offset are unknown."
68 ],
69 "prediction_ids": [
70 "P2"
71 ],
72 "rival_hypothesis_ids": [
73 "H1"
74 ]
75 }
76 ],
77 "causal_estimands": [
78 {
79 "estimand_id": "E1",
80 "linked_hypothesis_ids": [
81 "H1"
82 ],
83 "population": "Synthetic eligible units",
84 "intervention_or_exposure": "Assignment to condition X",
85 "comparator": "Assignment to comparator",
86 "outcome": "Outcome Y measured with method M-OUTCOME",
87 "time_horizon": "One measurement interval",
88 "population_summary": "Difference in population mean outcome Y",
89 "intercurrent_event_strategy": "Not applicable in the synthetic demonstration",
90 "identification_assumptions": [
91 "Random assignment, no interference, consistent treatment versions, and valid outcome measurement."
92 ]
93 }
94 ],
95 "predictions": [
96 {
97 "prediction_id": "P1",
98 "hypothesis_id": "H1",
99 "statement": "Under matched acquisition conditions, assignment to X will precede a change in intermediate M and then outcome Y.",
100 "observable": "Ordered changes in intermediate M and outcome Y",
101 "conditions": "Synthetic units are randomly assigned and measured with calibrated instruments.",
102 "expected_pattern": "Intermediate M changes before outcome Y in X but not comparator units.",
103 "falsifier": "Outcome Y changes without the prespecified change in intermediate M under a successful manipulation and valid measurements.",
104 "rival_hypothesis_ids": [
105 "H2"
106 ],
107 "measurement_ids": [
108 "M-INTERMEDIATE",
109 "M-OUTCOME"
110 ],
111 "analysis_ids": [
112 "A1"
113 ]
114 },
115 {
116 "prediction_id": "P2",
117 "hypothesis_id": "H2",
118 "statement": "A reference quantity measured in the same acquisition period will show a similar offset even though process M cannot affect it.",
119 "observable": "Offset in the negative-control reference quantity",
120 "conditions": "The same acquisition and calibration workflow is used.",
121 "expected_pattern": "The reference quantity and outcome Y shift together by acquisition period.",
122 "falsifier": "The reference quantity remains stable while outcome Y changes reproducibly across independently calibrated periods.",
123 "rival_hypothesis_ids": [
124 "H1"
125 ],
126 "measurement_ids": [
127 "M-NEGATIVE-CONTROL",
128 "M-OUTCOME"
129 ],
130 "analysis_ids": [
131 "A2"
132 ]
133 }
134 ],
135 "alternative_explanations": [
136 {
137 "alternative_id": "ALT1",
138 "statement": "Synthetic selection into the analyzed set creates the observed difference.",
139 "linked_hypothesis_ids": [
140 "H1",
141 "H2"
142 ],
143 "risk_types": [
144 "selection_bias"
145 ],
146 "discriminating_prediction_ids": [
147 "P1",
148 "P2"
149 ]
150 }
151 ],
152 "null_hypotheses": [
153 {
154 "null_id": "N1",
155 "statement": "The population mean of outcome Y is equal under assignment to X and comparator at the prespecified horizon.",
156 "linked_prediction_ids": [
157 "P1"
158 ],
159 "rejection_or_compatibility_rule": "Use the prespecified interval estimate and decision rule in analysis A1; do not equate failure to reject with equivalence."
160 },
161 {
162 "null_id": "N2",
163 "statement": "The synthetic negative-control reference mean is equal across acquisition periods.",
164 "linked_prediction_ids": [
165 "P2"
166 ],
167 "rejection_or_compatibility_rule": "Use analysis A2 as a bias diagnostic; failure to reject does not prove absence of drift when precision or reference sensitivity is insufficient."
168 }
169 ],
170 "negative_controls": [
171 {
172 "control_id": "NC1",
173 "control_type": "negative_outcome",
174 "rationale": "The reference quantity cannot be changed by process M but shares the synthetic acquisition workflow.",
175 "expected_result": "No difference by assigned condition after accounting for acquisition period.",
176 "failure_implication": "A non-null control result raises concern about acquisition, selection, or analysis bias.",
177 "linked_prediction_ids": [
178 "P2"
179 ]
180 }
181 ],
182 "operationalizations": [
183 {
184 "measurement_id": "M-INTERMEDIATE",
185 "construct": "Synthetic intermediate M",
186 "variable": "m_value",
187 "role": "mediator",
188 "operational_definition": "Calibrated continuous synthetic measurement at the prespecified early time.",
189 "instrument_or_method": "Deterministic synthetic measurement procedure",
190 "unit": "synthetic units",
191 "timing": "Early prespecified time",
192 "population_or_system": "Synthetic eligible units",
193 "validity_evidence_source_ids": [
194 "SRC-SYN-001"
195 ],
196 "reliability_plan": "Repeat the deterministic check on an independent synthetic batch.",
197 "missingness_plan": "Report missingness by assignment and use the prespecified sensitivity analysis.",
198 "blinding_or_masking": "Synthetic analyst label is masked until validation completes.",
199 "threshold_rationale": "No threshold; analyze the continuous measurement."
200 },
201 {
202 "measurement_id": "M-OUTCOME",
203 "construct": "Synthetic outcome Y",
204 "variable": "y_value",
205 "role": "outcome",
206 "operational_definition": "Calibrated continuous synthetic outcome at one interval.",
207 "instrument_or_method": "Deterministic synthetic measurement procedure",
208 "unit": "synthetic units",
209 "timing": "One prespecified measurement interval",
210 "population_or_system": "Synthetic eligible units",
211 "validity_evidence_source_ids": [
212 "SRC-SYN-001"
213 ],
214 "reliability_plan": "Verify calibration and repeatability before unmasking assignment.",
215 "missingness_plan": "Report reasons and analyze under the prespecified primary and sensitivity assumptions.",
216 "blinding_or_masking": "Outcome acquisition and validation are masked to assignment.",
217 "threshold_rationale": "No threshold; estimate the continuous mean contrast."
218 },
219 {
220 "measurement_id": "M-NEGATIVE-CONTROL",
221 "construct": "Synthetic reference quantity",
222 "variable": "reference_value",
223 "role": "negative_control",
224 "operational_definition": "Stable synthetic reference measured in the same acquisition workflow.",
225 "instrument_or_method": "Deterministic synthetic reference procedure",
226 "unit": "synthetic reference units",
227 "timing": "Concurrent with outcome Y",
228 "population_or_system": "Synthetic acquisition batches",
229 "validity_evidence_source_ids": [
230 "SRC-SYN-001"
231 ],
232 "reliability_plan": "Check repeatability across synthetic batches.",
233 "missingness_plan": "Treat a missing reference as an acquisition-quality failure.",
234 "blinding_or_masking": "Reference processing is independent of assignment labels.",
235 "threshold_rationale": "Use the prespecified calibration tolerance."
236 }
237 ],
238 "analysis_plan": {
239 "analyses": [
240 {
241 "analysis_id": "A1",
242 "prediction_ids": [
243 "P1"
244 ],
245 "estimand_ids": [
246 "E1"
247 ],
248 "analysis_population": "All randomized synthetic eligible units under the declared estimand strategy",
249 "method": "Estimate the prespecified mean contrast with its uncertainty interval.",
250 "effect_or_summary_measure": "Difference in population means",
251 "uncertainty_method": "Prespecified interval estimate under the declared independent-unit assumptions",
252 "missing_data_plan": "Primary declared assumption plus a bounded sensitivity analysis",
253 "multiplicity_plan": "A1 is the sole confirmatory contrast; all additional contrasts are exploratory.",
254 "sensitivity_analyses": [
255 "Repeat under the prespecified alternative missingness assumption."
256 ],
257 "decision_rule": "Interpret compatibility with predicted patterns and rivals; do not select a hypothesis automatically.",
258 "exploratory_or_confirmatory": "confirmatory"
259 },
260 {
261 "analysis_id": "A2",
262 "prediction_ids": [
263 "P2"
264 ],
265 "estimand_ids": [],
266 "analysis_population": "All synthetic acquisition batches with valid reference measurements",
267 "method": "Estimate reference shifts by acquisition period and assigned condition.",
268 "effect_or_summary_measure": "Difference in reference means",
269 "uncertainty_method": "Prespecified interval estimate",
270 "missing_data_plan": "Report and exclude acquisition failures according to the locked quality rule.",
271 "multiplicity_plan": "Negative-control analysis is interpreted as a bias diagnostic, not a candidate-selection score.",
272 "sensitivity_analyses": [
273 "Repeat after excluding the prespecified failed-calibration batch category."
274 ],
275 "decision_rule": "A non-null reference shift triggers investigation and limits causal interpretation.",
276 "exploratory_or_confirmatory": "confirmatory"
277 }
278 ],
279 "harking_control": "Freeze this record before viewing the target synthetic outcomes and label later candidates or analyses exploratory.",
280 "deviation_reporting": "Preserve the original plan and log each deviation with date, rationale, decision owner, result-awareness status, and interpretive impact."
281 },
282 "evidence": {
283 "ledger_path": "local-evidence-ledger.csv",
284 "source_ids": [
285 "SRC-SYN-001"
286 ],
287 "search_boundary_id": "SEARCH-SYN-001",
288 "evidence_limitations": [
289 "The bundled row is synthetic and demonstrates structure only."
290 ]
291 },
292 "risk_register": {
293 "confounding": [
294 "Synthetic assignment failure or implementation differences could act as common causes."
295 ],
296 "selection_bias": [
297 "Post-assignment exclusion could make analyzed groups non-comparable."
298 ],
299 "collider_bias": [
300 "Restricting analysis to a jointly caused quality indicator could open bias."
301 ],
302 "reverse_causation": [
303 "Temporal ordering is built into the synthetic design but must be verified."
304 ],
305 "measurement_bias": [
306 "Acquisition-period drift could change recorded outcome Y."
307 ],
308 "other": [
309 "Random variation and model misspecification remain possible."
310 ]
311 },
312 "ethics_and_feasibility": {
313 "human_subjects_gate": "not_applicable",
314 "animal_research_gate": "not_applicable",
315 "biosafety_gate": "not_applicable",
316 "dual_use_gate": "not_applicable",
317 "regulatory_gate": "not_applicable",
318 "data_governance_gate": "approved",
319 "feasibility_status": "feasible_for_planning",
320 "required_reviews": [],
321 "unresolved_blocks": []
322 },
323 "ai_use": {
324 "used": false,
325 "sensitive_or_unpublished_data_sent_externally": false,
326 "local_policy_checked": true,
327 "citation_verification_required": true,
328 "human_accountable": true,
329 "diversity_mitigation": "Generate independent rivals before any authorized AI-assisted expansion and retain human-origin candidates."
330 }
331}