The `plan correct` command previously only accepted a decision_id as its
positional argument. When M3 acceptance tests pass a plan_id instead, the
command fails because the plan_id is not a valid decision.
The positional parameter is now named `identifier` and tries plan_id
resolution first via `PlanLifecycleService.get_plan()`. When the
identifier is a valid plan, the root decision (parent_decision_id is
None) is automatically selected as the correction target. If the
identifier is not a plan, the original decision_id behavior is preserved
for backward compatibility.
ISSUES CLOSED: #969