Criterion Synthesis
Purpose
Combine instruction goals, scientific practice, and task-data feasibility into an executable rubric. This implements phi_syn(G_i, K_i, P_i) from AutoSciRub.
The rubric is the contract for execution, verification, and revision.
All .autoscirub/ paths below refer to the state directory resolved by the controller. When invoked alone, use the user’s override, then AUTOSCIRUB_STATE_DIR, then project config state_dir, then .autoscirub/.
Inputs
Read:
.autoscirub/rubric_skeleton.json
.autoscirub/literature_grounding.json
.autoscirub/task_data_profile.json
- optional task config/profile
Output
Write .autoscirub/executable_rubric.json:
{
"schema_version": "1.0",
"goals": [
{
"goal_id": "G1",
"title": "...",
"requirement": "..."
}
],
"criteria": [
{
"criterion_id": "C1",
"goal_ids": ["G1"],
"requirement": "Concrete requirement to satisfy.",
"data_sources": ["relative/path or dataset field"],
"required_analysis": ["experiment, computation, comparison, proof step, or diagnostic"],
"metrics": ["metric, statistic, threshold, or qualitative check"],
"comparisons": ["baseline, control, condition, region, time, model, or ablation"],
"expected_artifacts": [
{
"type": "figure | table | number | file | code | text_analysis",
"name": "semantic artifact name",
"expected_path": "optional relative path",
"must_show": "what the artifact must demonstrate"
}
],
"satisfaction_condition": "Observable condition for marking the criterion satisfied.",
"priority": "high | medium | low",
"provenance": {
"instruction": ["goal or instruction evidence"],
"literature": ["source id or summarized guidance"],
"data_profile": ["supporting files or feasibility notes"]
}
}
],
"claims_to_avoid": ["unsupported claim pattern"]
}
Procedure
- Preserve every instruction-derived goal. If required inputs are missing, retain the goal and record the blocker; do not silently remove the user’s requirement.
- Select feasible analyses that best satisfy each goal using literature-grounded practice.
- Convert each requirement into a criterion with observable evidence and a satisfaction condition.
- Link each criterion to goals, data sources, artifacts, and provenance.
- Record unsupported or risky claims that the execution agent should avoid.
Rules
- Prefer criteria that can be checked against code, results, figures, tables, files, or report text.
- Use direct task data when available; only allow surrogate analyses when the data profile justifies them.
- Avoid generic criteria such as "analyze thoroughly" or "discuss results".
- Do not introduce requirements for unavailable labels, tools, or private data. If the user explicitly requires an unavailable input, retain that requirement as blocked and explain what is needed.
- Define satisfaction by correctness of the method and evidence, not agreement with a desired result. Negative or inconclusive findings can satisfy an appropriately framed research question.
- Keep the rubric compact enough to execute, without a fixed minimum number of criteria.
1---2name: criterion-synthesis3description: Synthesize a task-specific executable scientific rubric from an instruction-derived skeleton, literature grounding, and task-data profile. Use in AutoSciRub when Codex needs criteria with linked goals, data sources, required analyses, metrics, comparisons, expected artifacts, provenance, and satisfaction conditions.4---56# Criterion Synthesis78## Purpose910Combine instruction goals, scientific practice, and task-data feasibility into an executable rubric. This implements `phi_syn(G_i, K_i, P_i)` from AutoSciRub.1112The rubric is the contract for execution, verification, and revision.1314All `.autoscirub/` paths below refer to the state directory resolved by the controller. When invoked alone, use the user’s override, then `AUTOSCIRUB_STATE_DIR`, then project config `state_dir`, then `.autoscirub/`.1516## Inputs1718Read:19201. `.autoscirub/rubric_skeleton.json`212. `.autoscirub/literature_grounding.json`223. `.autoscirub/task_data_profile.json`234. optional task config/profile2425## Output2627Write `.autoscirub/executable_rubric.json`:2829```json30{31 "schema_version": "1.0",32 "goals": [33 {34 "goal_id": "G1",35 "title": "...",36 "requirement": "..."37 }38 ],39 "criteria": [40 {41 "criterion_id": "C1",42 "goal_ids": ["G1"],43 "requirement": "Concrete requirement to satisfy.",44 "data_sources": ["relative/path or dataset field"],45 "required_analysis": ["experiment, computation, comparison, proof step, or diagnostic"],46 "metrics": ["metric, statistic, threshold, or qualitative check"],47 "comparisons": ["baseline, control, condition, region, time, model, or ablation"],48 "expected_artifacts": [49 {50 "type": "figure | table | number | file | code | text_analysis",51 "name": "semantic artifact name",52 "expected_path": "optional relative path",53 "must_show": "what the artifact must demonstrate"54 }55 ],56 "satisfaction_condition": "Observable condition for marking the criterion satisfied.",57 "priority": "high | medium | low",58 "provenance": {59 "instruction": ["goal or instruction evidence"],60 "literature": ["source id or summarized guidance"],61 "data_profile": ["supporting files or feasibility notes"]62 }63 }64 ],65 "claims_to_avoid": ["unsupported claim pattern"]66}67```6869## Procedure70711. Preserve every instruction-derived goal. If required inputs are missing, retain the goal and record the blocker; do not silently remove the user’s requirement.722. Select feasible analyses that best satisfy each goal using literature-grounded practice.733. Convert each requirement into a criterion with observable evidence and a satisfaction condition.744. Link each criterion to goals, data sources, artifacts, and provenance.755. Record unsupported or risky claims that the execution agent should avoid.7677## Rules7879- Prefer criteria that can be checked against code, results, figures, tables, files, or report text.80- Use direct task data when available; only allow surrogate analyses when the data profile justifies them.81- Avoid generic criteria such as "analyze thoroughly" or "discuss results".82- Do not introduce requirements for unavailable labels, tools, or private data. If the user explicitly requires an unavailable input, retain that requirement as blocked and explain what is needed.83- Define satisfaction by correctness of the method and evidence, not agreement with a desired result. Negative or inconclusive findings can satisfy an appropriately framed research question.84- Keep the rubric compact enough to execute, without a fixed minimum number of criteria.