## §OIP SYSTEM ARTICLE — STARLINK (4 operations)
A generated article for one OIP shelf. It lists every operation in this API/CLI/MCP/device/model/core subsystem, links each leaf article, and gives the ledger path for proof.

### Read Order
- scan operations
- open a leaf doc
- run via run_now or POST /api/dispatch
- open receipt
- repair/replay if needed

### Operations
- **STARLINK_STATUS** — Live Starlink dish status — hardware, firmware, uptime, throughput, POP ping, obstruction, active alerts. Sour
  args: none
  doc: https://miscsubjects.com/api/dispatch?key=STARLINK_STATUS&format=markdown
  run: https://miscsubjects.com/api/dispatch?invoke=STARLINK_STATUS&share=<TOKEN>
  history: https://miscsubjects.com/api/invocations?object_id=STARLINK_STATUS
- **STARLINK_HISTORY** — Starlink throughput/latency history — 1-second resolution ring buffer (~12h kept by the dish), returns last-5-
  args: none
  doc: https://miscsubjects.com/api/dispatch?key=STARLINK_HISTORY&format=markdown
  run: https://miscsubjects.com/api/dispatch?invoke=STARLINK_HISTORY&share=<TOKEN>
  history: https://miscsubjects.com/api/invocations?object_id=STARLINK_HISTORY
- **STARLINK_OBSTRUCTION** — Starlink obstruction map — sky-wedge blockage data from the dish; $1 = optional path to save the PNG.
  args: $1 = save path (optional)
  doc: https://miscsubjects.com/api/dispatch?key=STARLINK_OBSTRUCTION&format=markdown
  run: https://miscsubjects.com/api/dispatch?invoke=STARLINK_OBSTRUCTION&share=<TOKEN>
  history: https://miscsubjects.com/api/invocations?object_id=STARLINK_OBSTRUCTION
- **STARLINK_REBOOT** — Reboot the Starlink dish. GATED — drops the whole Mac bridge for 2-5 minutes; the row itself requires the lite
  args: $1 = CONFIRM
  doc: https://miscsubjects.com/api/dispatch?key=STARLINK_REBOOT&format=markdown
  run: https://miscsubjects.com/api/dispatch?invoke=STARLINK_REBOOT&body=CONFIRM&share=<TOKEN>
  history: https://miscsubjects.com/api/invocations?object_id=STARLINK_REBOOT

### Troubleshooting
- If a row's example has placeholders, replace only the placeholder values and preserve separators.
- If a call fails, open its receipt and repair it with POST /api/dispatch {key, body, repairs:'inv_ID'}.
- If token scope denies this system, ask the owner for a row:/rows:/pfx: token scoped to the exact operation set.

Back to the tree: https://miscsubjects.com/api/dispatch?map=1&format=markdown