1 Commits

Author SHA1 Message Date
oleks 182ca54bc5 Merge PR #1: make integration-preflight step 0 of every rollout (oleks/cluster#271)
Read the full diff rather than trusting the "docs" framing — this session already had a PR
labelled docs(...) that shipped three breaking behavior guards. This one is genuinely
documentation: 7 files, +150/-13, no executable code.

What it changes:
- integration-preflight becomes a mandatory step 0, with a new non-skippable procedure step
  6: one real authenticated request against every external dependency FROM THE RUNTIME
  CONTEXT, with the status code pasted into the plan.
- onboard-host, integrate-service and finish-migration each gain an explicit entry gate, so
  it is a checklist item rather than a judgment call. onboard-host previously said "run it
  first IF any existing drift could interact" — that conditional is exactly how it got
  skipped twice.
- Two new failure classes: F12 (external dependency never smoke-tested from the runtime
  context) and F13 (preflight treated as a judgment call), written in the catalog's existing
  style with real issue refs.
- Output becomes TWO tables (layers + dependencies); either left blank means the preflight
  did not run.
- plugin.json 1.0.0 -> 1.0.1, required for the plugin cache to pick the change up.

The worked example is the right one: oleks/armer#171, where the token was byte-identical and
correctly injected, 127.0.0.1 returned 200 and the ZeroTier IP returned 401. Nothing about
the credential was wrong — the source address was. That distinction is the whole lesson.

NOT closing oleks/cluster#271 on this merge: the repo has no CI (verified two ways — find
returns nothing, and Woodpecker GET /repos/lookup 404s), and the remaining acceptance items
need a human. Docs efficacy cannot be proven by a lint gate; the real test is whether the
next rollout actually invokes it.

Refs oleks/cluster#271, oleks/armer#171, oleks/cluster#260
2026-07-21 16:19:38 +03:00

Diff Content Not Available