Files
temp/features/fixtures/m6/automation_profiles.json
CoreRasurae 007af498b8 refactor(autonomy): rename automation profile task flags to spec names
Renamed all 11 task-type confidence threshold fields in AutomationProfile
from phase-transition semantics to spec-defined task-type semantics.
Updated all 8 built-in profiles, CLI formatting, YAML schema, services,
and all Behave/Robot tests referencing the old field names.

Post-review fixes:
- Fixed 24 stale old field names in M6 fixture files
  (automation_profiles.json, autonomy_guardrails.json)
- Added model_validator(mode='before') to detect legacy field names
  and raise actionable ValueError with rename mapping
- Added semantic bridge comments in PlanLifecycleService mapping
  task-type thresholds to phase-transition gates
- Added threshold_field to structured log messages for observability
- Restored categorised CLI automation-profile show output to match
  spec (Phase Transitions / Decision Automation / Self-Repair /
  Execution Controls) instead of flat list
- Added missing access_network field to spec show output examples
  (Rich, Plain, JSON, YAML variants)
- Aligned ADR-017 profile fields table to all 11 fields with
  descriptions matching spec Automatable Tasks table
- Aligned automation_profiles.md threshold descriptions with spec
- Added spec section references in phase_reversion.md, error_recovery.md,
  and plan_execute.md for field naming context
- Extended repository roundtrip test to assert all 11 threshold fields
- Fixed benchmark _make_profile() passing safety fields as top-level
  kwargs instead of via SafetyProfile sub-model (incompatible with
  extra="forbid")
- Aligned CLI JSON/YAML output structure for automation-profile show
  with the specification grouped format (phase_transitions,
  decision_automation, self_repair, execution_controls)
- Moved safety boolean fields into the Execution Controls section
  of Rich output per spec examples
- Reverted auto profile description to "Fully automatic except apply"
  per specification (line 16703, line 28406)
- Improved bridge comments in test steps with semantic context for
  threshold-to-gate mappings

ISSUES CLOSED: #902
2026-03-30 13:18:07 +01:00

57 lines
1.7 KiB
JSON

{
"description": "Automation profile configurations for M6 acceptance tests",
"fixtures": [
{
"name": "builtin_profiles",
"expected_names": ["manual", "review", "supervised", "cautious", "trusted", "auto", "ci", "full-auto"],
"manual_thresholds": {
"decompose_task": 1.0,
"create_tool": 1.0,
"select_tool": 1.0,
"require_sandbox": true,
"require_checkpoints": true,
"allow_unsafe_tools": false
},
"full_auto_thresholds": {
"decompose_task": 0.0,
"create_tool": 0.0,
"select_tool": 0.0,
"require_sandbox": false,
"require_checkpoints": false,
"allow_unsafe_tools": true
}
},
{
"name": "custom_profile",
"config": {
"name": "acme/strict",
"description": "Strict profile for ACME Corp",
"schema_version": "1.0",
"decompose_task": 1.0,
"create_tool": 1.0,
"select_tool": 1.0,
"edit_code": 1.0,
"execute_command": 1.0,
"create_file": 1.0,
"delete_content": 1.0,
"access_network": 1.0,
"install_dependency": 1.0,
"modify_config": 1.0,
"approve_plan": 1.0,
"require_sandbox": true,
"require_checkpoints": true,
"allow_unsafe_tools": false
}
},
{
"name": "profile_resolution_precedence",
"cases": [
{"plan": "ci", "action": "auto", "project": "manual", "expected": "ci"},
{"plan": null, "action": "auto", "project": "manual", "expected": "auto"},
{"plan": null, "action": null, "project": "manual", "expected": "manual"},
{"plan": null, "action": null, "project": null, "expected": "manual"}
]
}
]
}