The ratchet — every mistake becomes a rule — step 8 of 9
Write audit_rules(rules) that walks the ratchet log and returns a
dict separating rules to keep from rules to retire:
{"kept": [<rule strings to keep>], "remove": [<rule strings to retire>]}
A rule is marked for REMOVAL if model_native_in_year <= 2025
(meaning the failure mode is handled natively by modern post-trained
models or by current SDK defaults).
Preserve INPUT ORDER in each list. Use only rule strings (not full
dicts) in the output.
Three rules run for you. Expected output:
kept: ['no force push to main', 'run tsc before declaring done']
remove: ['always specify temperature explicitly', 'always think step by step']
Write audit_rules(rules) that walks the ratchet log and returns a
dict separating rules to keep from rules to retire:
{"kept": [<rule strings to keep>], "remove": [<rule strings to retire>]}
A rule is marked for REMOVAL if model_native_in_year <= 2025
(meaning the failure mode is handled natively by modern post-trained
models or by current SDK defaults).
Preserve INPUT ORDER in each list. Use only rule strings (not full
dicts) in the output.
Three rules run for you. Expected output:
kept: ['no force push to main', 'run tsc before declaring done']
remove: ['always specify temperature explicitly', 'always think step by step']
this step needs the editor
on desktop today; in the app (coming soon). save your spot and we'll bring you back here when you're ready.