This is the Phase 1 capture path for low-latency, high-signal RL data.
From ~/code/seq:
f rl-capture-on
f agent-qa-capture-onThis forces local spool mode (SEQ_CH_MODE=file) so user-path latency is not tied to remote network writes.
Or from ~/code/flow (single command):
f rl-capture-on-allFrom ~/code/flow:
export FLOW_RL_SIGNALS=true
export FLOW_RL_SIGNALS_PATH=out/logs/flow_rl_signals.jsonl
export FLOW_RL_SIGNALS_SEQ_MIRROR=true
export FLOW_RL_SIGNALS_SEQ_PATH=~/.config/flow/rl/seq_mem.jsonl
export FLOW_RL_SIGNAL_TEXT=snippet
export FLOW_RL_SIGNAL_MAX_CHARS=4000f ai everruns ... now emits structured runtime/tool events into the JSONL file.
f ai:* task execution via ai-taskd now also emits linked router events:
flow.router.decision.v1flow.router.override.v1(when a suggested task differs from chosen task)flow.router.outcome.v1
These are mirrored directly into seq_mem.jsonl when FLOW_RL_SIGNALS_SEQ_MIRROR=true.
To capture override events, set suggestion context on the command that triggers f ai:*:
export FLOW_ROUTER_SUGGESTED_TASK=ai:flow/noop
export FLOW_ROUTER_OVERRIDE_REASON=manual_user_choice
f ai:flow/dev-checkFrom ~/code/flow:
f rl-signals-tail
f rl-signals-summary --last 2000From ~/code/seq:
f rl-signal-tail
f rl-signal-summaryeverruns.run_startedeverruns.runtime_event(includes stage + duration)everruns.tool_call_result(includes seq op, success/failure, error class)everruns.qa_pair(prompt/response supervision pair)everruns.run_completedoreverruns.run_failedagent.qa.pairinseq_mem.jsonl(Claude/Codex Q/A pairs from background ingest)flow.router.decision.v1inseq_mem.jsonlflow.router.override.v1inseq_mem.jsonl(when suggestion context is provided)flow.router.outcome.v1inseq_mem.jsonl
From ~/code/flow:
f rl-dataset-build
f rl-dataset-validateOutputs:
~/repos/laude-institute/harbor/data/flow_runtime/<timestamp>/events.jsonl~/repos/laude-institute/harbor/data/flow_runtime_prepared/<timestamp>/train.jsonl~/repos/laude-institute/harbor/data/flow_runtime_prepared/<timestamp>/val.jsonl~/repos/laude-institute/harbor/data/flow_runtime_prepared/<timestamp>/test.jsonl~/repos/laude-institute/harbor/data/flow_runtime_prepared/<timestamp>/validation_report.json
Latest rolling copies are also written under .../flow_runtime/latest and .../flow_runtime_prepared/latest.
If capture is currently Q/A-only (assistant_sft_example rows), validation automatically relaxes event-diversity gates and still enforces row-count and basic quality checks.
Keep this file as raw trajectory telemetry; downstream pipelines should join with:
- myflow commit/session exports
- flow anon telemetry snapshots
- reward labels / canary outcomes
Do not train directly on raw logs without redaction + quality filtering.