# Marine Vessel Monitoring Config

This folder stores channel-scoped runtime policy for `marine_vessel_monitoring`.

## Important Files

- `channels/cctv_<id>/active.json`: active feature pointer for the channel.
- `channels/cctv_<id>/channel_policy/*.json`: saved debug/monitoring mode policy.
- `channels/cctv_<id>/.trash/channel_policy/*.json`: archived channel policy files.
- `channels/cctv_<id>/active_history.jsonl`: activation/deactivation history.
- `channels/cctv_<id>/roi/`: preferred ROI location. Legacy ROI under `/data/marine_vessel_monitoring/roi/cctv_<id>/` is still supported as fallback/copy source.

## Common Workflow

1. Create, manually open, or select a CCTV channel in Marine ROI Studio.
2. Save and activate ROI if needed.
3. Choose a channel policy mode.
4. Save the policy.
5. Activate the policy. Running channels receive a `/live/start` `trigger=update` request; non-running channels keep file changes for the next run.

## Runtime Modes

- `debug`: keeps union debug artifacts for branch comparison.
- `monitoring_observable`: live events use branch pass; artifacts split `events/emitted/` and `events/cooldown_suppressed/`.
- `monitoring_parity`: artifacts store only live emitted events, for browser thumbnail parity checks.
- `monitoring_no_live_with_artifacts`: live DB/relay/browser thumbnail persistence is disabled; local artifacts remain available.

## Branch Rule

Outside-ROI approach events in monitoring modes use `linear_bbox_containment_guard` as the final branch.
