Recorded Cancelled stage, Broker source, and project PRJ001, PRJ011 or PRJ021. All Cancelled bookings in this snapshot qualify; Cancelled stage alone also reproduces this category.
Recorded Enquiry stage, Broker source, and the same project allowlist. “Stalled” is the dataset's category name; this rule does not independently establish inactivity or low booking value.
Agreement with the labeled dataset, not independent validation. The project allowlist was identified from labeled data; it is not a general risk cohort. This is deterministic, not a trained model. No combined score, probability or blended accuracy metric.
Headline counts and agreement use the full workbook. Filters affect the worklists only. Amount ordering is a display option, not a risk score.
Cancellation-cluster worklist
Stalled-enquiry worklist
Proactive review
Unscored · Not covered by answer_key
Check
Status
Missing evidence
Agreement / Registered stage stalled
Not evaluated
No progression history or duration threshold. Registered stage alone is not evidence of a stalled sale.
High-value booking with no recent activity
Not evaluated
No last-activity field, high-value threshold or inactivity threshold.
A stage date identifies the recorded sales stage; it does not establish the last customer contact or transaction activity. No thresholds or missing activity history are invented.
Method, per-category validation & limitations
Join fact_booking.unit_id to dim_unit.unit_id for project and unit details, and fact_booking.customer_id to dim_customer.customer_id for lead source. Apply each raw-field rule independently. Only afterward join answer_key by booking_id to evaluate agreement.
The workbook provides one is_at_risk label. For category-specific evaluation, Y labels with “Cancellation cluster linked to …” reasons define cancellation targets; Y labels with “Low booking amount on a long-stalled enquiry in a repeat-risk project cohort.” define enquiry targets. Every category is evaluated against all 500 bookings; the other category's Y rows are negatives for that particular target. This is not a blended evaluation.
Both categories contain 10 PRJ001, 10 PRJ011 and 5 PRJ021 bookings. They are disjoint. The enquiry rule uses no amount or age threshold even though the supplied reason mentions low amounts and long-stalled enquiries. Recorded cancellations are observed statuses, not predictions of future cancellation.
Booking amount is a booking/token amount in INR, not sale value, outstanding receivables or confirmed loss. Unit list price is shown separately in evidence. This synthetic snapshot does not establish real-world customer risk. No current-clock aging or model training is used.
The original workbook is unchanged. Editing it does not automatically update embedded JSON. Integrity checks block rendering for broken joins, duplicate IDs, invalid fields or labels, unrecognized Y reasons, or a changed snapshot that no longer supports the documented category agreement.