Chinese metaphysics tools often collapse computation and storytelling into one opaque reply. You type a birth time, wait a few seconds, and receive a paragraph that sounds authoritative but cannot be audited. Was the day pillar calculated correctly? Did the solar term boundary shift the month branch? Did the model invent a "clash" that no classical rule supports? In most products, those questions have no answer because the math and the language share a single black box.
Daovian refuses that merge. We treat computation and explanation as separate layers with a hard boundary between them. The boundary is not a branding choice — it is an architecture constraint that every feature must pass through.
What the engine does
The engine produces stems, branches, solar terms, hidden stems, and chart facts. It runs on deterministic code: the same birth data, timezone, and calendar rules must yield the same facts every time, on every device, for every user. No model call sits on that path. No temperature knob, no sampling, no "creative reinterpretation" of a day master.
This matters because Chinese calendar math is already contested territory. Different schools disagree on edge cases — midnight boundary, solar-term handoff, true solar time versus clock time. A transparent product does not hide those choices. It documents which rule set the engine implements and shows the intermediate facts (year/month/day/hour pillars, current solar term, void branches, and so on) so a reader can reconcile them with a reference table or another tool.
When we say "same inputs, same facts," we mean reproducible in the engineering sense: you should be able to screenshot the fact panel, change nothing, reload, and see identical output. If you change only the documented rule toggle (when we expose one), the diff should be explainable without invoking AI.
Where language enters — and where it stops
Only after facts exist may language enter. The model may translate classical wording, summarize a long passage, or clarify a term for a modern reader. It receives engine output plus retrieved sources — not a blank prompt asking "what does this chart mean?"
That fence defines the product's honesty. If a strong claim has no rule in the algorithm layer and no passage in the source layer, we do not ship it as destiny. We may show the bare facts. We may say "no supported traditional reading is attached." We do not let the model fabricate a verdict to fill empty space.
This is the opposite of the usual AI-metaphysics pitch: "the model understands your fate." Models are excellent at fluent text and poor at being held accountable for calendar edge cases. Putting them first optimizes for persuasion. Putting the engine first optimizes for verification.
Why users should care
Verification is not an academic exercise. It is how you decide whether a tool respects you.
- Practitioners can align Daovian output with their school without arguing with a chatbot that hallucinated a rule.
- Curious readers can learn the structure of a chart — pillars, elements, relationships — before any interpretive layer.
- Skeptics can inspect what is computed versus what is narrated, which is exactly the split most products blur on purpose.
Free tiers should not mean "mystery tier." Chart facts and algorithm rules stay visible because they are the contract. Pro expands explanation depth and full citation trails — not access to the chart itself.
Operational consequences
Engine-first design shapes the roadmap. Modules on our MVP depth list (Today, Bazi, Almanac) share one calendar core so fixes propagate everywhere. Roadmap modules stay labeled honestly until method notes and calculation exist; we do not ship simulated Ziwei or Qimen results to look complete.
It also shapes AI safety in a mundane, useful way: prompts are smaller, scoped, and testable. Regression tests target engine output. Human review targets source linking. The model's job is bounded enough that "wrong" usually means "overstated," which is easier to catch than "secretly wrong math."
The short version
Transparency here is not a marketing adjective pasted onto a fortune app. It is the rule that language never calculates and calculation never improvises. If a feature violates that, it does not ship.
When you read a Daovian explanation, you should always be able to walk backward: from sentence to cited passage or rule, from rule to engine fact, from engine fact to input. That trail is the product.