# .ontoref/ontology/manifest.ncl — Project: {{ project_name }}
# Declares content assets (branding, diagrams, docs) and mode templates.
# Run: nickel export --import-path <ontoref>/ontology .ontoref/ontology/manifest.ncl
#
# content_assets — typed content declarations consumed by describe guides,
#   sync diff --level full, and the content verification mode step.
#
# AssetKind:    'Logo | 'Icon | 'Diagram | 'Screenshot | 'Video | 'Document
# TemplateKind: 'ModeStep | 'AgentPrompt | 'PublicationCard | 'ContentSection
#
# publish_to — list of target slugs where this asset should be deployed.

let m = import "ontology/defaults/manifest.ncl" in

m.make_manifest {
  project   = "{{ project_name }}",
  repo_kind = 'Library,

  # Required by ProjectManifest contract (no default). Replace this default
  # consumer with the project's actual consumers as they emerge.
  consumption_modes = [
    m.make_consumption_mode {
      consumer    = 'Developer,
      needs       = ['OntologyExport],
      audit_level = 'Standard,
      description = "Default scaffold consumer — replace with actual consumer types as they emerge.",
    },
  ],

  content_assets = [
    # m.make_asset {
    #   id          = "logo-horizontal",
    #   kind        = 'Logo,
    #   source_path = "assets/branding/logo-h.svg",
    #   variants    = ["assets/branding/logo-h-dark.svg"],
    #   description = "Primary horizontal logo.",
    # },
  ],

  templates = [
    # m.make_template {
    #   id          = "agent-system-prompt",
    #   kind        = 'AgentPrompt,
    #   source_path = ".ontoref/reflection/templates/agent-prompt.md",
    #   parameters  = ["project_name", "actor"],
    #   description = "Base system prompt for agents operating in this project.",
    # },
  ],
}
