Merge nucleic/plucky-north-vole-sdna into dev
This commit is contained in:
@@ -306,6 +306,16 @@ def _append(path: Path, states: Sequence[dict[str, Any]]) -> None:
|
||||
os.fsync(handle.fileno())
|
||||
|
||||
|
||||
def record_from_decision(candidate: Candidate, decision: dict[str, Any]) -> dict[str, Any]:
|
||||
"""Construct the exact seven-field student record from a teacher decision."""
|
||||
record = {field: decision[field] for field in SOURCE_FIELDS - {"prompt"}}
|
||||
record["prompt"] = candidate.prompt
|
||||
if not decision["recoverableFromFirst"]:
|
||||
record["slice"] = "vague-eval"
|
||||
validate_source_record(record, candidate.id)
|
||||
return record
|
||||
|
||||
|
||||
def run(args: argparse.Namespace) -> dict[str, int]:
|
||||
lines = base.source_lines(args.input)
|
||||
source = candidates(lines)
|
||||
@@ -335,10 +345,7 @@ def run(args: argparse.Namespace) -> dict[str, int]:
|
||||
newly: list[dict[str, Any]] = []
|
||||
for candidate, decision in decisions:
|
||||
if decision["keep"]:
|
||||
record = {field: decision[field] for field in SOURCE_FIELDS}
|
||||
if not decision["recoverableFromFirst"]:
|
||||
record["slice"] = "vague-eval"
|
||||
validate_source_record(record, candidate.id)
|
||||
record = record_from_decision(candidate, decision)
|
||||
newly.append(_state(candidate, status="labeled", record=record, reason=None, recoverable=decision["recoverableFromFirst"]))
|
||||
else:
|
||||
newly.append(_state(candidate, status="rejected", record=None, reason=f"semantic_junk:{decision['junkReason'].strip()}", recoverable=None))
|
||||
|
||||
Reference in New Issue
Block a user