This review covers the support knowledge-base export dated 4 October 2026, not the current support queue. The original incident page marked the whole ticket as known with one parser fix queued. Its table groups by tenant locale and booking form, so it cannot distinguish a timing report from a month/day swap. This review reads the report bodies as well.
Engineering update after the export
DennyRedeye supplied the following engineering update from the course challenge page on 1 November 2026:
#4471 · closed 05 oct
parser fixed
fix(dates): parse dd/mm for eu locales
hint won't fix booking-v3 form retired The parser ticket is completed, and the hint ticket is closed as not planned. The timing ticket stays open because the update gives no resolution for its reports. Closing the merged desk ticket does not prove that every problem merged into it was fixed.
This update changes ticket dispositions, not the historical report membership. The counts below still describe the 4 October export. No later report export, commit hash, rollout details or timing reproduction has been independently verified.
Exported desk view
412 reports merged into #4471 · 2 causes
| cause | reports | tagged as | tenants | seen | |
|---|---|---|---|---|---|
parser | 379 | parser ×356 · hint ×23 | 11 | 2026-04-01 → 2026-10-04 | #4471 |
hint | 33 | hint ×18 · parser ×15 | 3 | 2026-04-17 → 2026-09-22 | not this ticket — no ticket of its own |
5 reports read as a one-day move; filed under parser by tenant.
The desk counts the parser and hint groups using its exported component. Its one-day notes are included and footnoted under parser, not subtracted from that group.
Engineering status and timing investigation
The export contains 427 rows and 412 unique reports merged into #4471. 15 overlapping rows do not represent additional reports. The exported parser and hint groups count each report ID once. The timing row is an overlapping investigation subset within parser, not additional reports; do not add it to the exported total.
| Problem | Reports | Tenants | First to last report | Engineering status | Ticket |
|---|---|---|---|---|---|
| Shared parser reads day-first dates month first | 379 | 11 | 2026-04-01 to 2026-10-04 | Completed: parser fixed | #3 |
| booking-v3 date hint disagrees with tenant parsing | 33 | 3 | 2026-04-17 to 2026-09-22 | Not planned: booking-v3 retired | #1 |
| One-day and timing symptoms: root cause unconfirmed | 5 | 5 | 2026-04-02 to 2026-10-04 | Open: needs investigation | #2 |
Intake labels are not cause evidence
| Reviewed problem | Tagged parser | Tagged hint |
|---|---|---|
parser | 356 | 23 |
hint | 15 | 18 |
timing | 5 | 0 |
Timing reports kept separate
The desk's oneDayMove notes flag these report IDs. Their bodies do not describe
the month/day swaps used to support the parser and hint groups. This is an investigation
ticket, not proof that all these reports share one timezone or delivery bug. The exported
desk view counts them under parser and footnotes them there; this review preserves that
count while making the uncertainty visible.
R-41202 · kettle.books · email
Invite says Tuesday 12 May. Calendar says Monday 11 May. My client turned up on the Monday. We had coffee.
R-41209 · alder.physio · app
Every booking in June is one day off. Only June. Why only June.
R-41236 · nine.lanterns · app
The invite arrived before I made the booking. I would like to know how.
R-41344 · pale.harbour · email
Client in Lisbon got Tuesday. Client in Toronto got Monday. Same meeting. We held it twice.
R-41620 · lantern.row · email
Tuesday 6 October showed as Monday. I moved it myself. I have stopped reporting these but my colleague says it helps you.
Exported groups and overlapping investigation audit
Show every report ID in its reviewed group
Shared parser reads day-first dates month first
R-41200, R-41201, R-41202, R-41203, R-41204, R-41205, R-41206, R-41208, R-41209, R-41210, R-41211, R-41212, R-41213, R-41214, R-41215, R-41216, R-41217, R-41218, R-41219, R-41220, R-41221, R-41222, R-41223, R-41224, R-41225, R-41227, R-41228, R-41229, R-41231, R-41232, R-41233, R-41234, R-41235, R-41236, R-41237, R-41238, R-41239, R-41240, R-41242, R-41243, R-41244, R-41245, R-41246, R-41247, R-41248, R-41249, R-41250, R-41252, R-41253, R-41254, R-41255, R-41256, R-41257, R-41258, R-41260, R-41261, R-41263, R-41264, R-41265, R-41266, R-41267, R-41268, R-41269, R-41270, R-41271, R-41272, R-41273, R-41274, R-41276, R-41277, R-41278, R-41279, R-41280, R-41281, R-41282, R-41283, R-41284, R-41285, R-41286, R-41287, R-41288, R-41289, R-41290, R-41291, R-41292, R-41293, R-41295, R-41296, R-41297, R-41298, R-41299, R-41300, R-41301, R-41302, R-41303, R-41304, R-41306, R-41309, R-41310, R-41311, R-41312, R-41313, R-41314, R-41315, R-41316, R-41317, R-41318, R-41319, R-41320, R-41321, R-41322, R-41323, R-41324, R-41325, R-41327, R-41328, R-41329, R-41330, R-41331, R-41332, R-41333, R-41334, R-41335, R-41336, R-41337, R-41338, R-41339, R-41340, R-41341, R-41342, R-41343, R-41344, R-41345, R-41346, R-41347, R-41348, R-41349, R-41350, R-41351, R-41352, R-41353, R-41354, R-41355, R-41356, R-41357, R-41358, R-41359, R-41360, R-41361, R-41362, R-41363, R-41364, R-41365, R-41367, R-41368, R-41369, R-41370, R-41371, R-41373, R-41374, R-41375, R-41376, R-41377, R-41378, R-41379, R-41380, R-41381, R-41382, R-41383, R-41385, R-41386, R-41388, R-41389, R-41390, R-41391, R-41392, R-41393, R-41394, R-41395, R-41397, R-41398, R-41399, R-41401, R-41402, R-41403, R-41404, R-41405, R-41408, R-41409, R-41410, R-41411, R-41412, R-41413, R-41414, R-41417, R-41419, R-41420, R-41421, R-41422, R-41423, R-41424, R-41425, R-41427, R-41429, R-41430, R-41431, R-41432, R-41433, R-41434, R-41435, R-41436, R-41437, R-41438, R-41440, R-41442, R-41443, R-41444, R-41445, R-41446, R-41447, R-41448, R-41450, R-41451, R-41452, R-41454, R-41455, R-41457, R-41458, R-41459, R-41461, R-41462, R-41463, R-41464, R-41465, R-41466, R-41467, R-41468, R-41469, R-41470, R-41471, R-41473, R-41474, R-41475, R-41476, R-41477, R-41478, R-41479, R-41480, R-41481, R-41482, R-41483, R-41484, R-41486, R-41487, R-41488, R-41489, R-41490, R-41491, R-41492, R-41494, R-41495, R-41496, R-41497, R-41498, R-41499, R-41500, R-41501, R-41502, R-41503, R-41504, R-41505, R-41506, R-41508, R-41509, R-41510, R-41511, R-41512, R-41513, R-41514, R-41515, R-41516, R-41517, R-41518, R-41519, R-41520, R-41521, R-41522, R-41523, R-41524, R-41525, R-41527, R-41528, R-41529, R-41530, R-41531, R-41532, R-41533, R-41534, R-41535, R-41536, R-41537, R-41538, R-41540, R-41541, R-41542, R-41543, R-41544, R-41545, R-41546, R-41547, R-41548, R-41549, R-41550, R-41551, R-41552, R-41553, R-41554, R-41555, R-41556, R-41557, R-41558, R-41559, R-41560, R-41561, R-41562, R-41563, R-41564, R-41565, R-41566, R-41567, R-41568, R-41569, R-41570, R-41571, R-41573, R-41574, R-41575, R-41576, R-41577, R-41578, R-41579, R-41580, R-41581, R-41583, R-41585, R-41586, R-41587, R-41588, R-41589, R-41590, R-41591, R-41592, R-41593, R-41594, R-41595, R-41596, R-41597, R-41598, R-41599, R-41600, R-41601, R-41602, R-41603, R-41604, R-41605, R-41606, R-41608, R-41609, R-41610, R-41611, R-41612, R-41613, R-41614, R-41615, R-41616, R-41617, R-41618, R-41619, R-41620
booking-v3 date hint disagrees with tenant parsing
R-41230, R-41241, R-41251, R-41259, R-41262, R-41275, R-41294, R-41305, R-41308, R-41366, R-41372, R-41384, R-41387, R-41396, R-41400, R-41406, R-41415, R-41416, R-41418, R-41428, R-41439, R-41441, R-41449, R-41453, R-41456, R-41460, R-41472, R-41485, R-41493, R-41539, R-41572, R-41582, R-41584
One-day and timing symptoms: root cause unconfirmed
R-41202, R-41209, R-41236, R-41344, R-41620
Shared parser: month-first interpretation
The shared parser reads dates month first, but the tenant directory identifies day-first locales. The exported desk classifier counts app and email reports, and booking-v2 form reports, under parser. It also counts the timing cases there, with a footnote; the count is not proof that the parser explains those bodies. Browser locale and intake tags are not substitutes for the tenant’s configuration.
R-41200 describes 7 April becoming 4 July. R-41205 comes from Morrow Tax, whose tenant locale is fr-FR, even though intake saw an en-US browser and tagged it as a hint problem. The engineering update reports that the parser now parses dd/mm for EU locales, so the parser ticket is completed. The export explains the original failure; it does not prove the implementation details, regression coverage or rollout of the reported fix.
booking-v3: the form tells people the wrong date order
The booking-v3 form prints MM/DD/YYYY under its date field. Alder Physio, Copper Studio and Pale Harbour use that form with day-first tenant locales. People follow the month-first hint, but the form reads their input in the tenant’s day-first order. This is a separate interface contract problem, not the shared parser fix.
R-41230 is a Copper Studio form report: 6 January becomes 1 June. Engineering retired booking-v3 and marked the hint as won’t fix, so the hint ticket is closed as not planned, not completed by a date-hint patch. The historical reports remain in the audit.
Timing: keep the uncertainty visible
The desk notes identify reports with adjacent-day or other timing symptoms. The tenant-only classifier files them under parser, but a month/day swap does not explain their reported behavior. R-41236 says an invite arrived before its booking; that observation is not enough to prove a one-day shift.
The investigation must retain the original booking date, timezone, serialized timestamp, recipient timezone and delivery logs. Test a single event across Lisbon and Toronto and check date-only values around midnight and daylight-saving boundaries. These are diagnostic checks, not a claim that a timezone bug has already been reproduced.
Why the merge hid separate problems
Decision 0001 permits merges on normalized subject alone, without reading the body. The accepted triage page still repeats that rule, even though its interactive example computes cause using tenant locale and channel. Neither subject equality nor that helper alone proves that the bodies describe the same failure.
Match tenant configuration, input path, observed date transformation and reproduction evidence before merging. Keep unresolved timing reports separate. Do not rewrite the accepted decision: propose a new decision that replaces subject-only merging after desk approval.
What the desk must check next
The engineering update supersedes the export’s queued-parser and active-booking-v3 status. The support desk keeps working: check for later reports, changed merge assignments, parser rollout details, and the retirement’s scope. Recompute counts from unique IDs if a new report export becomes available. Do not present this export’s counts as live totals or close the timing investigation merely because #4471 was closed.
Reproducing this page
The words live in this page. The tables and report IDs are computed by IncidentReview from the unchanged report export, tenant directory and desk notes. The review helper removes overlapping report IDs and keeps the existing cause groups intact. It flags the notes’ timing cases as an overlapping investigation subset, without subtracting them from the desk’s parser count. It does not invent a timezone root cause or change the original export.
The public repository contains the source page and a prerendered HTML copy under docs. The HTML uses these components at build time, so it includes the tables and desk reference, not only the Markdown source.
desk ref DR-8Q7Z-1VS3