Commit 0c032d6
committed
feat(api): generate minimal Projects REST bindings
Implements step 2 of #683 by adding synchronous project create, list, get,
update, and delete methods, along with their public TypedDict types.
Keep the initial codegen surface intentionally narrow: select one OpenAPI tag,
slice the spec to its transitive component closure, and emit one operation and
binding module plus one model module. Binding and inline response names are
derived mechanically from operation IDs, with normalized-name collisions
rejected during generation.
The generated bindings reuse the existing transport, authentication, routing,
retry, and error handling. Coverage includes deterministic codegen, exact wire
behavior, additive responses, typing, collision validation, and a cassette-backed
end-to-end Projects flow.1 parent c67d80d commit 0c032d6
32 files changed
Lines changed: 2331 additions & 7263 deletions
File tree
- openapi
- py
- scripts
- src/braintrust
- api
- _generated
- models
- cassettes
- types
- type_tests
- tests/api_codegen
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | | - | |
| 6 | + | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
17 | 25 | | |
18 | 26 | | |
19 | 27 | | |
| |||
29 | 37 | | |
30 | 38 | | |
31 | 39 | | |
32 | | - | |
33 | | - | |
| 40 | + | |
| 41 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
45 | 38 | | |
46 | 39 | | |
47 | 40 | | |
| |||
52 | 45 | | |
53 | 46 | | |
54 | 47 | | |
55 | | - | |
56 | | - | |
| 48 | + | |
57 | 49 | | |
58 | 50 | | |
59 | 51 | | |
0 commit comments