Keep Uncertain Onset Dates as Ranges Instead of Guessing an Order — Free
A remembered onset “between Tuesday and Thursday” is a range, not a date to invent. Preserve that uncertainty and show which pairs cannot support a claimed order or minimum day gap.
The proof surface
An exact-date timeline orders events; this retains earliest/latest bounds and explicitly shows which event pairs cannot be certainly separated.
InputEvent code | earliest date YYYY-MM-DD | latest date YYYY-MM-DD; required definite separation (whole days)
Rare deviceAn exact-date timeline orders events; this retains earliest/latest bounds and explicitly shows which event pairs cannot be certainly separated.
Output artifactPairs lacking definite stated separation plus complete labeled working
Cost$0 local core · no account, card, paid key or subscription · filing proposal has no checkout
Sample, not your facts: Invented records: Cedar note | 2026-10-01 | 2026-10-03; Willow note | 2026-10-02 | 2026-10-04; Pine note | 2026-10-10 | 2026-10-10. Required definite separation (whole days) = 3; expected Pairs lacking definite stated separation: 1 event pairs. These are not quotations, verified observations or personal evidence.
Before using the uncertain-onset docket
This docket preserves the precision you actually have. Use fictional event codes and civil dates for one coherent diary convention. Earliest and latest are inclusive bounds on an event date, not the duration of a symptom. An exact date is entered twice. Do not widen a range to cover a symptom’s whole course or choose a midpoint to make sorting easier. The supplied separation setting is an organizational question for this comparison, not a clinical threshold. A clinician may need the original narrative, exact times, medications and context; this bounded date map cannot infer causation, urgency or a treatment sequence.
Why the flat version breaks
A range is flattened into one convenient day
Choosing its midpoint produces an ordering that the source may not support. Two ranges can overlap even when their midpoints are far apart. This docket keeps both endpoints and compares their most conservative separation. It deliberately avoids a smooth timeline line through the unknown dates, because a visually continuous chronology would imply evidence that was never entered.
Touching bounds are called strictly ordered
If an earlier latest date equals a later earliest date, both events could have happened on that same civil day. The guaranteed separation is zero and a positive-day requirement is not met. Equal boundaries are not nudged apart to make the diagram clean. The row working explains the actual bound relation, so a reader can tell why a mark appeared.
Pair counts are summed from event rows
Every unclear pair affects two events. Summing the row counts therefore doubles the headline count. The result separates unique unordered pairs from affected-event count, and it prints counterpart names so the difference is auditable. Neither count describes medical severity or proves that one symptom led to another. Missing observations and inaccurate recollection remain source limitations, not calculator corrections.
How to work the uncertain-onset docket
Write defensible earliest and latest bounds
Use the source note or your actual recollection to identify both dates. If all you know is a month, supply that month’s true first and last civil dates rather than calling the first an observed onset. Keep the uncertainty explanation in your source diary. Rows require valid YYYY-MM-DD dates from 1900 through 2100 and earliest no later than latest. A parser error does not consume the free run; it asks you to correct the source instead of guessing.
Choose the organizational separation question
Enter a whole number of days from one to 365. Three asks whether one event is definitely at least three civil days after another, not whether a three-day gap is clinically significant. This setting does not alter the original bounds. At most 60 events are accepted to keep all pair relationships readable; the maximum text envelope is still 50,000 characters. A source set with more events should be divided only with a disclosed reason, not to remove difficult overlaps.
Compare worst-case endpoints for every pair
If one latest bound is before the other earliest bound, that order is certain within the supplied dates. Their minimum separation is later earliest minus earlier latest. If ranges touch or overlap, no positive separation and no strict order is established. Mark pairs whose guaranteed gap is less than the setting. Each unordered pair contributes once to the headline but appears beside both events for inspection. This is interval logic, not a probability model of likely onset.
Carry uncertainty into the appointment narrative
Read each marked event’s counterpart list, distinguishing an overlap from a short but certain gap. Copy the map with its units, setting and boundary; do not rewrite the marked pairs as a confident chronology. Ask a qualified clinician to interpret health concerns using the original notes. If you later recover an exact date, update its bounds and rerun the free article demo. A smaller marked-pair count reflects better supplied information or a changed question, not improved health.
What the uncertain-onset docket keeps distinct
Question
Before
Check this working
A range is flattened into one convenient day
Choosing its midpoint produces an ordering that the source may not support. Two ranges can overlap even when their midpoints are far apart. This docket keeps both endpoints and compares their most conservative separation. It deliberately avoids a smooth timeline line through the unknown dates, because a visually continuous chronology would imply evidence that was never entered.
Choose the organizational separation question
Touching bounds are called strictly ordered
If an earlier latest date equals a later earliest date, both events could have happened on that same civil day. The guaranteed separation is zero and a positive-day requirement is not met. Equal boundaries are not nudged apart to make the diagram clean. The row working explains the actual bound relation, so a reader can tell why a mark appeared.
Compare worst-case endpoints for every pair
Pair counts are summed from event rows
Every unclear pair affects two events. Summing the row counts therefore doubles the headline count. The result separates unique unordered pairs from affected-event count, and it prints counterpart names so the difference is auditable. Neither count describes medical severity or proves that one symptom led to another. Missing observations and inaccurate recollection remain source limitations, not calculator corrections.
Carry uncertainty into the appointment narrative
The uncertain-onset docket replaces this named manual reconciliation, not source verification or the responsible human's decision.
Run it on the samples, right here
FIRST-LOAD
HYPOTHESIS / PROTOTYPE — checkout unavailable. Calculation is local. A draft is saved automatically in this browser profile when storage is available; Reset to sample clears it. Optional Pro history stores only five summaries and has its own deletion control. State links encode your inputs and can remain in browser history, clipboard or recipients’ records; share only non-sensitive rows. Optional external AI formatting leaves this device. The required site analytics beacon reports page activity; shared URLs contain encoded inputs. Do not treat an encoded URL as private. The calculator has no input-collection endpoint.
Date-bound organization only: no diagnosis, causal inference, urgency assessment or treatment advice. Bring the original uncertain notes and any health concerns to a qualified clinician; do not delay care because this docket looks orderly.
Data note: This uncertain-onset docket calculates in the tab from Event code | earliest date YYYY-MM-DD | latest date YYYY-MM-DD. No input-collection endpoint, AI request or file upload is built into it. Drafts may be saved locally; explicit input-state links and optional external formatting can disclose the records. Use non-sensitive codes and clear the draft when finished.
Go deeper: the companion app files the same reading as a clerk's docket sheet
The article demo above runs without limits. The companion app keeps a local history, exports the rows as CSV, prints the uncertain-onset docket reading, and holds your drafts on this device — one complete free app run; the proposed $4 one-time filing layer is not for sale.
Keep the complete uncertain-onset docket answer free; optional filing proposes its boundary-preserving print, row-and-summary CSV and five local reading summaries. The $4 one-time prototype is not for sale; another calculation remains free in the article demo.
Date-bound organization only: no diagnosis, causal inference, urgency assessment or treatment advice. Bring the original uncertain notes and any health concerns to a qualified clinician; do not delay care because this docket looks orderly.
What this is built on
Declared local method: If one latest bound is before the other earliest bound, that order is certain within the supplied dates. Their minimum separation is later earliest minus earlier latest. If ranges touch or overlap, no positive separation and no strict order is established. Mark pairs whose guaranteed gap is less than the setting. Each unordered pair contributes once to the headline but appears beside both events for inspection. This is interval logic, not a probability model of likely onset.
Every sample code, measurement, date, price, fingerprint and scenario is invented. Artifact checks do not verify reader data, policies, actual files, tickets, votes or health/accessibility outcomes.
Google’s official Gemini pricing page, fetched 2026-10-01, lists AI Studio access in its Free section, limited model access and free input/output tokens. Free-tier content may be used to improve products. Optional external formatting may require an account; limits/access can change. Manual local entry needs none. Do not send sensitive records.
Before: uncertain notes were forced into an exact chronology. After: bounds preserve uncertainty and each unsupported pairwise gap is visible without an invented date.
Three worked readings, with different inputs
Sample A — typical inputs
Cedar note | 2026-10-01 | 2026-10-03
Willow note | 2026-10-02 | 2026-10-04
Pine note | 2026-10-10 | 2026-10-10
Cedar and Willow overlap, so their order cannot be determined from these ranges. Pine is at least seven days after Cedar’s latest bound and six after Willow’s latest bound. At the three-day setting only one unordered pair lacks definite separation. Two rows mention that same pair; adding row counts would count it twice. Neither overlapping event is moved to a fabricated midpoint date.
Orchard is certainly before Harbor, but the smallest possible separation is only one day. Harbor is certainly before Birch with a two-day minimum. Both fall below the entered three-day rule. Orchard and Birch have a six-day guaranteed gap and are not marked. A review mark therefore does not always mean order is unknown: the row note distinguishes overlap from a known order with insufficient separation.
Sample C — boundary convention
East dated note | 2026-10-01 | 2026-10-01
West dated note | 2026-10-04 | 2026-10-04
Two exact dates are three civil days apart. The rule is at least three days, so equality passes rather than being marked. Exact bounds do not make the observations medically verified; they only remove date uncertainty within this entered set. Time-of-day, timezone and elapsed-hour questions remain outside a civil-date comparison.
Optional AI formatting, never the calculation
Manual entry completes this uncertain-onset docket for free without signup. If available to you, the free AI Studio interface linked in the sources may format fictional or non-sensitive notes; external access may require an account. No API key or AI call is built into this tool. Free-tier content may be used to improve products. Review each cell and transcribe it to the labeled row schema; do not paste the JSON object into the row box.
Format only these fictional or non-sensitive notes for a uncertain-onset docket. Return strict JSON shaped as {"rows": [{"label": "string", "cells": ["string", "string"]}], "setting": "string"}. The columns are Event code | earliest date YYYY-MM-DD | latest date YYYY-MM-DD; the setting is Required definite separation (whole days). Keep all supplied strings and quantities exactly; do not calculate, infer missing entries, invent dates or add advice. If any required value is missing, return an empty rows array and ask me for it separately. I will verify every cell against my source and manually transcribe rows using vertical bars before running the local calculator.
An AI response is not executed, fetched or trusted as a result. Missing values remain questions; the strict local parser checks the rows you actually enter.