Files
audita/docs/internal/prompts.md

1.6 KiB

Audita Prompt Registry

Scope

This document describes embedded prompt assets, prompt metadata, and rendering behavior.

Registry Ownership

Prompt registry lives in internal/prompts and embeds assets under internal/prompts/assets/**.

Registered prompt IDs:

  • modules.glossary.proposal
  • modules.homophones.proposal
  • modules.spoken_word.proposal
  • modules.grammar.proposal
  • validators.spoken_form_plausibility
  • validators.meaning_reversal_review
  • validators.editorial_review
  • validators.grammar_review
  • validators.spoken_word_review

Metadata Model

Each prompt has metadata:

  • prompt_id
  • prompt_version
  • prompt_source
  • embedded_path
  • sha256

Current source/version values:

  • prompt_source = builtin
  • prompt_version = v1

Rendering

prompts.RenderUserSystem(promptID, data) renders system/user templates.

Template behavior:

  • uses Go text/template;
  • missingkey=error is enabled;
  • output is trimmed.

A shared hardening fragment is embedded once and referenced by prompt templates.

Prompt Context Inputs

Shared prompt payload helpers:

  • transcript section JSON (internal/framework/promptcontext/MarshalTranscriptSectionJSON)
  • transcript description block (TranscriptDescriptionBlock)

Modules and LLM validators provide typed data maps to render prompt assets.

Diagnostics Integration

Prompt metadata is attached to proposal/validator diagnostics request metadata using Metadata.DiagnosticsMap().

Key Tests

  • internal/prompts/registry_test.go
  • internal/framework/promptcontext/*_test.go
  • module and validator prompt builder tests