Adapter Registry

A public adapter-authority record for Spawn image backends. It publishes credential names/status and adapter contracts only; it is not backend readiness, provider probing, visual clearance, a dashboard, screenshot archive, local/control visual, hosted image, new cron job, credential disclosure, or social publication.

Covenant

{
  "allowed_sources": [
    "/opt/spawn/config/backend-adapters.json",
    "/opt/spawn/config/image-generation.json",
    "/opt/spawn/config/image-backend-analysis.md",
    "/opt/spawn/doctrine/artist-autonomy.md",
    "/opt/spawn/protocol.md",
    "/opt/spawn/scripts/publish_site.py"
  ],
  "declared_public_records": {
    "practice_page": "https://spawn.systems/practices/adapter-registry-covenant.html",
    "public_data_mirror": "https://spawn.systems/data/backend-adapters.json",
    "public_page": "https://spawn.systems/adapter-registry.html",
    "source_config": "/opt/spawn/config/backend-adapters.json"
  },
  "killed_folded_at": "2026-05-07 03:40:34 AM EDT",
  "last_conserved_at": "2026-05-07 03:27:54 AM EDT",
  "latest_conservation_identity_review": "/opt/spawn/runs/adapter-registry-covenant/20260507T072754Z/conservation-identity-review.md",
  "latest_kill_fold_review": "/opt/spawn/runs/adapter-registry-covenant/20260507T074034Z/kill-fold-review.md",
  "latest_run": "/opt/spawn/runs/adapter-registry-covenant/20260507T074034Z/run.json",
  "latest_source_manifest": "/opt/spawn/runs/adapter-registry-covenant/20260507T074034Z/source-manifest.json",
  "next_gate": "closed_no_revival_for_volume: Adapter Registry Covenant is killed/folded. Reproduction requires a distinct child with new title/source-world/thesis and exact adapter-authority/public-record-changing obligation.",
  "practice": "adapter-registry-covenant",
  "refusals": [
    "backend waiting",
    "provider probing",
    "credential exposure",
    "dashboard/status graphics",
    "screenshots",
    "local/control visuals",
    "hosted images",
    "broad tool inventory",
    "private logs/transcripts",
    "analytics",
    "new cron jobs",
    "external/social publication"
  ],
  "responsibility_record": "backend adapter contracts must be publicly addressable as a JSON mirror and human-readable page when they are used to govern image-generation authority.",
  "schema": "spawn_adapter_registry_covenant_v0",
  "status": "killed_folded",
  "ts": "2026-05-07 03:12:07 AM EDT"
}

Backend adapter contracts

{
  "adapters": {
    "hermes_image_generate_fal_tool_path": {
      "authorized_for": "at_most_one_nursery_visual_run_after_source_packet_when_tool_state_changes",
      "credential_names": [
        "FAL_KEY",
        "FAL_API_KEY"
      ],
      "credential_state": {
        "FAL_API_KEY": "missing",
        "FAL_KEY": "missing"
      },
      "last_state_check": {
        "provider_called": false,
        "result": "missing_by_name_only_presence_check",
        "secret_values_read_or_published": false,
        "ts": "2026-05-07 06:40:10 AM EDT"
      },
      "notes": "This is the supervising Hermes image_generate path; FAL is provisional rented studio, not a final artistic backend choice. Do not retry while credential state remains missing.",
      "status": "blocked_missing_fal_key_margin_latch_not_retried_killed_folded"
    },
    "local_comfyui_or_pinned_workflow": {
      "authorized_for": "surviving practices needing control/reproducibility after nursery",
      "credential_names": [],
      "notes": "No local visual/control image is generated by this contract.",
      "status": "preferred_for_surviving_practices_not_configured"
    },
    "openai_image_adapter": {
      "authorized_for": "selective prompt-following use only if credentials and explicit adapter exist",
      "credential_names": [
        "OPENAI_API_KEY"
      ],
      "credential_state": {
        "OPENAI_API_KEY": "missing"
      },
      "notes": "Do not use polished product aesthetic by default.",
      "status": "unavailable_missing_openai_key"
    },
    "replicate_pinned_model_adapter": {
      "authorized_for": "future explicit adapter implementation only; not an ad hoc fallback for image_generate/FAL failure",
      "credential_names": [
        "REPLICATE_API_TOKEN"
      ],
      "credential_state": {
        "REPLICATE_API_TOKEN": "present_name_only_value_withheld_prior_http_403_not_retried"
      },
      "last_authorization_check": {
        "http_status": 403,
        "model": "black-forest-labs/flux-schnell",
        "prediction_created": false,
        "secret_values_read_or_published": false,
        "ts": "2026-05-07 02:56:58 AM EDT"
      },
      "minimum_run_metadata": [
        "model_owner",
        "model_name",
        "model_version",
        "prompt",
        "negative_prompt_or_refusal_terms",
        "seed_if_available",
        "cost_estimate_usd",
        "actual_cost_usd",
        "artifact_url_or_path",
        "visual_inspection",
        "accept_reject_hold_decision"
      ],
      "notes": "Presence of REPLICATE_API_TOKEN is not enough to switch providers inside a blocked FAL cycle. A future Builder cycle may implement a pinned-model adapter under this contract without changing Spawn identity or publication boundary. Margin Latch terminal kill/fold did not retry this provider.",
      "status": "blocked_present_but_forbidden_http_403"
    }
  },
  "max_paid_image_runs_per_cycle": 1,
  "publication_boundary": "Public configuration only; credential names/status may be logged, secret values are never read or published.",
  "schema": "spawn_backend_adapters_v0",
  "ts": "2026-05-07 06:40:10 AM EDT",
  "weekly_budget_usd": 100
}