`LIVIA_PROFIL_UND_PROMPT.md` hält Livia als Exposé Master fest, wie sie vor Runde 8 war: Personalblatt, Aufgabenkatalog, Kanäle und Systeme, das Exposé-Dossier mit elf Bereichen und neun Pflichtfeldern, die `missingFacts`-Regel der Textmaschine — dazu ein System-Prompt, mit dem sich diese Fassung ausserhalb des Repositories rekonstruieren lässt. `archive/livia/` ergänzt die Beschreibung um die Wiederherstellung: die 23 Dateien der Exposé-Funktion als wörtliche Kopie im Original-Pfadlayout sowie ein Manifest jeder Stelle, an der Livia in geteilten Dateien verdrahtet war. Beides ist mit Runde 8 nicht überholt, sondern der Referenzstand: die Exposé-Funktion wurde nicht entfernt, sondern nachgeordnet. Das Manifest beschreibt allerdings den Rückbau eines vollständigen Entfernens und damit ein Szenario, das so nicht eingetreten ist. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
/**
|
|
* Property On — Leads, die bei Livia zur Exposé-Erstellung liegen.
|
|
*
|
|
* Ein Lead entsteht auf zwei Wegen: Nora erkennt ein Nachfragesignal und ein
|
|
* Bewirtschafter leitet es mit den passenden Objekten an Livia weiter, oder er
|
|
* erfasst ihn selbst. Der Typ bildet deshalb nur ab, was Livia zum Arbeiten
|
|
* braucht — Interessent, Kontaktdaten, Raum und Objektempfehlung.
|
|
*/
|
|
|
|
export const ExposeLeadStatus = {
|
|
ACTIVE: 'ACTIVE',
|
|
ARCHIVED: 'ARCHIVED',
|
|
} as const
|
|
export type ExposeLeadStatus = typeof ExposeLeadStatus[keyof typeof ExposeLeadStatus]
|
|
|
|
export interface ExposeLead {
|
|
id: string
|
|
/** Eingangsdatum, ISO. */
|
|
receivedAt: string
|
|
/** Möglicher Interessent — Firma oder Person, wie sie belegt ist. */
|
|
prospect: string
|
|
/** Belegbare Kontaktangaben. Unsichere Angaben stehen hier bewusst nicht. */
|
|
contacts: string[]
|
|
/** Gesuchter Raum, z. B. «Zürich, Innenstadt / Paradeplatz». */
|
|
locationHint: string
|
|
/** Objektempfehlung — ausschliesslich IDs aus «Meine Objekte». */
|
|
propertyIds: string[]
|
|
status: ExposeLeadStatus
|
|
/** Ursprungssignal bei Nora, sofern der Lead von dort kam. */
|
|
sourceSignalId?: string
|
|
/** Wer den Lead weitergeleitet hat. */
|
|
forwardedBy?: string
|
|
}
|
|
|
|
export type CreateExposeLeadInput = Omit<ExposeLead, 'id' | 'receivedAt' | 'status'> & {
|
|
receivedAt?: string
|
|
status?: ExposeLeadStatus
|
|
}
|