1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
// Copyright (c) 2026 2youg1 and the sprawling contributors
//! What an endpoint said about one model it serves.
use ;
use ;
/// One model an endpoint serves, with what the endpoint said about it.
///
/// **An endpoint's list is more than bare ids.** Everything the
/// provider states beside each id — the window, the ceiling, what the
/// model accepts, what it costs — is what a person chooses a model by.
/// This is that statement, carried to the page that shows the list.
///
/// **Every field from `id` to `output_price` is what the upstream said,
/// not what this city concluded.** Absence means the row said nothing; it
/// never means zero, and it is never filled in from the preset table here.
/// The ladder that picks a figure — the person's own entry, then the
/// upstream's statement, then the preset table, then the policy default
/// — runs where the call is made, and a summary that had already
/// climbed it would be a second answer to which figure won.
///
/// The last two fields are the city's answers, each from its one
/// authority: `thinking` names the rung it came from, and `canonical` is
/// `gateway::provider::identity`'s (`crates/wire/spec/Answer/Endpoints.lean` §8-92).