Files
siloqy/prod/docs/VIOLET_OA_DEV_STATUS.md

69 lines
2.3 KiB
Markdown
Raw Normal View History

# VIOLET OA Dev Status
Date: 2026-06-16
## Current position
The master Violet plan is [VIOLET_DEV_SPEC_AND_PLAN.md](VIOLET_DEV_SPEC_AND_PLAN.md).
Current stage is effectively V3.6-ish:
- V3.4 is done engine-side.
- V3.4b is still the remaining launcher-side gap.
- V3.5 is already scoped as a parallelizable L3 wrapper.
- V4 is still blocked on keys plus V3.4/3.5 completion.
## What I built
I took a standalone slice of V3.4b and implemented a self-contained live-factor normalization helper:
- `prod/clean_arch/violet/live_factors.py`
- `prod/clean_arch/violet/test_violet_live_factors.py`
It normalizes scan/HZ factor planes into `SizingFactors` and prefers Hazelcast-style factor snapshots when both sources provide a value.
Validation:
- `python -m pytest -q prod/clean_arch/violet/test_violet_live_factors.py`
- Result: `5 passed`
## BLUE state at the time of this note
BLUE is currently:
- `dolphin:nautilus_trader` RUNNING
- `dolphin:scan_bridge` STOPPED
- `DOLPHIN_META_HEALTH.latest.status` = `GREEN`
- `DOLPHIN_META_HEALTH.latest.rm_meta` = `0.873`
- `DOLPHIN_SAFETY.latest.posture` = `HIBERNATE`
- `DOLPHIN_STATE_BLUE.engine_snapshot.posture` = `HIBERNATE`
- `DOLPHIN_STATE_BLUE.latest_nautilus.posture` = `HIBERNATE`
- `DOLPHIN_STATE_BLUE.open_positions` = `[]`
- `DOLPHIN_CONTROL_PLANE.blue_runtime_commands` = `[]`
- `DOLPHIN_STATE_BLUE.capital_checkpoint.capital` = `71591.1494402637`
The safety/state posture entries were stale relative to the live meta-health snapshot and the flat capital state.
## Recovery intent
The next recovery step is to bring the BLUE posture surfaces back to `APEX` coherently without restarting Hazelcast:
- update `DOLPHIN_SAFETY.latest.posture`
- update `DOLPHIN_STATE_BLUE.engine_snapshot.posture`
- update `DOLPHIN_STATE_BLUE.latest_nautilus.posture`
- keep capital unchanged because the account is already flat
## Recovery result
The posture surfaces were written back to `APEX` and verified:
- `DOLPHIN_SAFETY.latest.posture` = `APEX`
- `DOLPHIN_STATE_BLUE.engine_snapshot.posture` = `APEX`
- `DOLPHIN_STATE_BLUE.latest_nautilus.posture` = `APEX`
- `DOLPHIN_STATE_BLUE.capital_checkpoint.capital` remained `71591.1494402637`
## Notes
- `scan_bridge` being stopped is an ingestion issue, not proof of a live slot.
- I did not touch `PROGREEN`.
- I did not restart Hazelcast.