- Co-Authored-By
- Claude Fable 5 <noreply@anthropic.com>
- Claude-Session
- https://claude.ai/code/session_01GoYpb8FEmdxVErsv7ABCYi
Carry the cached-token split out to the trace
Deploy story
What this commit did to the running system — joined from the forge receipt chain, the part a commit page elsewhere cannot show.
Not deployed through the forge lane
No push, promotion, build, or deploy receipt references this commit (receipts are scanned over a bounded recent window). Changes shipped by full node replacement carry their proof in the release gate receipt instead.
Changed files
-
modified
packages/atif/src/trace-schema.ts -
modified
packages/openagents-cli/src/coder-export.ts -
modified
packages/openagents-cli/src/coder-session.ts -
modified
packages/openagents-cli/src/coder-thread.ts -
modified
packages/openagents-cli/test/coder-export.test.ts -
modified
packages/openagents-cli/test/coder-session.test.ts -
modified
packages/openagents-cli/test/coder-thread.test.ts
Diff
7 files changed, +123 -2
packages/atif/src/trace-schema.ts modified +1
@@ -51,6 +51,7 @@ export class AtifStepMetrics extends S.Class<AtifStepMetrics>('AtifStepMetrics')
| 51 | 51 |
|
| 52 | 52 |
|
| 53 | 53 |
|
| 54 |
|
|
| 54 | 55 |
|
| 55 | 56 |
|
| 56 | 57 |
|
packages/openagents-cli/src/coder-export.ts modified +4 -1
@@ -49,7 +49,7 @@ interface AtifStep {
| 49 | 49 |
|
| 50 | 50 |
|
| 51 | 51 |
|
| 52 |
|
|
| 52 |
|
|
| 53 | 53 |
|
| 54 | 54 |
|
| 55 | 55 |
|
@@ -137,6 +137,9 @@ const metricsOf = (entry: CoderEntry): Partial<AtifStep> => {
| 137 | 137 |
|
| 138 | 138 |
|
| 139 | 139 |
|
| 140 |
|
|
| 141 |
|
|
| 142 |
|
|
| 140 | 143 |
|
| 141 | 144 |
|
| 142 | 145 |
|
packages/openagents-cli/src/coder-session.ts modified +5
@@ -48,6 +48,7 @@ export type ReplyChunk =
| 48 | 48 |
|
| 49 | 49 |
|
| 50 | 50 |
|
| 51 |
|
|
| 51 | 52 |
|
| 52 | 53 |
|
| 53 | 54 |
|
@@ -162,6 +163,7 @@ const describeFailure = (cause: unknown): string => {
| 162 | 163 |
|
| 163 | 164 |
|
| 164 | 165 |
|
| 166 |
|
|
| 165 | 167 |
|
| 166 | 168 |
|
| 167 | 169 |
|
@@ -1022,6 +1024,9 @@ export class CoderSession {
| 1022 | 1024 |
|
| 1023 | 1025 |
|
| 1024 | 1026 |
|
| 1027 |
|
|
| 1028 |
|
|
| 1029 |
|
|
| 1025 | 1030 |
|
| 1026 | 1031 |
|
| 1027 | 1032 |
|
packages/openagents-cli/src/coder-thread.ts modified +17 -1
@@ -393,7 +393,13 @@ export class ThreadReplySource implements ReplySource {
| 393 | 393 |
|
| 394 | 394 |
|
| 395 | 395 |
|
| 396 |
|
|
| 396 |
|
|
| 397 |
|
|
| 398 |
|
|
| 399 |
|
|
| 400 |
|
|
| 401 |
|
|
| 402 |
|
|
| 397 | 403 |
|
| 398 | 404 |
|
| 399 | 405 |
|
@@ -603,6 +609,9 @@ export class ThreadReplySource implements ReplySource {
| 603 | 609 |
|
| 604 | 610 |
|
| 605 | 611 |
|
| 612 |
|
|
| 613 |
|
|
| 614 |
|
|
| 606 | 615 |
|
| 607 | 616 |
|
| 608 | 617 |
|
@@ -682,6 +691,9 @@ export class ThreadReplySource implements ReplySource {
| 682 | 691 |
|
| 683 | 692 |
|
| 684 | 693 |
|
| 694 |
|
|
| 695 |
|
|
| 696 |
|
|
| 685 | 697 |
|
| 686 | 698 |
|
| 687 | 699 |
|
@@ -914,11 +926,15 @@ export class ThreadReplySource implements ReplySource {
| 914 | 926 |
|
| 915 | 927 |
|
| 916 | 928 |
|
| 929 |
|
|
| 917 | 930 |
|
| 918 | 931 |
|
| 919 | 932 |
|
| 920 | 933 |
|
| 921 | 934 |
|
| 935 |
|
|
| 936 |
|
|
| 937 |
|
|
| 922 | 938 |
|
| 923 | 939 |
|
| 924 | 940 |
|
packages/openagents-cli/test/coder-export.test.ts modified +38
@@ -216,6 +216,44 @@ describe("exporting a conversation as ATIF", () => {
| 216 | 216 |
|
| 217 | 217 |
|
| 218 | 218 |
|
| 219 |
|
|
| 220 |
|
|
| 221 |
|
|
| 222 |
|
|
| 223 |
|
|
| 224 |
|
|
| 225 |
|
|
| 226 |
|
|
| 227 |
|
|
| 228 |
|
|
| 229 |
|
|
| 230 |
|
|
| 231 |
|
|
| 232 |
|
|
| 233 |
|
|
| 234 |
|
|
| 235 |
|
|
| 236 |
|
|
| 237 |
|
|
| 238 |
|
|
| 239 |
|
|
| 240 |
|
|
| 241 |
|
|
| 242 |
|
|
| 243 |
|
|
| 244 |
|
|
| 245 |
|
|
| 246 |
|
|
| 247 |
|
|
| 248 |
|
|
| 249 |
|
|
| 250 |
|
|
| 251 |
|
|
| 252 |
|
|
| 253 |
|
|
| 254 |
|
|
| 255 |
|
|
| 256 |
|
|
| 219 | 257 |
|
| 220 | 258 |
|
| 221 | 259 |
|
packages/openagents-cli/test/coder-session.test.ts modified +27
@@ -447,6 +447,33 @@ describe("a turn's cost", () => {
| 447 | 447 |
|
| 448 | 448 |
|
| 449 | 449 |
|
| 450 |
|
|
| 451 |
|
|
| 452 |
|
|
| 453 |
|
|
| 454 |
|
|
| 455 |
|
|
| 456 |
|
|
| 457 |
|
|
| 458 |
|
|
| 459 |
|
|
| 460 |
|
|
| 461 |
|
|
| 462 |
|
|
| 463 |
|
|
| 464 |
|
|
| 465 |
|
|
| 466 |
|
|
| 467 |
|
|
| 468 |
|
|
| 469 |
|
|
| 470 |
|
|
| 471 |
|
|
| 472 |
|
|
| 473 |
|
|
| 474 |
|
|
| 475 |
|
|
| 476 |
|
|
| 450 | 477 |
|
| 451 | 478 |
|
| 452 | 479 |
|
packages/openagents-cli/test/coder-thread.test.ts modified +31
@@ -747,6 +747,37 @@ describe("the thread's durable transcript", () => {
| 747 | 747 |
|
| 748 | 748 |
|
| 749 | 749 |
|
| 750 |
|
|
| 751 |
|
|
| 752 |
|
|
| 753 |
|
|
| 754 |
|
|
| 755 |
|
|
| 756 |
|
|
| 757 |
|
|
| 758 |
|
|
| 759 |
|
|
| 760 |
|
|
| 761 |
|
|
| 762 |
|
|
| 763 |
|
|
| 764 |
|
|
| 765 |
|
|
| 766 |
|
|
| 767 |
|
|
| 768 |
|
|
| 769 |
|
|
| 770 |
|
|
| 771 |
|
|
| 772 |
|
|
| 773 |
|
|
| 774 |
|
|
| 775 |
|
|
| 776 |
|
|
| 777 |
|
|
| 778 |
|
|
| 779 |
|
|
| 780 |
|
|
| 750 | 781 |
|
| 751 | 782 |
|
| 752 | 783 |
|