Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: rust-best-practices-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for rust-best-practices-agent.
format: json
required_variables:
Expand Down Expand Up @@ -41,7 +41,7 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"findings_scope_locked": {% if carry_forward_findings_json != "[]" %}true{% else %}false{% endif %},
"notes": {{ notes ~ (" SCOPE LOCK: this is a fix-round verification dispatch. Report a disposition (fixed | open | regressed) for each id in carry_forward_findings ONLY. Do not add any new finding to the `findings` array beyond those ids, even if you notice something real and unrelated -- put anything else observed under `notes`, not `findings`." if carry_forward_findings_json != "[]" else "") }}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: rust-qa-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for rust-qa-agent.
format: json
required_variables:
Expand Down Expand Up @@ -50,6 +50,6 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"notes": {{ "Checklist: scan for infallible Result<T, E> shapes; check for Ok(x) as the sole return path in Result-returning functions; for deletion sprints, search the whole workspace for every removed legacy construct family named in the sprint doc, not just touched files." ~ (" " ~ notes if notes else "") }}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: rust-service-hardening-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for rust-service-hardening-agent.
format: json
required_variables:
Expand Down Expand Up @@ -42,6 +42,6 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"notes": {{ notes }}
}
4 changes: 2 additions & 2 deletions .claude/skills/codex-orchestration/arch-qa-assignment.json.j2
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: arch-qa-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for arch-qa.
format: json
required_variables:
Expand Down Expand Up @@ -45,6 +45,6 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"notes": {{ notes }}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: flaky-test-qa-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for flaky-test-qa.
format: json
required_variables:
Expand Down Expand Up @@ -33,6 +33,6 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"notes": {{ notes }}
}
4 changes: 2 additions & 2 deletions .claude/skills/codex-orchestration/req-qa-assignment.json.j2
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: req-qa-assignment
version: 1.1.0
version: 1.1.1
description: Render a fenced-JSON assignment for req-qa.
format: json
required_variables:
Expand Down Expand Up @@ -46,6 +46,6 @@ defaults:
"round_limit": {% if round_limit %}true{% else %}false{% endif %},
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"notes": {{ notes }}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: ruthless-boundary-qa-assignment
version: 1.0.0
version: 1.0.1
description: Render a fenced-JSON assignment for ruthless-boundary-qa.
format: json
required_variables:
Expand Down Expand Up @@ -33,7 +33,7 @@ defaults:
"changed_files": [{% for file in changed_files %}{{ file }}{% if not loop.last %}, {% endif %}{% endfor %}],
"duplicate_sweep_symbols": [{% for symbol in duplicate_sweep_symbols %}{{ symbol }}{% if not loop.last %}, {% endif %}{% endfor %}],
"triage_records": [{% for record in triage_records %}{{ record }}{% if not loop.last %}, {% endif %}{% endfor %}],
"carry_forward_findings": {{ carry_forward_findings_json }},
"carry_forward_findings": {{ carry_forward_findings_json | safe }},
"findings_scope_locked": {% if carry_forward_findings_json != "[]" %}true{% else %}false{% endif %},
"notes": {{ notes ~ (" SCOPE LOCK: this is a fix-round verification dispatch. Report a disposition (fixed | open | regressed) for each id in carry_forward_findings ONLY. Do not add any new finding to the `findings` array beyond those ids, even if you notice something real and unrelated -- put anything else observed under `notes`, not `findings`." if carry_forward_findings_json != "[]" else "") }}
}
Original file line number Diff line number Diff line change
Expand Up @@ -267,3 +267,21 @@ def test_missing_sample_var_fails_composition(self) -> None:
else:
with self.assertRaisesRegex(Exception, "undefined|Undefined"):
self.compose(template, bad_vars)

def test_carry_forward_findings_render_as_json_arrays(self) -> None:
expected = [{"id": "F-1", "severity": "important"}]
for template_name in self.AGENT_CONTRACTS:
template = next(
directory / template_name
for directory in self.TEMPLATE_DIRS
if (directory / template_name).is_file()
)
sample_name = template.name.removesuffix(".j2")
sample = template.parent / "vars" / sample_name
variables = json.loads(sample.read_text(encoding="utf-8"))
variables["carry_forward_findings_json"] = json.dumps(expected)
with self.subTest(template=template.name), tempfile.TemporaryDirectory() as directory:
vars_path = Path(directory) / "vars.json"
vars_path.write_text(json.dumps(variables), encoding="utf-8")
payload = json.loads(self.compose(template, vars_path))
self.assertEqual(payload["carry_forward_findings"], expected)
Loading