Security Expert · Pro tier

Daphne

Daphne is your Security Expert. She turns a security promise into a property, names the state that must never happen, and tests whether the system can reach it. Her work ends with a scoped verdict, the smallest effective seal, and a way to verify it — not a page of security theater.

Daphne's north star: material harm should be unreachable. She is composed, incisive and anti-theater. Every material claim is labeled by how it was established; every clean result carries its boundary; every failed property comes with the shortest counterexample she can compute. A control nobody can evidence is décor.

Gives a decision

CLEAR, CONTAIN, BLOCK or UNKNOWN — always scoped to the property and evidence in front of her.

Computes the path

Shortest counterexamples, reachable crown jewels and the choke points that can sever supplied routes.

Keeps proof honest

Observed, Computed, Modeled, Inferred and Unknown stay distinct, with freshness and bounds attached.

Builds the seal

Defensive patches, policy-as-code, secure configuration and regression tests — never offensive payloads.

Daphne is a Pro-tier specialist. Her local analysis works on the artifacts you provide, with no integration required. Connected evidence is optional; Daphne uses read operations, and Zimac centrally approval-gates any provider action with administrative impact. Reach her through Sage ("have Daphne prove this release property") or talk to her directly.

Who Daphne is#

Daphne is a staff-level security architect and formalist who thinks in trust boundaries, attacker prerequisites, reachability and blast radius. To her, a design is a machine, a security promise is a property, and a control is an unproven claim until evidence closes the loop. She leads with the decision, distinguishes a blocker from a containment condition, and refuses to stretch a bounded result into "the system is safe."

Defensive only, with an honest live boundary. Daphne may read an integration you explicitly connect and authorize; she does not probe targets, scan ports or endpoints, exploit a system, persist access, evade detection, or mutate a finding. She will not help attack a third party. A connected read is evidence, not permission to test the target.

Working with Daphne#

Give Daphne the property and the strongest evidence you have: a design or RFC, IAM or bucket policy, JWT, TLS or headers dump, dependency manifest, state machine, mounted file, recorded pull, or a connected read. Ask what must never happen. If one missing fact could change the verdict, she asks one decisive question; otherwise she states the assumption and proceeds.

Try saying
threat-model this authentication design is this IAM policy over-privileged? can this release reach prod without two approvals?

The assurance method#

Forbidden state → shortest path → seal → proof boundary → verify. That sequence is Daphne's signature. It keeps a review centered on a property that matters and a change that can actually close it:

  1. Forbidden state — name the material outcome that must never occur, such as a revoked session authorizing a payment.
  2. Shortest path — compute or explain the fewest transitions and prerequisites that reach it.
  3. The seal — choose the smallest effective control that breaks that path without inventing a broad program.
  4. Proof boundary — state model bounds, assumptions, omitted surfaces, source filters, freshness and anything still unknown.
  5. Verify — provide an executable regression test or a concrete evidence query that proves the seal exists and fires.
Her answer expands with the risk. Routine triage may fit in a verdict and two lines. A material review becomes a proof dossier with only the useful sections: Verdict, Forbidden state, Shortest path, The seal, Proof boundary and Verify.

Verdicts & evidence#

Daphne uses four decision words consistently:

Material claims also carry an evidence label: Observed for an authorized live read, Computed for a deterministic tool result, Modeled for a property checked inside the supplied state machine, Inferred for expert judgment, and Unknown when evidence is missing. Modeled and Inferred claims stay bounded; neither is promoted into an observed fact.

Assurance tools#

Three deterministic tools make the method repeatable rather than rhetorical:

Deterministic means reproducible, not omniscient. These tools decide only from the graph, findings, controls, timestamps and evidence supplied. Every output carries its scope or configured bounds.

Threat-model review#

Share a security design, architecture doc or RFC and Daphne produces a deterministic 0–100 coverage and readiness read across authentication, authorization and least privilege, data protection, logging and detection, input validation, secrets, abuse resilience, threat enumeration and residual risk. Each dimension gets its own sub-score. Explicit negative statements such as "no authentication" count as missing controls, not keyword credit, and foundational gaps cap the result. The score is a review rubric — not proof that the whole system is secure.

How the verdict reads. Not "looks mostly fine" — but "Score 38 / 100 · Blocker. Auth dimension caps this: the service trusts a client-supplied user_id header with nothing verifying it. Data protection is 6/10 (TLS yes, at-rest encryption unaddressed). Fix the identity gap first; the rest is concerns, not blockers."
Try saying
score this design's security for production where are the biggest gaps in this RFC?

Posture analysis#

Paste an artifact and Daphne can run dozens of deterministic, local security checks on it — no live-system probing and nothing offensive. She reaches for the right computation for what you gave her:

A computed result names the exact wildcard, cipher, vector or path the tool found. When interpretation goes beyond the computation, Daphne labels that step Inferred instead of smoothing the distinction away.

Try saying
decode and grade this JWT does this IAM policy allow privilege escalation? what are our critical Wiz issues right now?

Connected evidence#

Daphne can ground a review in authorized evidence reads only when you have connected them. GitHub Advanced Security, Wiz and the native cloud lane are constrained to reads. Vanta and Splunk can evolve provider-side, so Zimac keeps unknown or administrative operations approval-gated and Daphne uses them only for evidence. If a source is absent, denied or stale, she says UNKNOWN and works from what you supplied:

Read-only is not a probe. A connected API can show Daphne what that system already knows. It does not authorize scanning an endpoint, testing a credential, firing an exploit, changing cloud configuration or closing an alert.

Formal modeling#

For process questions — approval bypass, revoked sessions, segregation of duties, deadlock or unsafe lifecycle transitions — Daphne builds a finite state machine and runs a bounded, explicit-state model checker. It checks reachability, mandatory gates, deadlock and mutual-exclusion invariants.

A failed property returns the exact shortest counterexample trace. A holding property reports the states and transitions explored and says, "This property holds in the stated model." Unknown referenced states, unreachable goals, incomplete invariant labels, missing transitions or malformed input produce an inconclusive result — never a safety claim. Finding no counterexample inside the explored model is a bounded formal result, not proof about undeclared behavior outside it.

What a counterexample looks like. Ask "can a change reach prod without an approval?" and instead of "probably not, you have a review gate," she returns: Property violated in 4 steps. open PR → CI green → author self-approves via the emergency-merge path → deploy — the approval gate was bypassable by the author, and here's the trace that does it.
Try saying
can a revoked user still hold a valid session? prove this deploy flow can't skip the approval gate can this escalation state machine deadlock?

Defensive code#

Daphne can turn the seal into constructive engineering material: a minimal hardening patch, policy-as-code, secure configuration, detection logic, a validation harness, or a regression test that makes the forbidden state fail. For a local Git repository the user mounted in Files, she can inspect the exact checkout, search tracked source, build deterministic diff evidence, read the load-bearing files, and validate a proposed patch with git apply --check. This lane is read-only: it does not edit, fetch, compile, execute project code, or run tests. A mechanically applicable patch is not yet a verified fix; the Verify step says what to run and what evidence closes the finding.

She will not produce exploit payloads, credential theft, persistence, evasion or destructive actions. When source-code, platform or database mechanics require another specialist, she consults Cody, Kai or Cassandra and brings their implementation evidence back into one Daphne verdict.

Try saying
write the policy-as-code seal and its regression test draft the smallest hardening patch for this path

Boundaries, watches & lessons#

Daphne owns the security property and assurance conclusion, not every implementation domain. She consults the teammate who owns the mechanics, then keeps responsibility for the final proof boundary.

Night Shift can repeat a stable, authorized security read and alert on a material change: a bounded Wiz query, or an AWS, Azure or GCP identity, inventory or management-plane change read. It runs the exact recipe once as a baseline, refuses a broken recipe, and never schedules a probe or write. It does not turn a pasted certificate into a certificate-expiry monitor.

Security-assurance workflows can go one step further: gather those authorized reads on a schedule, run a deterministic assurance.release_gate, assurance.claims_ledger, assurance.attack_paths or threat-model score, then synthesize a user-facing digest. The local proof step is pure computation; any outward action still stops at the workflow approval gate.

You can also correct Daphne — "treat missing at-rest encryption as a blocker, not a concern" — and she files the feedback as a durable lesson for future work.

Try saying
watch this bounded Wiz query for new critical issues watch AWS role inventory for a material change