Source Activation Work OrderRead-only source readiness checklist

Make one source upgrade provable.

A read-only implementation checklist for one available source family. It tells operators what would need to become true before the source can strengthen KELLY's public proof window.

read onlychecklist, not executionno feed writesno secret values

Priority

highFRED

Current lab coverage

44%Markets Lab

Proof impact

Market and macro feeds strengthen forecast cones, base rates, settlement timing, and calibration history.

Activation checklist

1Bind or confirm FRED in the primary KELLY runtime, not in Glass Lab.
2Refresh the source feed catalog and verify Markets Lab reports the family as wired.
3Run a public proof-window refresh so the source appears without exposing secret values.
4Generate at least one observation, forecast, or closure artifact that cites the source family.
5Confirm the sector proof score improves or explain why the source is only background context.

Acceptance checks

checkfred is present in Source Feed Catalog for markets.
checkmarkets Source Coverage Heatmap cell changes from available to wired.
checkNo secret values are recorded in the page, API packet, logs, or exported JSON.
checkPublic users still cannot add, modify, or trigger source configuration from this route.
checkAt least one proof surface links the source to a visible evidence or replay artifact.

Risk notes

watchDo not treat an API key existing in Railway or Neon as proof that the feed is used.
watchDo not claim stronger forecasting until the feed appears in a proof receipt, closure, or replayable trail.
watchProvider quota, license, or key limits should be tracked outside this public page.
watchHigh-priority feeds should be activated before adding more visual-only lab surfaces.

Boundary receipt

{
  "readOnly": true,
  "publicUserWriteAllowed": false,
  "workOrderIsChecklistNotExecution": true,
  "workOrderDoesNotConfigureSecretsOrFeeds": true,
  "activationMustHappenThroughApprovedRuntimeIntake": true,
  "glassLabOnlyDisplaysProofReadiness": true
}