Skip to content

decision: provenance, alt-text, and render-manifest contract for Kris website assets #417

Description

@WalksWithASwagger

Summary

Ratify a provenance, alt-text, and render-manifest contract for any generated asset destined for Kris's public websites (kriskrug.co and Futureproof), before any website-asset pipeline is built.

Context

  • Roadmap phase: Phase 1 / Phase 2 — asset quality and accessibility.
  • Relevant files: a new docs/WEBSITE-ASSET-CONTRACT.md, plus the existing provenance surfaces lib/batch.py (_img_record builds run.json), lib/registry.py (AssetEntry), and the renderers under lib/renderers/.
  • Current behavior: run.json records style, model, prompt, aspect_ratio, cost_estimate, provider, and reference_images, and AssetEntry adds source_url / source_run / approval_status. But image records capture no seed (seed is only recorded for video/keyframe jobs), and there is no alt-text: every alt= in the renderers (lib/renderers/viewer.py, library.py, media_suite.py) is an empty attribute. There is no accessible-caption pipeline.
  • Desired behavior: maintainers approve a single contract that any website-bound asset must satisfy before publication.

Acceptance Criteria

  • The contract defines the required provenance fields for a website-bound asset: style, model, prompt, seed, source_run, and approval_status.
  • Alt-text is mandatory for every website-bound generated asset, with a defined storage location (registry field or manifest).
  • A render-manifest schema is defined that binds an emitted website asset to its provenance record.
  • The contract states that real photography is preferred and that any generated art is explicitly labelled as generated.
  • No provider spend, image generation, or asset publication is part of ratifying this contract.

Tests / Evals

  • Once ratified, a machine-readable schema fixture validates in the normal test suite using synthetic records only. No generation here.

Notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    contentContent generation / prompt workdocumentationImprovements or additions to documentationneeds-humanAgentic automation stopped for human judgment.type:taskImplementation task

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions