Overview
File Change Frequency Overall
  • There are 109 files with 18,947 lines of code.
    • 1 file changed more than 100 times (2 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 5 files changed 21-50 times (1,826 lines of code)
    • 22 files changed 6-20 times (5,330 lines of code)
    • 81 files changed 1-5 times (11,789 lines of code)
<1% | 0% | 9% | 28% | 62%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 109 files with 18,947 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 3 files changed by 11-25 contributors (2,103 lines of code)
    • 9 files changed by 6-10 contributors (3,327 lines of code)
    • 48 files changed by 2-5 contributors (8,172 lines of code)
    • 49 files changed by 1 contributor (5,345 lines of code)
0% | 11% | 17% | 43% | 28%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
go, md, yml, py, json, cjs, mod, txt, gitignore, gitattributes, toml, jsonl
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
go<1% | 0% | 10% | 30% | 58%
yaml0% | 0% | 7% | 0% | 92%
py0% | 0% | 0% | 0% | 100%
cjs0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
internal<1% | 0% | 10% | 43% | 46%
azure0% | 0% | 100% | 0% | 0%
option0% | 0% | 50% | 16% | 33%
packages0% | 0% | 16% | 49% | 34%
ROOT0% | 0% | <1% | 26% | 73%
auth0% | 0% | 0% | 13% | 86%
scripts0% | 0% | 0% | 0% | 100%
responses0% | 0% | 0% | 0% | 100%
bedrock0% | 0% | 0% | 0% | 100%
webhooks0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
version.go
in internal
2 - 2024-08-01 2026-10-06 176 9 +228 / -225 dev@stainlessapi.com 284451331+openai-sdks[bot]@...
requestconfig.go
in internal/requestconfig
764 45 2024-08-01 2026-10-02 49 13 +1308 / -242 dev@stainlessapi.com dp@openai.com
8 - 2026-08-03 2026-10-06 37 5 +473 / -465 apcha@openai.com dp@openai.com
286 24 2024-08-01 2026-10-02 28 9 +530 / -102 dev@stainlessapi.com dp@openai.com
ssestream.go
in packages/ssestream
234 18 2025-01-20 2026-10-06 23 8 +549 / -274 142633134+stainless-app[bot... apcha@openai.com
azure.go
in azure
534 30 2024-08-01 2026-10-01 22 15 +1341 / -357 142633134+stainless-app[bot... dp@openai.com
encoder.go
in internal/apiform
487 23 2024-08-01 2026-10-05 20 8 +714 / -141 dev@stainlessapi.com dp@openai.com
pagination.go
in packages/pagination
433 45 2024-10-15 2026-09-10 18 4 +724 / -102 142633134+stainless-app[bot... apcha@openai.com
805 40 2024-08-21 2026-10-03 15 12 +1184 / -212 jacob@stainlessapi.com dp@openai.com
encoder.go
in packages/param
87 5 2025-03-20 2026-09-21 14 5 +213 / -82 142633134+stainless-app[bot... 664037691@qq.com
encoder.go
in internal/apiquery
359 11 2024-08-01 2026-09-21 13 7 +520 / -136 dev@stainlessapi.com 296084221+latent-9@users.no...
decoder.go
in internal/apijson
587 20 2024-08-01 2026-08-18 13 8 +996 / -249 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
encoder.go
in internal/apijson
313 14 2024-08-01 2026-08-14 12 6 +431 / -79 dev@stainlessapi.com jbeckwith@openai.com
param.go
in packages/param
93 11 2025-03-20 2026-01-23 10 3 +349 / -127 142633134+stainless-app[bot... 142633134+stainless-app[bot...
polling.go
in root
127 6 2024-10-17 2026-08-21 10 7 +258 / -175 jacob@stainlessapi.com jbeckwith@openai.com
apierror.go
in internal/apierror
61 9 2024-08-01 2026-10-02 9 5 +134 / -50 dev@stainlessapi.com dp@openai.com
union.go
in internal/apijson
191 5 2025-03-20 2026-08-18 9 5 +386 / -50 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
time.go
in internal/encoding/json
48 4 2025-03-20 2026-05-21 8 4 +89 / -26 142633134+stainless-app[bot... xuanqi@openai.com
option.go
in packages/param
85 11 2025-03-20 2025-09-30 8 4 +278 / -156 142633134+stainless-app[bot... 142633134+stainless-app[bot...
richparam.go
in internal/apiform
18 1 2025-03-20 2026-10-05 7 4 +32 / -12 142633134+stainless-app[bot... dp@openai.com
registry.go
in internal/apijson
40 3 2024-08-01 2025-05-16 7 4 +69 / -5 dev@stainlessapi.com kwhinnery@openai.com
middleware.go
in option
92 3 2025-06-16 2026-08-20 7 5 +203 / -51 142633134+stainless-app[bot... jbeckwith@openai.com
303 11 2026-04-08 2026-08-26 7 5 +388 / -38 92274156+karpetrosyan@users... jbeckwith@openai.com
encode.go
in internal/encoding/json
932 49 2025-03-20 2026-08-14 7 6 +1470 / -55 142633134+stainless-app[bot... jbeckwith@openai.com
richparam.go
in internal/apiquery
17 1 2025-03-20 2025-09-30 6 3 +34 / -14 142633134+stainless-app[bot... 142633134+stainless-app[bot...
subfield.go
in internal/apijson
59 4 2025-03-20 2025-09-30 6 3 +91 / -24 142633134+stainless-app[bot... 142633134+stainless-app[bot...
tag.go
in internal/apiform
78 4 2024-08-01 2026-03-25 6 3 +96 / -6 dev@stainlessapi.com 142633134+stainless-app[bot...
enum.go
in internal/apijson
115 5 2025-03-20 2026-03-13 6 3 +286 / -93 142633134+stainless-app[bot... apcha@openai.com
15 1 2026-04-24 2026-08-25 5 4 +58 / -21 142633134+stainless-app[bot... jbeckwith@openai.com
field.go
in internal/paramutil
25 3 2025-04-22 2025-09-30 5 3 +74 / -14 142633134+stainless-app[bot... 142633134+stainless-app[bot...
union.go
in internal/paramutil
37 1 2025-05-08 2026-08-14 5 4 +100 / -4 142633134+stainless-app[bot... jbeckwith@openai.com
field.go
in root
37 15 2024-08-01 2025-09-30 5 3 +82 / -37 dev@stainlessapi.com 142633134+stainless-app[bot...
dependabot.yml
in .github
56 - 2026-07-21 2026-09-04 5 3 +87 / -12 jbeckwith@openai.com apcha@openai.com
68 2 2026-04-08 2026-10-02 5 3 +98 / -17 92274156+karpetrosyan@users... dp@openai.com
tag.go
in internal/apijson
74 4 2024-08-01 2026-03-25 5 3 +93 / -6 dev@stainlessapi.com 142633134+stainless-app[bot...
auth.go
in bedrock
531 23 2026-07-22 2026-08-25 5 3 +631 / -44 hayden@openai.com jbeckwith@openai.com
respjson.go
in packages/respjson
30 4 2025-05-05 2025-11-03 4 2 +179 / -3 142633134+stainless-app[bot... 142633134+stainless-app[bot...
null.go
in internal/encoding/json/sentinel
39 3 2025-03-20 2025-09-30 4 2 +86 / -40 142633134+stainless-app[bot... 142633134+stainless-app[bot...
tag.go
in internal/apiquery
39 2 2024-08-01 2026-03-13 4 3 +50 / -6 dev@stainlessapi.com apcha@openai.com
query.go
in internal/apiquery
45 2 2024-08-01 2025-05-16 4 3 +65 / -10 dev@stainlessapi.com kwhinnery@openai.com
47 - 2026-08-13 2026-08-25 4 1 +58 / -0 jbeckwith@openai.com jbeckwith@openai.com
port.go
in internal/apijson
97 1 2024-08-01 2026-08-14 4 3 +139 / -19 dev@stainlessapi.com jbeckwith@openai.com
107 3 2026-08-25 2026-09-18 4 2 +120 / -5 jbeckwith@openai.com markstuart@openai.com
178 6 2026-08-25 2026-09-18 4 2 +228 / -36 jbeckwith@openai.com markstuart@openai.com
websocket.go
in internal/requestconfig
195 5 2026-09-18 2026-10-02 4 3 +260 / -33 markstuart@openai.com dp@openai.com
option_layers.go
in internal/requestconfig
240 24 2026-08-18 2026-10-01 4 3 +323 / -5 apcha@openai.com dp@openai.com
245 10 2026-04-08 2026-10-01 4 3 +328 / -48 92274156+karpetrosyan@users... dp@openai.com
270 11 2026-09-10 2026-10-06 4 1 +333 / -5 apcha@openai.com apcha@openai.com
788 34 2026-08-25 2026-09-18 4 2 +933 / -61 jbeckwith@openai.com markstuart@openai.com
custom_code_report.py
in scripts/castiron
949 25 2026-08-20 2026-10-02 4 2 +1078 / -36 apcha@openai.com apcha@openai.com
Files With Most Churn (Top 50)
Based on the number of lines added and deleted across all commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
azure.go
in azure
534 30 2024-08-01 2026-10-01 22 15 +1341 / -357 142633134+stainless-app[bot... dp@openai.com
requestconfig.go
in internal/requestconfig
764 45 2024-08-01 2026-10-02 49 13 +1308 / -242 dev@stainlessapi.com dp@openai.com
encode.go
in internal/encoding/json
932 49 2025-03-20 2026-08-14 7 6 +1470 / -55 142633134+stainless-app[bot... jbeckwith@openai.com
805 40 2024-08-21 2026-10-03 15 12 +1184 / -212 jacob@stainlessapi.com dp@openai.com
decode.go
in internal/encoding/json
959 30 2025-03-20 2026-08-14 4 3 +1334 / -9 142633134+stainless-app[bot... jbeckwith@openai.com
decoder.go
in internal/apijson
587 20 2024-08-01 2026-08-18 13 8 +996 / -249 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
custom_code_report.py
in scripts/castiron
949 25 2026-08-20 2026-10-02 4 2 +1078 / -36 apcha@openai.com apcha@openai.com
788 34 2026-08-25 2026-09-18 4 2 +933 / -61 jbeckwith@openai.com markstuart@openai.com
8 - 2026-08-03 2026-10-06 37 5 +473 / -465 apcha@openai.com dp@openai.com
encoder.go
in internal/apiform
487 23 2024-08-01 2026-10-05 20 8 +714 / -141 dev@stainlessapi.com dp@openai.com
pagination.go
in packages/pagination
433 45 2024-10-15 2026-09-10 18 4 +724 / -102 142633134+stainless-app[bot... apcha@openai.com
ssestream.go
in packages/ssestream
234 18 2025-01-20 2026-10-06 23 8 +549 / -274 142633134+stainless-app[bot... apcha@openai.com
auth.go
in bedrock
531 23 2026-07-22 2026-08-25 5 3 +631 / -44 hayden@openai.com jbeckwith@openai.com
encoder.go
in internal/apiquery
359 11 2024-08-01 2026-09-21 13 7 +520 / -136 dev@stainlessapi.com 296084221+latent-9@users.no...
589 35 2026-08-25 2026-08-25 1 1 +648 / -0 jbeckwith@openai.com jbeckwith@openai.com
286 24 2024-08-01 2026-10-02 28 9 +530 / -102 dev@stainlessapi.com dp@openai.com
stream.go
in internal/encoding/json
336 21 2025-03-20 2026-05-21 3 2 +568 / -50 142633134+stainless-app[bot... xuanqi@openai.com
scanner.go
in internal/encoding/json
437 43 2025-03-20 2025-03-20 1 1 +610 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
552 31 2026-08-25 2026-10-03 2 2 +605 / -0 jbeckwith@openai.com dp@openai.com
connection.go
in packages/websocket
433 25 2026-09-18 2026-09-28 2 1 +521 / -1 markstuart@openai.com markstuart@openai.com
encoder.go
in internal/apijson
313 14 2024-08-01 2026-08-14 12 6 +431 / -79 dev@stainlessapi.com jbeckwith@openai.com
param.go
in packages/param
93 11 2025-03-20 2026-01-23 10 3 +349 / -127 142633134+stainless-app[bot... 142633134+stainless-app[bot...
version.go
in internal
2 - 2024-08-01 2026-10-06 176 9 +228 / -225 dev@stainlessapi.com 284451331+openai-sdks[bot]@...
custom_code_budget.py
in scripts/castiron
376 11 2026-08-21 2026-10-02 3 2 +444 / -9 apcha@openai.com apcha@openai.com
union.go
in internal/apijson
191 5 2025-03-20 2026-08-18 9 5 +386 / -50 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
option.go
in packages/param
85 11 2025-03-20 2025-09-30 8 4 +278 / -156 142633134+stainless-app[bot... 142633134+stainless-app[bot...
polling.go
in root
127 6 2024-10-17 2026-08-21 10 7 +258 / -175 jacob@stainlessapi.com jbeckwith@openai.com
303 11 2026-04-08 2026-08-26 7 5 +388 / -38 92274156+karpetrosyan@users... jbeckwith@openai.com
345 11 2026-09-28 2026-09-28 1 1 +408 / -4 markstuart@openai.com markstuart@openai.com
enum.go
in internal/apijson
115 5 2025-03-20 2026-03-13 6 3 +286 / -93 142633134+stainless-app[bot... apcha@openai.com
245 10 2026-04-08 2026-10-01 4 3 +328 / -48 92274156+karpetrosyan@users... dp@openai.com
313 10 2026-08-25 2026-08-27 2 1 +360 / -15 jbeckwith@openai.com jbeckwith@openai.com
74 3 2026-10-01 2026-10-01 1 1 +359 / -0 apcha@openai.com apcha@openai.com
270 11 2026-09-10 2026-10-06 4 1 +333 / -5 apcha@openai.com apcha@openai.com
305 8 2026-10-01 2026-10-01 1 1 +337 / -0 apcha@openai.com apcha@openai.com
option_layers.go
in internal/requestconfig
240 24 2026-08-18 2026-10-01 4 3 +323 / -5 apcha@openai.com dp@openai.com
encoder.go
in packages/param
87 5 2025-03-20 2026-09-21 14 5 +213 / -82 142633134+stainless-app[bot... 664037691@qq.com
websocket.go
in internal/requestconfig
195 5 2026-09-18 2026-10-02 4 3 +260 / -33 markstuart@openai.com dp@openai.com
217 18 2026-09-18 2026-09-18 1 1 +292 / -0 markstuart@openai.com markstuart@openai.com
273 11 2026-08-25 2026-08-25 1 1 +291 / -0 jbeckwith@openai.com jbeckwith@openai.com
229 14 2026-10-01 2026-10-06 2 1 +279 / -1 apcha@openai.com apcha@openai.com
178 6 2026-08-25 2026-09-18 4 2 +228 / -36 jbeckwith@openai.com markstuart@openai.com
middleware.go
in option
92 3 2025-06-16 2026-08-20 7 5 +203 / -51 142633134+stainless-app[bot... jbeckwith@openai.com
209 12 2026-08-25 2026-08-25 1 1 +225 / -0 jbeckwith@openai.com jbeckwith@openai.com
tables.go
in internal/encoding/json
198 - 2025-03-20 2025-03-20 1 1 +218 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
indent.go
in internal/encoding/json
141 7 2025-03-20 2026-05-21 3 2 +210 / -6 142633134+stainless-app[bot... xuanqi@openai.com
origin.go
in internal/requestconfig
126 16 2026-08-25 2026-10-02 3 2 +182 / -14 jbeckwith@openai.com dp@openai.com
apierror.go
in internal/apierror
61 9 2024-08-01 2026-10-02 9 5 +134 / -50 dev@stainlessapi.com dp@openai.com
respjson.go
in packages/respjson
30 4 2025-05-05 2025-11-03 4 2 +179 / -3 142633134+stainless-app[bot... 142633134+stainless-app[bot...
149 6 2026-09-28 2026-09-28 1 1 +182 / -0 markstuart@openai.com markstuart@openai.com
Files With Most Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
azure.go
in azure
534 30 2024-08-01 2026-10-01 22 15 +1341 / -357 142633134+stainless-app[bot... dp@openai.com
requestconfig.go
in internal/requestconfig
764 45 2024-08-01 2026-10-02 49 13 +1308 / -242 dev@stainlessapi.com dp@openai.com
805 40 2024-08-21 2026-10-03 15 12 +1184 / -212 jacob@stainlessapi.com dp@openai.com
version.go
in internal
2 - 2024-08-01 2026-10-06 176 9 +228 / -225 dev@stainlessapi.com 284451331+openai-sdks[bot]@...
286 24 2024-08-01 2026-10-02 28 9 +530 / -102 dev@stainlessapi.com dp@openai.com
ssestream.go
in packages/ssestream
234 18 2025-01-20 2026-10-06 23 8 +549 / -274 142633134+stainless-app[bot... apcha@openai.com
encoder.go
in internal/apiform
487 23 2024-08-01 2026-10-05 20 8 +714 / -141 dev@stainlessapi.com dp@openai.com
decoder.go
in internal/apijson
587 20 2024-08-01 2026-08-18 13 8 +996 / -249 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
encoder.go
in internal/apiquery
359 11 2024-08-01 2026-09-21 13 7 +520 / -136 dev@stainlessapi.com 296084221+latent-9@users.no...
polling.go
in root
127 6 2024-10-17 2026-08-21 10 7 +258 / -175 jacob@stainlessapi.com jbeckwith@openai.com
encoder.go
in internal/apijson
313 14 2024-08-01 2026-08-14 12 6 +431 / -79 dev@stainlessapi.com jbeckwith@openai.com
encode.go
in internal/encoding/json
932 49 2025-03-20 2026-08-14 7 6 +1470 / -55 142633134+stainless-app[bot... jbeckwith@openai.com
8 - 2026-08-03 2026-10-06 37 5 +473 / -465 apcha@openai.com dp@openai.com
encoder.go
in packages/param
87 5 2025-03-20 2026-09-21 14 5 +213 / -82 142633134+stainless-app[bot... 664037691@qq.com
union.go
in internal/apijson
191 5 2025-03-20 2026-08-18 9 5 +386 / -50 142633134+stainless-app[bot... 93443910+charle-z@users.nor...
apierror.go
in internal/apierror
61 9 2024-08-01 2026-10-02 9 5 +134 / -50 dev@stainlessapi.com dp@openai.com
303 11 2026-04-08 2026-08-26 7 5 +388 / -38 92274156+karpetrosyan@users... jbeckwith@openai.com
middleware.go
in option
92 3 2025-06-16 2026-08-20 7 5 +203 / -51 142633134+stainless-app[bot... jbeckwith@openai.com
pagination.go
in packages/pagination
433 45 2024-10-15 2026-09-10 18 4 +724 / -102 142633134+stainless-app[bot... apcha@openai.com
time.go
in internal/encoding/json
48 4 2025-03-20 2026-05-21 8 4 +89 / -26 142633134+stainless-app[bot... xuanqi@openai.com
option.go
in packages/param
85 11 2025-03-20 2025-09-30 8 4 +278 / -156 142633134+stainless-app[bot... 142633134+stainless-app[bot...
registry.go
in internal/apijson
40 3 2024-08-01 2025-05-16 7 4 +69 / -5 dev@stainlessapi.com kwhinnery@openai.com
richparam.go
in internal/apiform
18 1 2025-03-20 2026-10-05 7 4 +32 / -12 142633134+stainless-app[bot... dp@openai.com
15 1 2026-04-24 2026-08-25 5 4 +58 / -21 142633134+stainless-app[bot... jbeckwith@openai.com
union.go
in internal/paramutil
37 1 2025-05-08 2026-08-14 5 4 +100 / -4 142633134+stainless-app[bot... jbeckwith@openai.com
param.go
in packages/param
93 11 2025-03-20 2026-01-23 10 3 +349 / -127 142633134+stainless-app[bot... 142633134+stainless-app[bot...
subfield.go
in internal/apijson
59 4 2025-03-20 2025-09-30 6 3 +91 / -24 142633134+stainless-app[bot... 142633134+stainless-app[bot...
enum.go
in internal/apijson
115 5 2025-03-20 2026-03-13 6 3 +286 / -93 142633134+stainless-app[bot... apcha@openai.com
richparam.go
in internal/apiquery
17 1 2025-03-20 2025-09-30 6 3 +34 / -14 142633134+stainless-app[bot... 142633134+stainless-app[bot...
tag.go
in internal/apiform
78 4 2024-08-01 2026-03-25 6 3 +96 / -6 dev@stainlessapi.com 142633134+stainless-app[bot...
field.go
in root
37 15 2024-08-01 2025-09-30 5 3 +82 / -37 dev@stainlessapi.com 142633134+stainless-app[bot...
68 2 2026-04-08 2026-10-02 5 3 +98 / -17 92274156+karpetrosyan@users... dp@openai.com
tag.go
in internal/apijson
74 4 2024-08-01 2026-03-25 5 3 +93 / -6 dev@stainlessapi.com 142633134+stainless-app[bot...
field.go
in internal/paramutil
25 3 2025-04-22 2025-09-30 5 3 +74 / -14 142633134+stainless-app[bot... 142633134+stainless-app[bot...
auth.go
in bedrock
531 23 2026-07-22 2026-08-25 5 3 +631 / -44 hayden@openai.com jbeckwith@openai.com
dependabot.yml
in .github
56 - 2026-07-21 2026-09-04 5 3 +87 / -12 jbeckwith@openai.com apcha@openai.com
245 10 2026-04-08 2026-10-01 4 3 +328 / -48 92274156+karpetrosyan@users... dp@openai.com
port.go
in internal/apijson
97 1 2024-08-01 2026-08-14 4 3 +139 / -19 dev@stainlessapi.com jbeckwith@openai.com
query.go
in internal/apiquery
45 2 2024-08-01 2025-05-16 4 3 +65 / -10 dev@stainlessapi.com kwhinnery@openai.com
tag.go
in internal/apiquery
39 2 2024-08-01 2026-03-13 4 3 +50 / -6 dev@stainlessapi.com apcha@openai.com
decode.go
in internal/encoding/json
959 30 2025-03-20 2026-08-14 4 3 +1334 / -9 142633134+stainless-app[bot... jbeckwith@openai.com
option_layers.go
in internal/requestconfig
240 24 2026-08-18 2026-10-01 4 3 +323 / -5 apcha@openai.com dp@openai.com
websocket.go
in internal/requestconfig
195 5 2026-09-18 2026-10-02 4 3 +260 / -33 markstuart@openai.com dp@openai.com
testutil.go
in internal/testutil
29 1 2024-08-01 2026-08-14 3 3 +34 / -3 dev@stainlessapi.com jbeckwith@openai.com
107 3 2026-08-25 2026-09-18 4 2 +120 / -5 jbeckwith@openai.com markstuart@openai.com
788 34 2026-08-25 2026-09-18 4 2 +933 / -61 jbeckwith@openai.com markstuart@openai.com
null.go
in internal/encoding/json/sentinel
39 3 2025-03-20 2025-09-30 4 2 +86 / -40 142633134+stainless-app[bot... 142633134+stainless-app[bot...
178 6 2026-08-25 2026-09-18 4 2 +228 / -36 jbeckwith@openai.com markstuart@openai.com
custom_code_report.py
in scripts/castiron
949 25 2026-08-20 2026-10-02 4 2 +1078 / -36 apcha@openai.com apcha@openai.com
respjson.go
in packages/respjson
30 4 2025-05-05 2025-11-03 4 2 +179 / -3 142633134+stainless-app[bot... 142633134+stainless-app[bot...
Files With Least Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
589 35 2026-08-25 2026-08-25 1 1 +648 / -0 jbeckwith@openai.com jbeckwith@openai.com
scanner.go
in internal/encoding/json
437 43 2025-03-20 2025-03-20 1 1 +610 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
connection.go
in packages/websocket
433 25 2026-09-18 2026-09-28 2 1 +521 / -1 markstuart@openai.com markstuart@openai.com
345 11 2026-09-28 2026-09-28 1 1 +408 / -4 markstuart@openai.com markstuart@openai.com
313 10 2026-08-25 2026-08-27 2 1 +360 / -15 jbeckwith@openai.com jbeckwith@openai.com
305 8 2026-10-01 2026-10-01 1 1 +337 / -0 apcha@openai.com apcha@openai.com
273 11 2026-08-25 2026-08-25 1 1 +291 / -0 jbeckwith@openai.com jbeckwith@openai.com
270 11 2026-09-10 2026-10-06 4 1 +333 / -5 apcha@openai.com apcha@openai.com
229 14 2026-10-01 2026-10-06 2 1 +279 / -1 apcha@openai.com apcha@openai.com
217 18 2026-09-18 2026-09-18 1 1 +292 / -0 markstuart@openai.com markstuart@openai.com
209 12 2026-08-25 2026-08-25 1 1 +225 / -0 jbeckwith@openai.com jbeckwith@openai.com
tables.go
in internal/encoding/json
198 - 2025-03-20 2025-03-20 1 1 +218 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
149 6 2026-09-28 2026-09-28 1 1 +182 / -0 markstuart@openai.com markstuart@openai.com
retry_scope.go
in internal/requestconfig
114 12 2026-08-25 2026-08-25 1 1 +149 / -0 jbeckwith@openai.com jbeckwith@openai.com
111 4 2026-08-21 2026-08-21 1 1 +143 / -0 apcha@openai.com apcha@openai.com
106 6 2026-08-27 2026-08-27 1 1 +121 / -0 jbeckwith@openai.com jbeckwith@openai.com
provider_headers.go
in internal/requestconfig
98 4 2026-10-01 2026-10-01 1 1 +113 / -0 dp@openai.com dp@openai.com
74 3 2026-10-01 2026-10-01 1 1 +359 / -0 apcha@openai.com apcha@openai.com
72 3 2026-09-10 2026-10-05 2 1 +83 / -4 apcha@openai.com apcha@openai.com
custom_code_test_support.py
in scripts/castiron
60 6 2026-10-02 2026-10-02 1 1 +74 / -0 apcha@openai.com apcha@openai.com
60 2 2026-08-25 2026-08-25 1 1 +67 / -0 jbeckwith@openai.com jbeckwith@openai.com
update.cjs
in scripts/steady
53 - 2026-09-04 2026-09-04 1 1 +56 / -0 apcha@openai.com apcha@openai.com
47 2 2026-08-21 2026-08-21 1 1 +58 / -0 apcha@openai.com apcha@openai.com
47 - 2026-08-13 2026-08-25 4 1 +58 / -0 jbeckwith@openai.com jbeckwith@openai.com
transport.go
in internal/websockettransport
44 2 2026-09-18 2026-09-18 1 1 +53 / -0 markstuart@openai.com markstuart@openai.com
shims.go
in internal/encoding/json/shims
42 4 2025-03-20 2025-09-19 3 1 +114 / -1 142633134+stainless-app[bot... 142633134+stainless-app[bot...
39 1 2026-08-21 2026-08-21 1 1 +49 / -0 apcha@openai.com apcha@openai.com
github_publisher.cjs
in scripts/castiron/fixtures
36 4 2026-10-02 2026-10-02 1 1 +38 / -0 apcha@openai.com apcha@openai.com
fold.go
in internal/encoding/json
34 3 2025-03-20 2025-03-20 1 1 +48 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
bedrock.go
in bedrock
34 1 2026-07-22 2026-08-17 2 1 +117 / -5 hayden@openai.com hayden@openai.com
types.go
in auth
30 - 2026-04-08 2026-04-08 1 1 +37 / -0 92274156+karpetrosyan@users... 92274156+karpetrosyan@users...
29 3 2026-08-21 2026-08-21 1 1 +34 / -0 apcha@openai.com apcha@openai.com
28 1 2026-10-01 2026-10-01 1 1 +39 / -0 dp@openai.com dp@openai.com
28 1 2026-08-21 2026-08-21 1 1 +34 / -0 jbeckwith@openai.com jbeckwith@openai.com
http_header.go
in internal/requestconfig
27 2 2026-08-26 2026-08-26 1 1 +33 / -0 jbeckwith@openai.com jbeckwith@openai.com
source-sha256.cjs
in scripts/steady
27 1 2026-09-04 2026-09-04 1 1 +30 / -0 apcha@openai.com apcha@openai.com
tags.go
in internal/encoding/json
23 2 2025-03-20 2025-03-20 1 1 +38 / -0 142633134+stainless-app[bot... 142633134+stainless-app[bot...
19 1 2026-10-06 2026-10-06 1 1 +22 / -0 apcha@openai.com apcha@openai.com
publish.cjs
in scripts/steady
18 1 2026-09-04 2026-09-04 1 1 +22 / -0 apcha@openai.com apcha@openai.com
15 - 2026-10-05 2026-10-05 1 1 +25 / -0 apcha@openai.com apcha@openai.com
13 1 2026-08-21 2026-08-21 1 1 +15 / -0 apcha@openai.com apcha@openai.com
11 1 2026-09-10 2026-09-10 1 1 +15 / -0 apcha@openai.com apcha@openai.com
dial_js.go
in packages/websocket
10 1 2026-09-18 2026-09-18 1 1 +13 / -0 markstuart@openai.com markstuart@openai.com
dial.go
in packages/websocket
9 1 2026-09-18 2026-09-18 1 1 +14 / -0 markstuart@openai.com markstuart@openai.com
websocket.go
in option
6 - 2026-09-18 2026-09-18 1 1 +18 / -0 markstuart@openai.com markstuart@openai.com
5 1 2026-10-01 2026-10-02 2 1 +17 / -6 dp@openai.com dp@openai.com
form.go
in internal/apiform
4 - 2024-08-01 2024-08-01 1 1 +5 / -0 dev@stainlessapi.com dev@stainlessapi.com
ruff.toml
in scripts/castiron
3 - 2026-08-20 2026-08-20 1 1 +3 / -0 apcha@openai.com apcha@openai.com
2 - 2026-10-06 2026-10-06 1 1 +5 / -0 dp@openai.com dp@openai.com
custom_code_report.py
in scripts/castiron
949 25 2026-08-20 2026-10-02 4 2 +1078 / -36 apcha@openai.com apcha@openai.com
Correlations

File Size vs. Number of Changes: 109 points

agents_stream.go x: 270 lines of code y: 4 # changes beta_agents_creation_stream.go x: 19 lines of code y: 1 # changes beta_agents_result.go x: 229 lines of code y: 2 # changes packages/ssestream/ssestream.go x: 234 lines of code y: 23 # changes internal/version.go x: 2 lines of code y: 176 # changes .castiron.stats.yml x: 8 lines of code y: 37 # changes responses/code_interpreter_network_policy.go x: 2 lines of code y: 1 # changes agents_tools.go x: 72 lines of code y: 2 # changes beta_agents_tool_error.go x: 15 lines of code y: 1 # changes internal/apiform/encoder.go x: 487 lines of code y: 20 # changes internal/apiform/richparam.go x: 18 lines of code y: 7 # changes streamaccumulator.go x: 805 lines of code y: 15 # changes streamaccumulator_limits.go x: 552 lines of code y: 2 # changes auth/middleware.go x: 68 lines of code y: 5 # changes internal/requestconfig/origin.go x: 126 lines of code y: 3 # changes internal/requestconfig/requestconfig.go x: 764 lines of code y: 49 # changes internal/requestconfig/websocket.go x: 195 lines of code y: 4 # changes option/requestoption.go x: 286 lines of code y: 28 # changes option/unsafe_http.go x: 5 lines of code y: 2 # changes scripts/castiron/custom_code_budget.py x: 376 lines of code y: 3 # changes scripts/castiron/custom_code_report.py x: 949 lines of code y: 4 # changes scripts/castiron/custom_code_test_support.py x: 60 lines of code y: 1 # changes scripts/castiron/fixtures/github_publisher.cjs x: 36 lines of code y: 1 # changes internal/apierror/apierror.go x: 61 lines of code y: 9 # changes beta_agents_files.go x: 74 lines of code y: 1 # changes auth/metadata.go x: 28 lines of code y: 1 # changes auth/subjecttokenprovider.go x: 245 lines of code y: 4 # changes azure/azure.go x: 534 lines of code y: 22 # changes beta_agents_output.go x: 305 lines of code y: 1 # changes internal/requestconfig/option_layers.go x: 240 lines of code y: 4 # changes internal/requestconfig/provider_headers.go x: 98 lines of code y: 1 # changes responses/response_accumulator.go x: 345 lines of code y: 1 # changes responses/response_accumulator_details.go x: 149 lines of code y: 1 # changes packages/websocket/connection.go x: 433 lines of code y: 2 # changes internal/apiquery/encoder.go x: 359 lines of code y: 13 # changes packages/param/encoder.go x: 87 lines of code y: 14 # changes auth/x509middleware.go x: 107 lines of code y: 4 # changes auth/x509transport.go x: 788 lines of code y: 4 # changes internal/requestconfig/clone.go x: 66 lines of code y: 2 # changes internal/websockettransport/transport.go x: 44 lines of code y: 1 # changes option/websocket.go x: 6 lines of code y: 1 # changes option/x509workloadidentity.go x: 178 lines of code y: 4 # changes packages/websocket/dial.go x: 9 lines of code y: 1 # changes responses/responses_websocket.go x: 217 lines of code y: 1 # changes agents_message.go x: 11 lines of code y: 1 # changes packages/pagination/pagination.go x: 433 lines of code y: 18 # changes .github/dependabot.yml x: 56 lines of code y: 5 # changes scripts/steady/source-sha256.cjs x: 27 lines of code y: 1 # changes scripts/steady/update.cjs x: 53 lines of code y: 1 # changes auth/error.go x: 27 lines of code y: 2 # changes auth/workloadbearerhistory.go x: 106 lines of code y: 1 # changes auth/x509workloadidentity.go x: 313 lines of code y: 2 # changes auth/workloadidentity.go x: 303 lines of code y: 7 # changes internal/requestconfig/retry_scope.go x: 114 lines of code y: 1 # changes default_http_client.go x: 15 lines of code y: 5 # changes streamaccumulator_logprob.go x: 589 lines of code y: 1 # changes streamaccumulator_ownership.go x: 209 lines of code y: 1 # changes auth/x509exchange.go x: 273 lines of code y: 1 # changes bedrock/auth.go x: 531 lines of code y: 5 # changes .golangci.yml x: 47 lines of code y: 4 # changes webhooks/webhook_helpers.go x: 111 lines of code y: 1 # changes responses/response_helpers.go x: 13 lines of code y: 1 # changes chatcompletion_helpers.go x: 39 lines of code y: 1 # changes polling.go x: 127 lines of code y: 10 # changes vectorstorefilebatch_helpers.go x: 47 lines of code y: 1 # changes option/middleware.go x: 92 lines of code y: 7 # changes internal/apijson/decoder.go x: 587 lines of code y: 13 # changes internal/apijson/union.go x: 191 lines of code y: 9 # changes bedrock/bedrock.go x: 34 lines of code y: 2 # changes internal/encoding/json/decode.go x: 959 lines of code y: 4 # changes internal/testutil/testutil.go x: 29 lines of code y: 3 # changes internal/apijson/encoder.go x: 313 lines of code y: 12 # changes internal/apijson/port.go x: 97 lines of code y: 4 # changes internal/encoding/json/encode.go x: 932 lines of code y: 7 # changes internal/paramutil/union.go x: 37 lines of code y: 5 # changes internal/encoding/json/indent.go x: 141 lines of code y: 3 # changes internal/encoding/json/opt.go x: 13 lines of code y: 2 # changes internal/encoding/json/stream.go x: 336 lines of code y: 3 # changes internal/encoding/json/time.go x: 48 lines of code y: 8 # changes auth/types.go x: 30 lines of code y: 1 # changes internal/apiform/tag.go x: 78 lines of code y: 6 # changes internal/apijson/tag.go x: 74 lines of code y: 5 # changes internal/apijson/enum.go x: 115 lines of code y: 6 # changes internal/apiquery/tag.go x: 39 lines of code y: 4 # changes packages/param/param.go x: 93 lines of code y: 10 # changes packages/respjson/respjson.go x: 30 lines of code y: 4 # changes internal/apijson/subfield.go x: 59 lines of code y: 6 # changes internal/apiquery/richparam.go x: 17 lines of code y: 6 # changes internal/paramutil/field.go x: 25 lines of code y: 5 # changes packages/param/null.go x: 8 lines of code y: 3 # changes packages/param/option.go x: 85 lines of code y: 8 # changes internal/encoding/json/shims/shims.go x: 42 lines of code y: 3 # changes internal/apijson/registry.go x: 40 lines of code y: 7 # changes internal/apiquery/query.go x: 45 lines of code y: 4 # changes internal/apijson/field.go x: 16 lines of code y: 2 # changes internal/encoding/json/fold.go x: 34 lines of code y: 1 # changes internal/encoding/json/scanner.go x: 437 lines of code y: 1 # changes internal/encoding/json/tables.go x: 198 lines of code y: 1 # changes internal/encoding/json/tags.go x: 23 lines of code y: 1 # changes internal/apiform/form.go x: 4 lines of code y: 1 # changes
176.0
# changes
  min: 1.0
  average: 6.75
  25th percentile: 1.0
  median: 3.0
  75th percentile: 6.0
  max: 176.0
0 959.0
lines of code
min: 2.0 | average: 173.83 | 25th percentile: 28.5 | median: 72.0 | 75th percentile: 242.5 | max: 959.0

Number of Contributors vs. Number of Changes: 109 points

agents_stream.go x: 1 # contributors y: 4 # changes beta_agents_creation_stream.go x: 1 # contributors y: 1 # changes beta_agents_result.go x: 1 # contributors y: 2 # changes packages/ssestream/ssestream.go x: 8 # contributors y: 23 # changes internal/version.go x: 9 # contributors y: 176 # changes .castiron.stats.yml x: 5 # contributors y: 37 # changes internal/apiform/encoder.go x: 8 # contributors y: 20 # changes internal/apiform/richparam.go x: 4 # contributors y: 7 # changes streamaccumulator.go x: 12 # contributors y: 15 # changes streamaccumulator_limits.go x: 2 # contributors y: 2 # changes auth/middleware.go x: 3 # contributors y: 5 # changes internal/requestconfig/origin.go x: 2 # contributors y: 3 # changes internal/requestconfig/requestconfig.go x: 13 # contributors y: 49 # changes internal/requestconfig/websocket.go x: 3 # contributors y: 4 # changes option/requestoption.go x: 9 # contributors y: 28 # changes scripts/castiron/custom_code_report.py x: 2 # contributors y: 4 # changes internal/apierror/apierror.go x: 5 # contributors y: 9 # changes azure/azure.go x: 15 # contributors y: 22 # changes internal/apiquery/encoder.go x: 7 # contributors y: 13 # changes packages/param/encoder.go x: 5 # contributors y: 14 # changes packages/pagination/pagination.go x: 4 # contributors y: 18 # changes auth/workloadidentity.go x: 5 # contributors y: 7 # changes default_http_client.go x: 4 # contributors y: 5 # changes polling.go x: 7 # contributors y: 10 # changes internal/apijson/decoder.go x: 8 # contributors y: 13 # changes internal/testutil/testutil.go x: 3 # contributors y: 3 # changes internal/apijson/encoder.go x: 6 # contributors y: 12 # changes internal/encoding/json/encode.go x: 6 # contributors y: 7 # changes internal/encoding/json/time.go x: 4 # contributors y: 8 # changes internal/apiform/tag.go x: 3 # contributors y: 6 # changes packages/param/param.go x: 3 # contributors y: 10 # changes internal/encoding/json/shims/shims.go x: 1 # contributors y: 3 # changes
176.0
# changes
  min: 1.0
  average: 6.75
  25th percentile: 1.0
  median: 3.0
  75th percentile: 6.0
  max: 176.0
0 15.0
# contributors
min: 1.0 | average: 2.79 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 3.0 | max: 15.0

Number of Contributors vs. File Size: 109 points

agents_stream.go x: 1 # contributors y: 270 lines of code beta_agents_creation_stream.go x: 1 # contributors y: 19 lines of code beta_agents_result.go x: 1 # contributors y: 229 lines of code packages/ssestream/ssestream.go x: 8 # contributors y: 234 lines of code internal/version.go x: 9 # contributors y: 2 lines of code .castiron.stats.yml x: 5 # contributors y: 8 lines of code responses/code_interpreter_network_policy.go x: 1 # contributors y: 2 lines of code agents_tools.go x: 1 # contributors y: 72 lines of code beta_agents_tool_error.go x: 1 # contributors y: 15 lines of code internal/apiform/encoder.go x: 8 # contributors y: 487 lines of code internal/apiform/richparam.go x: 4 # contributors y: 18 lines of code streamaccumulator.go x: 12 # contributors y: 805 lines of code streamaccumulator_limits.go x: 2 # contributors y: 552 lines of code auth/middleware.go x: 3 # contributors y: 68 lines of code internal/requestconfig/origin.go x: 2 # contributors y: 126 lines of code internal/requestconfig/requestconfig.go x: 13 # contributors y: 764 lines of code internal/requestconfig/websocket.go x: 3 # contributors y: 195 lines of code option/requestoption.go x: 9 # contributors y: 286 lines of code option/unsafe_http.go x: 1 # contributors y: 5 lines of code scripts/castiron/custom_code_budget.py x: 2 # contributors y: 376 lines of code scripts/castiron/custom_code_report.py x: 2 # contributors y: 949 lines of code scripts/castiron/custom_code_test_support.py x: 1 # contributors y: 60 lines of code scripts/castiron/fixtures/github_publisher.cjs x: 1 # contributors y: 36 lines of code internal/apierror/apierror.go x: 5 # contributors y: 61 lines of code auth/metadata.go x: 1 # contributors y: 28 lines of code auth/subjecttokenprovider.go x: 3 # contributors y: 245 lines of code azure/azure.go x: 15 # contributors y: 534 lines of code beta_agents_output.go x: 1 # contributors y: 305 lines of code internal/requestconfig/option_layers.go x: 3 # contributors y: 240 lines of code internal/requestconfig/provider_headers.go x: 1 # contributors y: 98 lines of code responses/response_accumulator.go x: 1 # contributors y: 345 lines of code responses/response_accumulator_details.go x: 1 # contributors y: 149 lines of code packages/websocket/connection.go x: 1 # contributors y: 433 lines of code internal/apiquery/encoder.go x: 7 # contributors y: 359 lines of code packages/param/encoder.go x: 5 # contributors y: 87 lines of code auth/x509middleware.go x: 2 # contributors y: 107 lines of code auth/x509transport.go x: 2 # contributors y: 788 lines of code internal/requestconfig/clone.go x: 2 # contributors y: 66 lines of code internal/websockettransport/transport.go x: 1 # contributors y: 44 lines of code option/x509workloadidentity.go x: 2 # contributors y: 178 lines of code packages/websocket/dial.go x: 1 # contributors y: 9 lines of code responses/responses_websocket.go x: 1 # contributors y: 217 lines of code packages/pagination/pagination.go x: 4 # contributors y: 433 lines of code .github/dependabot.yml x: 3 # contributors y: 56 lines of code scripts/steady/publish.cjs x: 1 # contributors y: 18 lines of code scripts/steady/update.cjs x: 1 # contributors y: 53 lines of code auth/error.go x: 2 # contributors y: 27 lines of code auth/workloadbearerhistory.go x: 1 # contributors y: 106 lines of code auth/x509workloadidentity.go x: 1 # contributors y: 313 lines of code auth/workloadidentity.go x: 5 # contributors y: 303 lines of code internal/requestconfig/retry_scope.go x: 1 # contributors y: 114 lines of code default_http_client.go x: 4 # contributors y: 15 lines of code streamaccumulator_logprob.go x: 1 # contributors y: 589 lines of code streamaccumulator_ownership.go x: 1 # contributors y: 209 lines of code auth/x509exchange.go x: 1 # contributors y: 273 lines of code bedrock/auth.go x: 3 # contributors y: 531 lines of code .golangci.yml x: 1 # contributors y: 47 lines of code webhooks/webhook_helpers.go x: 1 # contributors y: 111 lines of code chatcompletion_helpers.go x: 1 # contributors y: 39 lines of code polling.go x: 7 # contributors y: 127 lines of code option/middleware.go x: 5 # contributors y: 92 lines of code internal/apijson/decoder.go x: 8 # contributors y: 587 lines of code internal/apijson/union.go x: 5 # contributors y: 191 lines of code internal/encoding/json/decode.go x: 3 # contributors y: 959 lines of code internal/testutil/testutil.go x: 3 # contributors y: 29 lines of code internal/apijson/encoder.go x: 6 # contributors y: 313 lines of code internal/apijson/port.go x: 3 # contributors y: 97 lines of code internal/encoding/json/encode.go x: 6 # contributors y: 932 lines of code internal/paramutil/union.go x: 4 # contributors y: 37 lines of code internal/encoding/json/indent.go x: 2 # contributors y: 141 lines of code internal/encoding/json/opt.go x: 2 # contributors y: 13 lines of code internal/encoding/json/stream.go x: 2 # contributors y: 336 lines of code internal/encoding/json/time.go x: 4 # contributors y: 48 lines of code internal/apiform/tag.go x: 3 # contributors y: 78 lines of code internal/apijson/tag.go x: 3 # contributors y: 74 lines of code internal/apijson/enum.go x: 3 # contributors y: 115 lines of code internal/apiquery/tag.go x: 3 # contributors y: 39 lines of code packages/param/param.go x: 3 # contributors y: 93 lines of code field.go x: 3 # contributors y: 37 lines of code internal/apijson/subfield.go x: 3 # contributors y: 59 lines of code internal/apiquery/richparam.go x: 3 # contributors y: 17 lines of code internal/encoding/json/sentinel/null.go x: 2 # contributors y: 39 lines of code internal/paramutil/field.go x: 3 # contributors y: 25 lines of code packages/param/null.go x: 2 # contributors y: 8 lines of code packages/param/option.go x: 4 # contributors y: 85 lines of code internal/apijson/registry.go x: 4 # contributors y: 40 lines of code internal/apiquery/query.go x: 3 # contributors y: 45 lines of code internal/apijson/field.go x: 2 # contributors y: 16 lines of code internal/encoding/json/scanner.go x: 1 # contributors y: 437 lines of code internal/encoding/json/tables.go x: 1 # contributors y: 198 lines of code internal/encoding/json/tags.go x: 1 # contributors y: 23 lines of code
959.0
lines of code
  min: 2.0
  average: 173.83
  25th percentile: 28.5
  median: 72.0
  75th percentile: 242.5
  max: 959.0
0 15.0
# contributors
min: 1.0 | average: 2.79 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 3.0 | max: 15.0

Number of Changes vs. Line Churn: 657 points

agents_stream.go x: 4 # changes y: 338 line churn beta_agents_creation_stream.go x: 1 # changes y: 22 line churn beta_agents_result.go x: 2 # changes y: 280 line churn betaagentsession.go x: 10 # changes y: 409 line churn packages/ssestream/ssestream.go x: 23 # changes y: 823 line churn .release-please-manifest.json x: 175 # changes y: 449 line churn CHANGELOG.md x: 175 # changes y: 4044 line churn README.md x: 209 # changes y: 3800 line churn internal/version.go x: 176 # changes y: 453 line churn .castiron.stats.yml x: 37 # changes y: 938 line churn api.md x: 92 # changes y: 7708 line churn api_reference/openapi.transformed.yml x: 34 # changes y: 116436 line churn betaresponse.go x: 33 # changes y: 40738 line churn client.go x: 35 # changes y: 412 line churn decision.go x: 1 # changes y: 845 line churn responses/response.go x: 129 # changes y: 67217 line churn shared/constant/constants.go x: 62 # changes y: 3365 line churn adminorganizationusage.go x: 15 # changes y: 13889 line churn betaagent.go x: 10 # changes y: 9832 line churn betaagentenvironmenttemplate.go x: 6 # changes y: 826 line churn betathread_test.go x: 34 # changes y: 2278 line churn betathreadrun_test.go x: 35 # changes y: 1810 line churn chatcompletion.go x: 99 # changes y: 14375 line churn finetuningjob.go x: 39 # changes y: 6016 line churn gradergradermodel.go x: 26 # changes y: 5783 line churn image.go x: 44 # changes y: 3733 line churn image_test.go x: 25 # changes y: 280 line churn moderation_test.go x: 12 # changes y: 79 line churn shared/shared.go x: 61 # changes y: 5170 line churn video.go x: 30 # changes y: 1524 line churn .github/workflows/ci.yml x: 34 # changes y: 594 line churn agents_helpers_test.go x: 3 # changes y: 666 line churn internal/apiform/encoder.go x: 20 # changes y: 855 line churn internal/apiform/richparam.go x: 7 # changes y: 44 line churn streamaccumulator.go x: 15 # changes y: 1396 line churn streamaccumulator_limits.go x: 2 # changes y: 605 line churn auth/middleware.go x: 5 # changes y: 115 line churn internal/requestconfig/origin.go x: 3 # changes y: 196 line churn internal/requestconfig/requestconfig.go x: 49 # changes y: 1550 line churn option/requestoption.go x: 28 # changes y: 632 line churn plaintext_endpoint_test.go x: 2 # changes y: 1158 line churn scripts/castiron/custom_code_report.py x: 4 # changes y: 1114 line churn scripts/castiron/test_custom_code_budget.py x: 3 # changes y: 1228 line churn scripts/castiron/test_custom_code_report.py x: 5 # changes y: 1475 line churn CONTRIBUTING.md x: 15 # changes y: 263 line churn examples/audio-text-to-speech/main.go x: 9 # changes y: 92 line churn examples/chat-completion-accumulating/main.go x: 8 # changes y: 262 line churn examples/chat-completion-streaming/main.go x: 6 # changes y: 61 line churn aliases.go x: 51 # changes y: 2267 line churn audio.go x: 13 # changes y: 126 line churn audiospeech.go x: 31 # changes y: 626 line churn audiotranscription.go x: 37 # changes y: 2165 line churn audiotranslation.go x: 23 # changes y: 337 line churn betaassistant_test.go x: 32 # changes y: 1450 line churn containerfile.go x: 18 # changes y: 783 line churn conversations/aliases.go x: 33 # changes y: 1908 line churn file.go x: 45 # changes y: 1159 line churn live/aliases.go x: 5 # changes y: 1290 line churn realtime/aliases.go x: 31 # changes y: 1905 line churn realtime/call.go x: 14 # changes y: 266 line churn realtime/realtime.go x: 34 # changes y: 6961 line churn responses/aliases.go x: 44 # changes y: 1791 line churn webhooks/aliases.go x: 36 # changes y: 1885 line churn webhooks/webhook.go x: 22 # changes y: 4680 line churn adminorganizationprojectspendalert_test.go x: 4 # changes y: 466 line churn audiospeech_test.go x: 17 # changes y: 118 line churn audiotranslation_test.go x: 11 # changes y: 86 line churn betathreadmessage_test.go x: 18 # changes y: 1156 line churn betathreadrunstep_test.go x: 11 # changes y: 500 line churn chatcompletion_test.go x: 47 # changes y: 683 line churn file_test.go x: 16 # changes y: 260 line churn realtime/clientsecret_test.go x: 18 # changes y: 403 line churn responses/response_test.go x: 47 # changes y: 450 line churn streamaccumulator_test.go x: 10 # changes y: 854 line churn usage_test.go x: 21 # changes y: 114 line churn vectorstore_test.go x: 12 # changes y: 714 line churn vectorstorefilebatch_test.go x: 13 # changes y: 520 line churn azure/azure.go x: 22 # changes y: 1698 line churn azure/azure_test.go x: 17 # changes y: 2529 line churn internal/requestconfig/requestconfig_test.go x: 9 # changes y: 521 line churn adminorganizationauditlog.go x: 13 # changes y: 2847 line churn conversations/conversation.go x: 26 # changes y: 2347 line churn conversations/item.go x: 29 # changes y: 2773 line churn packages/param/encoder_test.go x: 15 # changes y: 922 line churn .github/workflows/go-version-review.yml x: 6 # changes y: 1027 line churn beta.go x: 19 # changes y: 89 line churn responses/inputitem.go x: 22 # changes y: 284 line churn responses/inputtoken.go x: 16 # changes y: 469 line churn realtime/clientsecret.go x: 27 # changes y: 6593 line churn MIGRATION.md x: 10 # changes y: 1842 line churn live/live.go x: 1 # changes y: 1531 line churn batch.go x: 33 # changes y: 1323 line churn betaassistant.go x: 58 # changes y: 20367 line churn betathread.go x: 50 # changes y: 15607 line churn betathreadmessage.go x: 48 # changes y: 14903 line churn betathreadrun.go x: 50 # changes y: 8435 line churn betathreadrunstep.go x: 38 # changes y: 12488 line churn completion.go x: 30 # changes y: 1354 line churn embedding.go x: 21 # changes y: 708 line churn finetuningalphagrader.go x: 17 # changes y: 1648 line churn finetuningcheckpointpermission.go x: 26 # changes y: 941 line churn moderation.go x: 25 # changes y: 1949 line churn upload.go x: 29 # changes y: 686 line churn vectorstore.go x: 30 # changes y: 5228 line churn vectorstorefile.go x: 29 # changes y: 2737 line churn vectorstorefilebatch.go x: 30 # changes y: 1958 line churn scripts/test-mock x: 2 # changes y: 1412 line churn auth/x509transport_test.go x: 1 # changes y: 977 line churn bedrock/auth.go x: 5 # changes y: 675 line churn internal/apiform/form_test.go x: 14 # changes y: 808 line churn internal/apijson/decoder.go x: 13 # changes y: 1245 line churn adminorganizationcertificate.go x: 7 # changes y: 589 line churn betachatkitthread.go x: 14 # changes y: 1968 line churn chat.go x: 20 # changes y: 167 line churn container.go x: 17 # changes y: 1175 line churn finetuningmethod.go x: 15 # changes y: 3719 line churn auth_test.go x: 8 # changes y: 715 line churn internal/encoding/json/encode.go x: 7 # changes y: 1525 line churn .stats.yml x: 189 # changes y: 1294 line churn eval.go x: 2 # changes y: 4676 line churn evalrun.go x: 2 # changes y: 6338 line churn betavectorstore.go x: 12 # changes y: 3350 line churn betavectorstorefilebatch.go x: 10 # changes y: 1700 line churn
116436.0
line churn
  min: 1.0
  average: 960.51
  25th percentile: 77.0
  median: 182.0
  75th percentile: 464.0
  max: 116436.0
0 209.0
# changes
min: 1.0 | average: 8.61 | 25th percentile: 1.0 | median: 3.0 | 75th percentile: 8.0 | max: 209.0

Number of Contributors vs. Line Churn: 109 points

agents_stream.go x: 1 # contributors y: 338 line churn beta_agents_creation_stream.go x: 1 # contributors y: 22 line churn beta_agents_result.go x: 1 # contributors y: 280 line churn packages/ssestream/ssestream.go x: 8 # contributors y: 823 line churn internal/version.go x: 9 # contributors y: 453 line churn .castiron.stats.yml x: 5 # contributors y: 938 line churn responses/code_interpreter_network_policy.go x: 1 # contributors y: 5 line churn agents_tools.go x: 1 # contributors y: 87 line churn internal/apiform/encoder.go x: 8 # contributors y: 855 line churn internal/apiform/richparam.go x: 4 # contributors y: 44 line churn streamaccumulator.go x: 12 # contributors y: 1396 line churn streamaccumulator_limits.go x: 2 # contributors y: 605 line churn auth/middleware.go x: 3 # contributors y: 115 line churn internal/requestconfig/origin.go x: 2 # contributors y: 196 line churn internal/requestconfig/requestconfig.go x: 13 # contributors y: 1550 line churn internal/requestconfig/websocket.go x: 3 # contributors y: 293 line churn option/requestoption.go x: 9 # contributors y: 632 line churn scripts/castiron/custom_code_budget.py x: 2 # contributors y: 453 line churn scripts/castiron/custom_code_report.py x: 2 # contributors y: 1114 line churn scripts/castiron/custom_code_test_support.py x: 1 # contributors y: 74 line churn scripts/castiron/fixtures/github_publisher.cjs x: 1 # contributors y: 38 line churn internal/apierror/apierror.go x: 5 # contributors y: 184 line churn beta_agents_files.go x: 1 # contributors y: 359 line churn auth/subjecttokenprovider.go x: 3 # contributors y: 376 line churn azure/azure.go x: 15 # contributors y: 1698 line churn internal/requestconfig/option_layers.go x: 3 # contributors y: 328 line churn internal/requestconfig/provider_headers.go x: 1 # contributors y: 113 line churn responses/response_accumulator.go x: 1 # contributors y: 412 line churn responses/response_accumulator_details.go x: 1 # contributors y: 182 line churn packages/websocket/connection.go x: 1 # contributors y: 522 line churn internal/apiquery/encoder.go x: 7 # contributors y: 656 line churn packages/param/encoder.go x: 5 # contributors y: 295 line churn auth/x509middleware.go x: 2 # contributors y: 125 line churn auth/x509transport.go x: 2 # contributors y: 994 line churn internal/requestconfig/clone.go x: 2 # contributors y: 74 line churn internal/websockettransport/transport.go x: 1 # contributors y: 53 line churn option/websocket.go x: 1 # contributors y: 18 line churn option/x509workloadidentity.go x: 2 # contributors y: 264 line churn packages/websocket/dial_js.go x: 1 # contributors y: 13 line churn responses/responses_websocket.go x: 1 # contributors y: 292 line churn packages/pagination/pagination.go x: 4 # contributors y: 826 line churn .github/dependabot.yml x: 3 # contributors y: 99 line churn scripts/steady/source-sha256.cjs x: 1 # contributors y: 30 line churn scripts/steady/update.cjs x: 1 # contributors y: 56 line churn auth/error.go x: 2 # contributors y: 39 line churn auth/workloadbearerhistory.go x: 1 # contributors y: 121 line churn auth/x509workloadidentity.go x: 1 # contributors y: 375 line churn auth/workloadidentity.go x: 5 # contributors y: 426 line churn internal/requestconfig/retry_scope.go x: 1 # contributors y: 149 line churn default_http_client.go x: 4 # contributors y: 79 line churn streamaccumulator_logprob.go x: 1 # contributors y: 648 line churn streamaccumulator_ownership.go x: 1 # contributors y: 225 line churn streamaccumulator_reconciliation.go x: 1 # contributors y: 67 line churn bedrock/auth.go x: 3 # contributors y: 675 line churn webhooks/webhook_helpers.go x: 1 # contributors y: 143 line churn polling.go x: 7 # contributors y: 433 line churn option/middleware.go x: 5 # contributors y: 254 line churn internal/apijson/decoder.go x: 8 # contributors y: 1245 line churn internal/apijson/union.go x: 5 # contributors y: 436 line churn internal/encoding/json/decode.go x: 3 # contributors y: 1343 line churn internal/testutil/testutil.go x: 3 # contributors y: 37 line churn internal/apijson/encoder.go x: 6 # contributors y: 510 line churn internal/apijson/port.go x: 3 # contributors y: 158 line churn internal/encoding/json/encode.go x: 6 # contributors y: 1525 line churn internal/paramutil/union.go x: 4 # contributors y: 104 line churn internal/encoding/json/indent.go x: 2 # contributors y: 216 line churn internal/encoding/json/opt.go x: 2 # contributors y: 48 line churn internal/encoding/json/stream.go x: 2 # contributors y: 618 line churn internal/encoding/json/time.go x: 4 # contributors y: 115 line churn internal/apiform/tag.go x: 3 # contributors y: 102 line churn internal/apiquery/tag.go x: 3 # contributors y: 56 line churn packages/param/param.go x: 3 # contributors y: 476 line churn packages/respjson/respjson.go x: 2 # contributors y: 182 line churn internal/apiquery/richparam.go x: 3 # contributors y: 48 line churn internal/paramutil/field.go x: 3 # contributors y: 88 line churn packages/param/null.go x: 2 # contributors y: 27 line churn packages/param/option.go x: 4 # contributors y: 434 line churn internal/encoding/json/shims/shims.go x: 1 # contributors y: 115 line churn internal/apiquery/query.go x: 3 # contributors y: 75 line churn internal/apijson/field.go x: 2 # contributors y: 59 line churn internal/encoding/json/scanner.go x: 1 # contributors y: 610 line churn internal/encoding/json/tables.go x: 1 # contributors y: 218 line churn
1698.0
line churn
  min: 3.0
  average: 302.49
  25th percentile: 48.5
  median: 125.0
  75th percentile: 429.5
  max: 1698.0
0 15.0
# contributors
min: 1.0 | average: 2.79 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 3.0 | max: 15.0

File Size vs. Line Churn: 109 points

agents_stream.go x: 270 lines of code y: 338 line churn beta_agents_creation_stream.go x: 19 lines of code y: 22 line churn beta_agents_result.go x: 229 lines of code y: 280 line churn packages/ssestream/ssestream.go x: 234 lines of code y: 823 line churn internal/version.go x: 2 lines of code y: 453 line churn .castiron.stats.yml x: 8 lines of code y: 938 line churn responses/code_interpreter_network_policy.go x: 2 lines of code y: 5 line churn agents_tools.go x: 72 lines of code y: 87 line churn beta_agents_tool_error.go x: 15 lines of code y: 25 line churn internal/apiform/encoder.go x: 487 lines of code y: 855 line churn internal/apiform/richparam.go x: 18 lines of code y: 44 line churn streamaccumulator.go x: 805 lines of code y: 1396 line churn streamaccumulator_limits.go x: 552 lines of code y: 605 line churn auth/middleware.go x: 68 lines of code y: 115 line churn internal/requestconfig/origin.go x: 126 lines of code y: 196 line churn internal/requestconfig/requestconfig.go x: 764 lines of code y: 1550 line churn internal/requestconfig/websocket.go x: 195 lines of code y: 293 line churn option/requestoption.go x: 286 lines of code y: 632 line churn option/unsafe_http.go x: 5 lines of code y: 23 line churn scripts/castiron/custom_code_budget.py x: 376 lines of code y: 453 line churn scripts/castiron/custom_code_report.py x: 949 lines of code y: 1114 line churn scripts/castiron/custom_code_test_support.py x: 60 lines of code y: 74 line churn scripts/castiron/fixtures/github_publisher.cjs x: 36 lines of code y: 38 line churn internal/apierror/apierror.go x: 61 lines of code y: 184 line churn beta_agents_files.go x: 74 lines of code y: 359 line churn auth/metadata.go x: 28 lines of code y: 39 line churn auth/subjecttokenprovider.go x: 245 lines of code y: 376 line churn azure/azure.go x: 534 lines of code y: 1698 line churn beta_agents_output.go x: 305 lines of code y: 337 line churn internal/requestconfig/option_layers.go x: 240 lines of code y: 328 line churn internal/requestconfig/provider_headers.go x: 98 lines of code y: 113 line churn responses/response_accumulator.go x: 345 lines of code y: 412 line churn responses/response_accumulator_details.go x: 149 lines of code y: 182 line churn packages/websocket/connection.go x: 433 lines of code y: 522 line churn internal/apiquery/encoder.go x: 359 lines of code y: 656 line churn packages/param/encoder.go x: 87 lines of code y: 295 line churn auth/x509middleware.go x: 107 lines of code y: 125 line churn auth/x509transport.go x: 788 lines of code y: 994 line churn internal/requestconfig/clone.go x: 66 lines of code y: 74 line churn internal/websockettransport/transport.go x: 44 lines of code y: 53 line churn option/websocket.go x: 6 lines of code y: 18 line churn option/x509workloadidentity.go x: 178 lines of code y: 264 line churn packages/websocket/dial.go x: 9 lines of code y: 14 line churn packages/websocket/dial_js.go x: 10 lines of code y: 13 line churn responses/responses_websocket.go x: 217 lines of code y: 292 line churn agents_message.go x: 11 lines of code y: 15 line churn packages/pagination/pagination.go x: 433 lines of code y: 826 line churn .github/dependabot.yml x: 56 lines of code y: 99 line churn scripts/steady/source-sha256.cjs x: 27 lines of code y: 30 line churn scripts/steady/update.cjs x: 53 lines of code y: 56 line churn auth/error.go x: 27 lines of code y: 39 line churn auth/x509workloadidentity.go x: 313 lines of code y: 375 line churn auth/workloadidentity.go x: 303 lines of code y: 426 line churn internal/requestconfig/retry_scope.go x: 114 lines of code y: 149 line churn default_http_client.go x: 15 lines of code y: 79 line churn streamaccumulator_logprob.go x: 589 lines of code y: 648 line churn streamaccumulator_ownership.go x: 209 lines of code y: 225 line churn streamaccumulator_reconciliation.go x: 60 lines of code y: 67 line churn auth/x509exchange.go x: 273 lines of code y: 291 line churn bedrock/auth.go x: 531 lines of code y: 675 line churn .golangci.yml x: 47 lines of code y: 58 line churn webhooks/webhook_helpers.go x: 111 lines of code y: 143 line churn responses/response_helpers.go x: 13 lines of code y: 15 line churn chatcompletion_helpers.go x: 39 lines of code y: 49 line churn polling.go x: 127 lines of code y: 433 line churn option/middleware.go x: 92 lines of code y: 254 line churn internal/apijson/decoder.go x: 587 lines of code y: 1245 line churn internal/apijson/union.go x: 191 lines of code y: 436 line churn bedrock/bedrock.go x: 34 lines of code y: 122 line churn internal/encoding/json/decode.go x: 959 lines of code y: 1343 line churn internal/apijson/encoder.go x: 313 lines of code y: 510 line churn internal/apijson/port.go x: 97 lines of code y: 158 line churn internal/encoding/json/encode.go x: 932 lines of code y: 1525 line churn internal/paramutil/union.go x: 37 lines of code y: 104 line churn internal/encoding/json/indent.go x: 141 lines of code y: 216 line churn internal/encoding/json/opt.go x: 13 lines of code y: 48 line churn internal/encoding/json/stream.go x: 336 lines of code y: 618 line churn internal/encoding/json/time.go x: 48 lines of code y: 115 line churn auth/types.go x: 30 lines of code y: 37 line churn internal/apiform/tag.go x: 78 lines of code y: 102 line churn internal/apijson/tag.go x: 74 lines of code y: 99 line churn internal/apijson/enum.go x: 115 lines of code y: 379 line churn internal/apiquery/tag.go x: 39 lines of code y: 56 line churn packages/param/param.go x: 93 lines of code y: 476 line churn packages/respjson/respjson.go x: 30 lines of code y: 182 line churn field.go x: 37 lines of code y: 119 line churn internal/apijson/subfield.go x: 59 lines of code y: 115 line churn internal/apiquery/richparam.go x: 17 lines of code y: 48 line churn internal/encoding/json/sentinel/null.go x: 39 lines of code y: 126 line churn internal/paramutil/field.go x: 25 lines of code y: 88 line churn packages/param/null.go x: 8 lines of code y: 27 line churn packages/param/option.go x: 85 lines of code y: 434 line churn internal/encoding/json/shims/shims.go x: 42 lines of code y: 115 line churn internal/apijson/registry.go x: 40 lines of code y: 74 line churn internal/apiquery/query.go x: 45 lines of code y: 75 line churn internal/apijson/field.go x: 16 lines of code y: 59 line churn internal/encoding/json/fold.go x: 34 lines of code y: 48 line churn internal/encoding/json/scanner.go x: 437 lines of code y: 610 line churn internal/encoding/json/tables.go x: 198 lines of code y: 218 line churn internal/encoding/json/tags.go x: 23 lines of code y: 38 line churn internal/apiform/form.go x: 4 lines of code y: 5 line churn
1698.0
line churn
  min: 3.0
  average: 302.49
  25th percentile: 48.5
  median: 125.0
  75th percentile: 429.5
  max: 1698.0
0 959.0
lines of code
min: 2.0 | average: 173.83 | 25th percentile: 28.5 | median: 72.0 | 75th percentile: 242.5 | max: 959.0