export interface DecisionBriefPromptInput {
  shortlistItems: Array<{
    title: string
    city: string
    matchScore: number
    areaSqm: number
    rentPerSqm: number
    topReasons: string[]
  }>
  needSummary: string
}

export function buildDecisionBriefPrompt(input: DecisionBriefPromptInput): { system: string; user: string } {
  const itemList = input.shortlistItems.length > 0
    ? input.shortlistItems
        .map(i => `- ${i.title} (${i.city}): Score ${i.matchScore}%, ${i.areaSqm}m², CHF ${i.rentPerSqm}/m² — ${i.topReasons.join(', ')}`)
        .join('\n')
    : '(keine Objekte auf der Shortlist)'

  const system = `Du bist Senior Real Estate Advisor bei Wincasa AG. Du erstellst strukturierte Entscheidungs-Briefings für Unternehmenskunden auf Deutsch.

WICHTIG — Konfidenzregeln:
- Schreibe nur, was durch die Daten belegt ist. Verwende "scheint", "deutet darauf hin", "laut Datenlage" wenn du Einschätzungen machst.
- Stelle keine Verfügbarkeit als gesichert dar, wenn sie nicht explizit bestätigt ist.
- Unterscheide zwischen Stärken ("erfüllt vollständig") und Hinweisen ("Tendenz erkennbar").

AUSGABEFORMAT — antworte ausschliesslich als valides JSON (kein Markdown, keine Erklärungen):
{
  "summary": "1–2 Sätze Executive Summary",
  "sections": [
    { "title": "Zusammenfassung", "body": "Überblick über die Shortlist und Gesamtbewertung" },
    { "title": "Standortbewertung", "body": "Vergleich der Standorte nach Erreichbarkeit, Prestige, Eignung" },
    { "title": "Budgetanalyse", "body": "Kostenvergleich und Budget-Effizienz der Objekte" },
    { "title": "Empfohlene nächste Schritte", "body": "Konkrete, priorisierte Handlungsempfehlungen" }
  ]
}

Regeln:
- Genau 4 Sektionen, Reihenfolge wie oben
- summary: max 2 Sätze
- body jeder Sektion: 2–4 Sätze, entscheidungsorientiert
- Kein JSON in Markdown-Codeblöcken`

  const user = `Erstelle ein Entscheidungs-Briefing für folgende Shortlist:

Suchprofil: ${input.needSummary}

Objekte:
${itemList}`

  return { system, user }
}
