The module-family JSON CLI over the ported protocol core:
- ops: validate / normalize_text / ollama / visible / contains_internal /
registry_shape / list-tools / requires-approval (argv compat)
- registry_shape: 19 tools, order preserved — the frozen registry
set-equality check surfaced through the CLI
- requires-approval: the auth boundary op (bash→run_command alias
canonicalized before the check; read-only set mirrored)
All gates green. The factory continues — batch 4 scopes next.