Enriches the PLAN_APPLIED domain event with SEC7 audit-logging statistics
per docs/specification.md §Audit Logging (issue #716).
Changes:
- PlanLifecycleService.complete_apply() now accepts optional keyword
arguments: files_changed, lines_added, lines_removed, resources_modified,
apply_duration_seconds (all default to 0). These are included in the
PLAN_APPLIED event details dict alongside the existing action_name,
phase, and project_names fields.
- PlanApplyService.apply_with_validation_gate() computes changeset
statistics from SpecChangeSet.summary() (files changed, resources
modified, create/delete counts as lines added/removed) and measures
apply duration, then passes all statistics to complete_apply() so
the emitted PLAN_APPLIED event carries rich audit context.
- New BDD feature features/plan_applied_event_enrichment.feature with
13 scenarios verifying both the lifecycle service enrichment and the
apply service statistics propagation.
Closes#716