Predictive Analysis
Can the service tell, one second into a request, that it is going to run long? This page compares three simple methods on synthetic requests, and shows how a person would approve one, and undo it. Nothing is served from a prediction and nothing is trained live.
This page always uses the whole synthetic window: about 76 hours, Mon 05 Jan 00:01 UTC to Thu 08 Jan 04:25 UTC (1,200 synthetic requests), whatever time range is chosen on other pages. Dates are synthetic.
What is predicted
The question: one second after a briefing request begins, will it still be running after 8 seconds?
Only requests still running at the 1-second mark are predicted. A request that has already finished has nothing left to predict, so it is not counted as a success.
The target is the service's own processing time. It is not how long a caller waited: the telephone connection, speech recognition and speech synthesis are outside it.
Which situations run long
| Situation | Training requests | Ran long | Share that ran long |
|---|---|---|---|
| Standard briefing · at the 1-second mark: 1–2 checks found no stored copy | 11 | 7 | 63.6% |
| Standard briefing · at the 1-second mark: no stored-copy check done yet | 327 | 92 | 28.1% |
| Standard briefing · at the 1-second mark: 3 or more checks found no stored copy | 114 | 31 | 27.2% |
| Standard briefing · at the 1-second mark: every check so far found a stored copy | 92 | 1 | 1.1% |
| Alternate-airport check · at the 1-second mark: 1–2 checks found no stored copy | 2 | 0 | 0.0% |
| Alternate-airport check · at the 1-second mark: every check so far found a stored copy | 1 | 0 | 0.0% |
| Alternate-airport check · at the 1-second mark: no stored-copy check done yet | 34 | 0 | 0.0% |
The share is what happened among past synthetic requests in that situation. It describes the past. It is not a probability for the next request.
How three methods compare
Each method gives every scored request a raw score. Lower error is better. The scores are checked on 397 requests that began after the methods were fitted.
Error score (lower is better)
| Method | Requests scored | Ran long | Flagged as likely long | Of those flagged, share that ran long | Of all that ran long, share flagged |
|---|---|---|---|---|---|
| Constant prevalence | 397 | 86 | 0 | n/a never flagged | 0.0% |
| Rolling history | 397 | 86 | 3 | 66.7% | 2.3% |
| Cache-state rule | 397 | 86 | 11 | 63.6% | 8.1% |
Constant prevalence. One fixed guess: the share of long requests in the training period, given for every request. It is not a timer and it does nothing.
Rolling history. The share of long requests among the last 20 whose outcome was already known when the decision was made. It keeps changing as outcomes arrive.
Cache-state rule. A table of counts by situation. A simple heuristic, not machine learning.
Historical trial run
Historical replay of 397 synthetic requests. These are requests that are already over, scored after the fact. It is not live traffic and nothing was served from it.
The candidate rule and the constant are frozen at the fit. The rolling history takes in each outcome once it has become readable, and never before, so it keeps changing through the replay.
| Request | Started (synthetic) | Rolling history | Cache-state rule | What happened |
|---|---|---|---|---|
| R-0724 | Tue 06 Jan 21:54 UTC | 0.250 | 0.276 | Not long |
| R-0725 | Tue 06 Jan 21:55 UTC | 0.250 | 0.283 | Not long |
| R-0726 | Tue 06 Jan 22:00 UTC | 0.250 | 0.028 | Not long |
| R-0727 | Tue 06 Jan 22:05 UTC | 0.250 | 0.276 | Not long |
| R-0728 | Tue 06 Jan 22:06 UTC | 0.250 | 0.021 | Not long |
| R-0730 | Tue 06 Jan 22:24 UTC | 0.150 | 0.283 | Ran long |
| R-0731 | Tue 06 Jan 22:25 UTC | 0.150 | 0.021 | Not long |
| R-0732 | Tue 06 Jan 22:30 UTC | 0.150 | 0.276 | Not long |
| R-0733 | Tue 06 Jan 22:31 UTC | 0.150 | 0.021 | Not long |
| R-0734 | Tue 06 Jan 22:32 UTC | 0.150 | 0.283 | Not long |
These are raw scores, not calibrated probabilities.
Decision: a person approves, and can undo it
In use now in this simulation: Rolling history. Candidate: Cache-state rule. Nothing is promoted because of a score. Approval is a person's action, it is refused until every condition is met, and it can be rolled back.
| Condition | State | Seen |
|---|---|---|
| Enough past requests to judge on: at least 200 that were still running at 1 second, at least 20 of them long | Met | 397 decisions, 86 long |
| The rule's error score is at least 0.01 better than the better of the two baselines | Met | candidate 0.1523, better baseline 0.1698 |
| Everything the rule and the rolling history used was known before the decision it scored | Met | 397 scored decisions and 581 training rows checked |
| The rule's inputs, rebuilt a second way from the raw records, agree with the ones it used | Met | all agree |
| The historical trial run has been done | Met | done |
| A person has recorded a review of the trial run and its limits | Met | recorded (simulated) |
| Step | Action | Result | Why | In use, before to after |
|---|---|---|---|---|
| 1 | shadow | Done | historical replay of the holdout period run; nothing was served from it | Rolling history to Rolling history |
| 2 | rollback | Refused | nothing has been promoted, so there is nothing to roll back | Rolling history to Rolling history |
| 3 | rollback | Refused | nothing has been promoted, so there is nothing to roll back | Rolling history to Rolling history |
| 4 | review | Done | a reviewer recorded that they read the replay and the limits (simulated person) | Rolling history to Rolling history |
| 5 | review | Done | a reviewer recorded that they read the replay and the limits (simulated person) | Rolling history to Rolling history |
The history is the list of actions in this page's address, replayed from the start on every load. Anyone can edit the address, so it simulates a history that is only added to. It is not a tamper-proof audit record.
What this page cannot tell you
How often a prediction would be right on the real service Not measured
These are synthetic requests built with the effect in them.
What would measure it: Real request records over enough time, scored the same way, with the methods frozen first.
Whether acting on a prediction helps Not measured
A better error score on past requests does not show that acting on it changes anything.
What would measure it: A comparison in which some requests get the action and others do not.
A calibrated chance of running long Not measured
The scores are raw. They have not been checked against how often such requests really ran long.
What would measure it: A calibration check on real records.
Engineering details: dataset, sets, checks and the cutoff audit
| Dataset ID | syn-feab7bc56e79 |
|---|---|
| Seed / generator | 20260920 / pa-proto-0.1 |
| Content SHA-256 | 08a17326968ac351d80464c4fed4464b61837f679542b925fa076e488bf5de8e |
Decision and target
The decision is made 1,000 ms after a PHP request to the briefing API begins (a briefing or a flight plan), from what the request had observed by then. The target is PHP request time above 8 seconds on the host. That is not how long a caller waited: the network to the voice platform, the platform's own handling and the speaking of the answer are outside it.
Sets
| Set | Decisions | Rule |
|---|---|---|
| Training | 581 | Still running at the decision, decided before the models were fitted (Tue 06 Jan 21:51 UTC), and the outcome was readable by then. Records become readable in 15-minute batches. |
| Holdout | 397 | Still running at the decision, and decided after the models were fitted. The only decisions that are scored. |
| Decided before the fit, outcome readable after | 4 | In no set. The outcome came too late to teach the models, and the models did not exist when the decision was made. |
| Already over at the decision | 164 | In no set. The request had finished before the 1,000 ms decision, so calling it "not long" is not a prediction. |
| No record | 54 | In no set. Counted, never guessed at. |
Metrics
| Method | Decisions | Long | Brier | Said "long" | Precision | Recall |
|---|---|---|---|---|---|---|
| Constant prevalence | 397 | 86 | 0.1698 | 0 | n/a | 0.0% |
| Rolling history | 397 | 86 | 0.1729 | 3 | 66.7% | 2.3% |
| Cache-state rule | 397 | 86 | 0.1523 | 11 | 63.6% | 8.1% |
Training rows are not scored: a score for a row a model was fitted on describes the fit, it does not predict. A measure with nothing to divide by is n/a, not zero.
The fitted cache-state rule (7 rows of counts)
| Action | purpose | lookups seen by the cutoff | Training | Long | Raw score |
|---|---|---|---|
| briefing|alternate|1-2 misses | 2 | 0 | 0.250 |
| briefing|alternate|all hits | 1 | 0 | 0.333 |
| briefing|alternate|no cache lookup yet | 34 | 0 | 0.028 |
| briefing|standard|1-2 misses | 11 | 7 | 0.615 |
| briefing|standard|3+ misses | 114 | 31 | 0.276 |
| briefing|standard|all hits | 92 | 1 | 0.021 |
| briefing|standard|no cache lookup yet | 327 | 92 | 0.283 |
Constant prevalence. the training share of long requests, given as the probability for every request.
Rolling history. the share of long requests among the last 20 whose outcome was already readable.
Cache-state rule. a lookup table of counts. A simple heuristic, not machine learning.
Checks that can fail
| Check | State | Seen |
|---|---|---|
| Holdout has at least 200 decisions still at risk and 20 long requests | Met | 397 decisions, 86 long |
| Candidate Brier score is at least 0.01 better than the better baseline, on the holdout | Met | candidate 0.1523, better baseline 0.1698 |
| Every training outcome was readable before the fit. Every outcome the rolling baseline used was readable before the decision it scored, and the fit came before every scored decision | Met | 397 scored decisions and 581 training rows checked |
| Model inputs rebuilt a second way from the raw records (counts, action, purpose, rule key) agree with the point-in-time reader and with the key each score used | Met | all agree |
The chronology and input checks can fail, and would block approval if they did. They are checks, not a proof: they cannot show that no leakage exists.
Event evidence and the cutoff
Each event opens to show the record, then every field with the reason it was or was not available to the decision. A field is available only if the registry calls it a feature candidate and its value had been observed by the cutoff.
A standard briefing with stored-copy checks before the cutoff · request 1 · Mon 05 Jan 00:01 UTC
Model input at the cutoff: briefing|standard|1-2 misses · outcome: PHP request time 9,553 ms (long), readable from Mon 00:15:30Z.
| Field | Value | At the cutoff |
|---|---|---|
| schema | fs.telemetry.request.v0 | excluded: meta field, never a feature |
| scope | server_request | excluded: meta field, never a feature |
| request_id | 0000000000000001 | excluded: meta field, never a feature |
| event_time_utc | 2026-01-05T00:01:15.247Z | included: known when the request began |
| record_assembled_at_utc | 2026-01-05T00:01:24.802Z | excluded: meta field, never a feature |
| truncated | false | excluded: meta field, never a feature |
| clock.durations | hrtime_monotonic | excluded: meta field, never a feature |
| clock.wall | system_utc | excluded: meta field, never a feature |
| clock.budget_clock_skew_ms | 0.2 | excluded: meta field, never a feature |
| clock.pre_script_wall_ms | 3 | excluded: meta field, never a feature |
| request.action | briefing | included: known when the request began |
| request.channel_hint | none | included: known when the request began |
| request.purpose | standard | included: known when the request began |
| stages[].stage | idents_resolved | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| stages[].at_ms | 359.505 | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| stages[].stage | endpoints_fetched | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| stages[].at_ms | 795.213 | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| stages[].stage | hazards_done | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 4481.708 | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| stages[].stage | route_weather_done | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 4893.48 | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| stages[].stage | tfrs_done | excluded: observed at 9,524.4 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 9524.386 | excluded: observed at 9,524.4 ms, after the 1,000 ms cutoff |
| stages[].stage | response_built | excluded: observed at 9,553.5 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 9553.468 | excluded: observed at 9,553.5 ms, after the 1,000 ms cutoff |
| cache[].source | winds.fb_table | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| cache[].ttl_s | 3600 | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| cache[].hit | false | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| cache[].at_ms | 795.213 | included: observed at 795.2 ms, at or before the 1,000 ms cutoff |
| cache[].source | noaa.airsigmet | excluded: observed at 1,973.2 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 1,973.2 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 1,973.2 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 1973.152 | excluded: observed at 1,973.2 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.gairmet | excluded: observed at 1,973.6 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 1,973.6 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 1,973.6 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 1973.552 | excluded: observed at 1,973.6 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.cwa | excluded: observed at 1,974.0 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 1,974.0 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 1,974.0 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 1973.952 | excluded: observed at 1,974.0 ms, after the 1,000 ms cutoff |
| cache[].source | faa.tfr_list | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 600 | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 4893.48 | excluded: observed at 4,893.5 ms, after the 1,000 ms cutoff |
| cache[].source | faa.tfr_detail | excluded: observed at 5,789.3 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 1800 | excluded: observed at 5,789.3 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 5,789.3 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 5789.336 | excluded: observed at 5,789.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].seq | 0 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 2 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14998 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 359.505 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 357.505 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 346.8 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 1 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 359.505 | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14640.5 | included: observed at 359.5 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 795.213 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 435.708 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 422.6 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 2 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 795.613 | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 7 | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14204.4 | included: observed at 795.6 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 1973.152 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 1177.539 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1142.2 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 3 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 1974.352 | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 13025.6 | excluded: observed at 1,974.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 4481.708 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 2507.356 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 2432.1 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 4 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 4481.708 | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 10518.3 | excluded: observed at 4,481.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 4893.48 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 411.772 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 399.4 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 5 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 4893.88 | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 10106.1 | excluded: observed at 4,893.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 5789.336 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 895.456 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 868.6 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 6 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 5789.736 | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 8 | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 9210.3 | excluded: observed at 5,789.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 9524.386 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 3734.65 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 8 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 8 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 3622.6 | excluded: outcome field, never a feature |
| budget.budget_ms | 15000 | excluded: meta field, never a feature |
| budget.left_at_end_ms | 5446.5 | excluded: outcome field, never a feature |
| budget.out_of_time_at_end | false | excluded: outcome field, never a feature |
| budget.groups_skipped | 0 | excluded: outcome field, never a feature |
| server.http_status | 200 | excluded: outcome field, never a feature |
| server.script_end_ms | 9553.468 | excluded: outcome field, never a feature |
| server.handoff | flush | excluded: meta field, never a feature |
| server.handoff_ms | 9553.768 | excluded: outcome field, never a feature |
A standard briefing whose stored-copy checks all came after the cutoff · request 9 · Mon 05 Jan 01:09 UTC
Model input at the cutoff: briefing|standard|no cache lookup yet · outcome: PHP request time 8,861 ms (long), readable from Mon 01:15:30Z.
| Field | Value | At the cutoff |
|---|---|---|
| schema | fs.telemetry.request.v0 | excluded: meta field, never a feature |
| scope | server_request | excluded: meta field, never a feature |
| request_id | 0000000000000009 | excluded: meta field, never a feature |
| event_time_utc | 2026-01-05T01:09:52.296Z | included: known when the request began |
| record_assembled_at_utc | 2026-01-05T01:10:01.158Z | excluded: meta field, never a feature |
| truncated | false | excluded: meta field, never a feature |
| clock.durations | hrtime_monotonic | excluded: meta field, never a feature |
| clock.wall | system_utc | excluded: meta field, never a feature |
| clock.budget_clock_skew_ms | 0.2 | excluded: meta field, never a feature |
| clock.pre_script_wall_ms | 3 | excluded: meta field, never a feature |
| request.action | briefing | included: known when the request began |
| request.channel_hint | none | included: known when the request began |
| request.purpose | standard | included: known when the request began |
| stages[].stage | idents_resolved | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| stages[].at_ms | 414.166 | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| stages[].stage | endpoints_fetched | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 1039.241 | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| stages[].stage | hazards_done | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 5348.242 | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| stages[].stage | route_weather_done | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 7352.349 | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| stages[].stage | tfrs_done | excluded: observed at 8,803.1 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 8803.057 | excluded: observed at 8,803.1 ms, after the 1,000 ms cutoff |
| stages[].stage | response_built | excluded: observed at 8,860.5 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 8860.51 | excluded: observed at 8,860.5 ms, after the 1,000 ms cutoff |
| cache[].source | winds.fb_table | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 3600 | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 1039.241 | excluded: observed at 1,039.2 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.airsigmet | excluded: observed at 2,283.0 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 2,283.0 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 2,283.0 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 2283.016 | excluded: observed at 2,283.0 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.gairmet | excluded: observed at 2,283.4 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 2,283.4 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 2,283.4 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 2283.416 | excluded: observed at 2,283.4 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.cwa | excluded: observed at 2,283.8 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 2,283.8 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 2,283.8 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 2283.816 | excluded: observed at 2,283.8 ms, after the 1,000 ms cutoff |
| cache[].source | faa.tfr_list | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 600 | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 7352.349 | excluded: observed at 7,352.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].seq | 0 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 2 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14998 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 414.166 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 412.166 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 399.8 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 1 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 414.166 | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14585.8 | included: observed at 414.2 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 1039.241 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 625.075 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 606.3 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 2 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 1039.641 | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 7 | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 13960.4 | excluded: observed at 1,039.6 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 2283.016 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 1243.375 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1206.1 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 3 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 2284.216 | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 12715.8 | excluded: observed at 2,284.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 5348.242 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 3064.026 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 2972.1 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 4 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 5348.242 | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 9651.8 | excluded: observed at 5,348.2 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 7352.349 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 2004.107 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1944 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 5 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 7352.749 | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 7647.3 | excluded: observed at 7,352.7 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 8803.057 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 1450.308 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1406.8 | excluded: outcome field, never a feature |
| budget.budget_ms | 15000 | excluded: meta field, never a feature |
| budget.left_at_end_ms | 6139.5 | excluded: outcome field, never a feature |
| budget.out_of_time_at_end | false | excluded: outcome field, never a feature |
| budget.groups_skipped | 0 | excluded: outcome field, never a feature |
| server.http_status | 200 | excluded: outcome field, never a feature |
| server.script_end_ms | 8860.51 | excluded: outcome field, never a feature |
| server.handoff | flush | excluded: meta field, never a feature |
| server.handoff_ms | 8860.81 | excluded: outcome field, never a feature |
A long request that ran out of budget · request 41 · Mon 05 Jan 05:41 UTC
Model input at the cutoff: briefing|standard|no cache lookup yet · outcome: PHP request time 14,243 ms (long), readable from Mon 05:45:30Z.
| Field | Value | At the cutoff |
|---|---|---|
| schema | fs.telemetry.request.v0 | excluded: meta field, never a feature |
| scope | server_request | excluded: meta field, never a feature |
| request_id | 0000000000000029 | excluded: meta field, never a feature |
| event_time_utc | 2026-01-05T05:41:00.712Z | included: known when the request began |
| record_assembled_at_utc | 2026-01-05T05:41:14.957Z | excluded: meta field, never a feature |
| truncated | false | excluded: meta field, never a feature |
| clock.durations | hrtime_monotonic | excluded: meta field, never a feature |
| clock.wall | system_utc | excluded: meta field, never a feature |
| clock.budget_clock_skew_ms | 0.2 | excluded: meta field, never a feature |
| clock.pre_script_wall_ms | 3 | excluded: meta field, never a feature |
| request.action | briefing | included: known when the request began |
| request.channel_hint | none | included: known when the request began |
| request.purpose | standard | included: known when the request began |
| stages[].stage | idents_resolved | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| stages[].at_ms | 387.656 | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| stages[].stage | endpoints_fetched | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 1531.973 | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| stages[].stage | hazards_done | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 9644.091 | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| stages[].stage | route_weather_done | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 11690.005 | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| stages[].stage | tfrs_done | excluded: observed at 14,211.4 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 14211.366 | excluded: observed at 14,211.4 ms, after the 1,000 ms cutoff |
| stages[].stage | response_built | excluded: observed at 14,243.1 ms, after the 1,000 ms cutoff |
| stages[].at_ms | 14243.139 | excluded: observed at 14,243.1 ms, after the 1,000 ms cutoff |
| cache[].source | winds.fb_table | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 3600 | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 1531.973 | excluded: observed at 1,532.0 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.airsigmet | excluded: observed at 4,314.8 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 4,314.8 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 4,314.8 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 4314.805 | excluded: observed at 4,314.8 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.gairmet | excluded: observed at 4,315.2 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 4,315.2 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 4,315.2 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 4315.205 | excluded: observed at 4,315.2 ms, after the 1,000 ms cutoff |
| cache[].source | noaa.cwa | excluded: observed at 4,315.6 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 180 | excluded: observed at 4,315.6 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 4,315.6 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 4315.605 | excluded: observed at 4,315.6 ms, after the 1,000 ms cutoff |
| cache[].source | faa.tfr_list | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 600 | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 11690.005 | excluded: observed at 11,690.0 ms, after the 1,000 ms cutoff |
| cache[].source | faa.tfr_detail | excluded: observed at 14,210.9 ms, after the 1,000 ms cutoff |
| cache[].ttl_s | 1800 | excluded: observed at 14,210.9 ms, after the 1,000 ms cutoff |
| cache[].hit | false | excluded: observed at 14,210.9 ms, after the 1,000 ms cutoff |
| cache[].at_ms | 14210.916 | excluded: observed at 14,210.9 ms, after the 1,000 ms cutoff |
| fetch_groups[].seq | 0 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 2 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14998 | included: observed at 2.0 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 387.656 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 385.656 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 374.1 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 1 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 387.656 | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 14612.3 | included: observed at 387.7 ms, at or before the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 1531.973 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 1144.317 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1110 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 2 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 1532.373 | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 7 | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 13467.6 | excluded: observed at 1,532.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 4314.805 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 2782.433 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 7 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 2699 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 3 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 4316.005 | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 4 | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 10684 | excluded: observed at 4,316.0 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 9644.091 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 5328.086 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 4 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 5168.2 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 4 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 9644.091 | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 2 | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 5355.9 | excluded: observed at 9,644.1 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 11690.005 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 2045.914 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 2 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 2 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 1984.5 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 5 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 11690.405 | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 3309.6 | excluded: observed at 11,690.4 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | false | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 14210.916 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 2520.51 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.n | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.ok | 1 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.failed | 0 | excluded: outcome field, never a feature |
| fetch_groups[].sources.*.max_curl_ms | 2444.9 | excluded: outcome field, never a feature |
| fetch_groups[].seq | 6 | excluded: meta field, never a feature |
| fetch_groups[].start_ms | 14211.316 | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].n_urls | 1 | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_allowed | true | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].retry_pass | false | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].cap_ms | 8000 | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].budget_left_before_ms | 788.7 | excluded: observed at 14,211.3 ms, after the 1,000 ms cutoff |
| fetch_groups[].skipped_for_budget | true | excluded: outcome field, never a feature |
| fetch_groups[].end_ms | 14211.366 | excluded: outcome field, never a feature |
| fetch_groups[].dur_ms | 0.05 | excluded: outcome field, never a feature |
| budget.budget_ms | 15000 | excluded: meta field, never a feature |
| budget.left_at_end_ms | 756.9 | excluded: outcome field, never a feature |
| budget.out_of_time_at_end | true | excluded: outcome field, never a feature |
| budget.groups_skipped | 1 | excluded: outcome field, never a feature |
| server.http_status | 200 | excluded: outcome field, never a feature |
| server.script_end_ms | 14243.139 | excluded: outcome field, never a feature |
| server.handoff | flush | excluded: meta field, never a feature |
| server.handoff_ms | 14243.439 | excluded: outcome field, never a feature |
A briefing refused with HTTP 400 (a retained, observable outcome; over before the decision, so not in the at-risk scores) · request 16 · Mon 05 Jan 01:52 UTC
Model input at the cutoff: briefing|standard|no cache lookup yet · outcome: PHP request time 6 ms (not long), readable from Mon 02:00:30Z.
| Field | Value | At the cutoff |
|---|---|---|
| schema | fs.telemetry.request.v0 | excluded: meta field, never a feature |
| scope | server_request | excluded: meta field, never a feature |
| request_id | 0000000000000010 | excluded: meta field, never a feature |
| event_time_utc | 2026-01-05T01:52:31.161Z | included: known when the request began |
| record_assembled_at_utc | 2026-01-05T01:52:31.169Z | excluded: meta field, never a feature |
| truncated | false | excluded: meta field, never a feature |
| clock.durations | hrtime_monotonic | excluded: meta field, never a feature |
| clock.wall | system_utc | excluded: meta field, never a feature |
| clock.budget_clock_skew_ms | 0.2 | excluded: meta field, never a feature |
| clock.pre_script_wall_ms | 3 | excluded: meta field, never a feature |
| request.action | briefing | included: known when the request began |
| request.channel_hint | tool_header | included: known when the request began |
| request.purpose | standard | included: known when the request began |
| budget.budget_ms | 15000 | excluded: meta field, never a feature |
| budget.left_at_end_ms | 14993.9 | excluded: outcome field, never a feature |
| budget.out_of_time_at_end | false | excluded: outcome field, never a feature |
| budget.groups_skipped | 0 | excluded: outcome field, never a feature |
| server.http_status | 400 | excluded: outcome field, never a feature |
| server.script_end_ms | 6.124 | excluded: outcome field, never a feature |
| server.handoff | flush | excluded: meta field, never a feature |
| server.handoff_ms | 6.424 | excluded: outcome field, never a feature |
A request whose record was dropped · request 53 · Mon 05 Jan 07:53 UTC
A long request whose worker was killed (no record) · request 137 · Mon 05 Jan 14:05 UTC
Future-field rejection
Live calls to the feature reader, not descriptions of it:
Limits of the engine
- Synthetic events only. No measured production data, and no claim that any method here predicts the real service.
- The target is PHP request time on the host, not caller wait and not completion of the tool call at the voice platform.
- The cache-state rule is a table of counts: a simple heuristic, not machine learning. It does well here because the generator was built with a cache effect.
- The real service keeps no independent count of requests, so requests that leave no record would be invisible there. Here only the synthetic world can count them.
- This isolated prototype reads no real telemetry, so it gives no exposure, base rate or latency figure for the service. Production readiness has not been assessed.
- Approval and review are simulated. There is no sign-in, no audit store and no live model, and the history lives in an address anyone can edit.