Skip to content

[P0][Media Intelligence] Build explainable MediaDecision and MediaRequirement planning across destinations #180

Description

@Ankit6149

Parent epic

#151

Product outcome

SignalFlow decides whether a ContentPiece needs media at all and, if so, recommends the correct form instead of defaulting every story to an AI image or every destination to the same asset.

Valid outcomes include:

NONE
EXISTING_SINGLE_IMAGE
EDITED_IMAGE
GENERATED_IMAGE
COMPOSITE_IMAGE
DIAGRAM
INFOGRAPHIC
CAROUSEL
PRODUCT_SCREENSHOT
PRODUCT_DEMO_VIDEO
UPLOADED_FOOTAGE_EDIT
REEL_OR_SHORT
LONGER_VIDEO
THUMBNAIL
AUDIO_OR_VOICEOVER

Canonical docs

  • docs/MEDIA_INTELLIGENCE_AND_CREATIVE_PRODUCTION.md
  • docs/CREATIVE_MEDIA_DOMAIN_CONTRACTS.md
  • docs/CONTENT_INTELLIGENCE_ARCHITECTURE.md

Inputs

Decisioning should consider:

  • explicit user request;
  • story purpose;
  • sequential explanation value;
  • available real evidence;
  • visual potential;
  • destination culture/capability;
  • authenticity impact;
  • asset roles/use permissions;
  • privacy and rights;
  • cost/latency;
  • opportunity freshness;
  • reuse potential;
  • previous narrative/visual repetition.

Rule

NONE is a successful decision.

SignalFlow must be able to say:

This post is stronger as text only.

or:

LinkedIn benefits from a carousel; X only needs one diagram; YouTube should be deferred.

Scope

Example

Topic: private-hybrid inference

LinkedIn
  carousel          0.91
  architecture card 0.78
  text only         0.64

Instagram
  short reel        0.88
  carousel          0.75

YouTube
  defer             0.82

The product should expose concise reasons, not hidden chain-of-thought.

Acceptance criteria

  • A ContentPiece can receive a persisted MediaDecision with NONE as a valid choice.
  • Recommendations are explainable using user-visible factors/evidence.
  • Explicit user media request/override wins unless blocked by safety/privacy/rights.
  • Different destinations can intentionally receive different media or no variant.
  • Existing suitable assets are considered before generation.
  • Asset role/use restrictions are evaluated before recommending public use.
  • Cost/latency affects recommendation without weakening privacy.
  • MediaRequirement records what is needed without hard-coding the production provider/method.
  • User can choose another format or Something else without losing the ContentPiece.
  • Recommendation changes preserve revision/provenance rather than rewriting history.

Non-goals

  • no image generation implementation;
  • no carousel renderer;
  • no video editor;
  • no engagement-maximization mandate.

Definition of done

Close only when at least one real ContentPiece receives a useful, policy-aware, destination-specific media recommendation, the user can override it, and downstream production consumes a structured MediaRequirement rather than a prose-only model response.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions