VEILSynthetic model / simulated Alexa+ client

Two harmless replies.
One private plan, gone.

Alice is keeping her early-prep window private. Bob already knows his own calendar and asks an assistant three ordinary things. The left column answers each question on its own. The right one remembers what the room has already heard.

Four windows, sixteen possible Alice calendars, one observer, one protected fact. A study of the mechanism, not a privacy guarantee for real homes.

Loading saved conversation...Protected: Alice free for early prep?

Without the guard

Answers the current question. Forgets what the answers reveal together.

Calendars still possible

Each tile is one possible Alice calendar. Filled tiles still match this transcript.

With Veil

Checks every possible reply, including refusal and the chosen meeting.

Calendars still possible

Some calendar information can still be revealed. Only the declared fact is protected.

What changed?

The observer starts with a 50% probability that Alice is free for early prep. No replies yet.

Inspect the synthetic fixture

Windows: 0 early prep, 1 late prep, 2 dinner, 3 cleanup. Alice is free in 0, 1 and 2. Bob is free in 0 and 2. The observer does not start with Alice's actual calendar. As a demo operator, you can inspect it here; this is not an access-control boundary.

First question asks whether exactly one of Alice's two prep windows is free. That constraint is deliberately chosen to make the composition leak visible. It is not evidence of a common user request.

Try another synthetic scenario

Explore the actual controller on other fictional calendars. Changing a public experiment budget is not private disclosure approval. These runs are separate synthetic experiments and do not reset a real conversation's history.

Lab control choices are remembered locally in this browser, separately from guarded session history. Select time windows to populate the matching fictional calendar. Changing a scenario clears overrides; the bitset fields remain available for exact test cases.

Prior odds are public model weights1..9 for false,true (1,3 starts at75% true). New dialogue sessions bind these public odds and costs; existing sessions keep their original configuration. Costs are public experiment inputs, not private resident preferences. Success count is optimized first, then total public inconvenience. Bitsets: 1 early prep, 2 late prep, 4 dinner, 8 cleanup. Add the values for free windows. Leave blank for the scenario defaults.

Typed aliases only, not general language understanding. Preview does not change saved history.

Operator view exposes synthetic configuration for inspection, not secure resident separation. Start uses the lab calendars, one protected fact and public limit. Ask records the supported typed request above in separate persistent history. Starting again is a new synthetic experiment, not production budget reset.

No free-order dialogue loaded. This is an operator view, not a private resident interface.
Choose a scenario to compare outcomes, disclosure and supported policies.
Run an explicit synthetic world model

Paste an experiment JSON matching examples/independent-dinner.json or correlated-observer-domain.json from the package. Fixed schema, at most256 worlds and32 typed requests. No code executes. You must declare the observer-conditioned prior; this simulator cannot establish that it is complete or reflects real life.

The ordinary-query example uses a deliberately correlated four-world prior with cleanup always free. This is an illustrative model, not a discovered household pattern. The original independent-calendar comparison stays unchanged.

No imported model run.

Audit download contains all declared synthetic worlds and observer traces for offline verification, not private recipient data.

Measured usefulness and limits

Across all 256 equally weighted joint calendars, 175 have a common window. After this test conversation the guard schedules 112 of those 175, with no tested protected-fact probability shift. Direct guarded scheduling reaches 148. Refusal can happen even when a meeting exists.

One fact, one observer, declared finite prior. No private approvals, live Alexa access, natural-language parser, timing protection, collusion protection, encryption or secure multi-tenancy. Restarting this local server keeps the conversation ledger; reset deliberately starts a new synthetic experiment, not a way to reset real privacy history.

Background: CalBench, PiSAs, inference-aware guidance. Not a first-ever private scheduler claim.