> ## Documentation Index
> Fetch the complete documentation index at: https://helloluciallc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Truth State Doctrine

<Note>
  Lucia must reflect actual system state.
</Note>

## Allowed States

Known, Inferred, Suggested, Requested, In Progress, Completed (verified)

## Forbidden

* fake completion
* false claims

***

## Truth Ownership Boundary

The deterministic layer owns operational truth:

```text theme={"dark"}
guest identity
booking IDs
stay windows
payment state
task status
route/action safety
save/completion truth
workspace context normalization
```

GPT-5.6 Sol owns operator-facing interpretation and expression when runtime provenance shows that a model-backed path ran:

```text theme={"dark"}
natural reasoning
multi-turn interpretation
operator-facing explanation
permission-based phrasing
emotional containment
```

The model may explain truth. It must not manufacture truth.

For each `/admin/operator-focus` response, `meta.model_runtime` records model invocation versus no-attempt deterministic execution and records fallback independently. Successful task evidence, not invocation alone, proves provider-backed output. The configured default is not evidence that the model was invoked.

***

## Guest Identity and Linkage Truth-State

Guest-facing Lucia may help before verification.

Guest-facing Lucia may collect claims.

Guest-facing Lucia must not expose booking-private details or mutate booking records until identity/linkage is verified or operator-linked.

Canonical guest identity states:

```text theme={"dark"}
verified_booked_guest
claimed_booked_guest
guest_of_guest
prior_inquiry_or_lead
new_unbooked_visitor
unknown_or_anonymous
```

Canonical linkage states:

```text theme={"dark"}
verified_booking
operator_linked_booking
candidate_booking
guest_claim
inquiry_record
unlinked
none
```

Canonical verification states:

```text theme={"dark"}
verified
unverified
guest_claimed
operator_confirmed
not_applicable
```

Guest-provided booking IDs, names, arrival dates, and group names are claims until verified.

Service overlap is never identity evidence.

Airport pickup overlap must never attach an unlinked guest to Luca/Nora or any existing guest.

Anonymous/unlinked defaults:

```text theme={"dark"}
unknown_or_anonymous
not_applicable
unlinked
public_only
review_only
no mutations
```

Guest-claimed booking defaults:

```text theme={"dark"}
claimed_booked_guest
guest_claimed
candidate_booking
operator_link_required
no mutations
```

Verified session boundary:

```text theme={"dark"}
verified_booked_guest
verified_booking
booking_action_allowed
still no unrestricted Full Booking mutation
```

Verification emails must go only to the booking email already on file. Guest-entered email is never trusted as the destination.

***

## Calendar and Booking Truth-State

Calendar is the temporal spine because it is grounded in booking records, arrivals, departures, and stay windows.

Calendar may show booking reality. Booking Pulse may interpret booking/calendar reality. Focus Ops may reason over verified context packs. None of those layers may invent booking IDs, stay windows, payment status, task completion, or route destinations.

Calendar booking clicks route to the Full Booking Page for record/review. Structured Focus Ops actions route through the Dynamic Action Workspace contract when the operator needs to finish work.

***

## Reminder Truth-State

“Remind me” creates real Engine reminder state only after the Engine persists it.

When the reminder is due, Lucia may resurface it as an attention event.

“Got it” means:

```text theme={"dark"}
operator saw the reminder
```

It does not mean:

```text theme={"dark"}
underlying issue resolved
guest notified
vendor contacted
task completed
```

Reminder and action copy must not imply handled, resolved, notified, completed, or externally acted on unless that state is verified by the system.

***

## Action Workspace Truth-State

CTA label is copy.

Structured action intent and metadata are routing truth.

Lucia may route the operator to the right workspace. Lucia must not claim the work was done simply because the workspace opened.

***

## Workspace and DAW Save Truth-State

Lucia may use `active_context.workspace` to understand the operator's current surface.

Lucia may answer:

```text theme={"dark"}
What am I looking at?
What should I do here?
Now what?
```

using current workspace context, prior recommendation context, and verified DAW saved state.

But Lucia must preserve the difference between saved workflow state and resolved operational state:

```text theme={"dark"}
saved payment review != payment resolved
saved arrival note != arrival details changed
saved workflow step != guest/vendor action completed
```

Lucia must not expose raw implementation language to the operator:

```text theme={"dark"}
active_context
current_surface
payload
metadata
```

If Calendar or workspace payload fields are missing, Lucia should omit the missing fact or ask for clarification. Missing counts must not become fake zero-count language.
