| 1 | package main |
| 2 | |
| 3 | // trajectoryRecord is the subset of trajectory.Record the summary needs. |
| 4 | type trajectoryRecord struct { |
| 5 | TS int64 `json:"ts"` |
| 6 | ProtocolRecovery string `json:"protocol_recovery"` |
| 7 | ContractShadow *struct { |
| 8 | Intent string `json:"intent"` |
| 9 | Verdict string `json:"verdict"` |
| 10 | Complete bool `json:"complete"` |
| 11 | } `json:"contract_shadow"` |
| 12 | CompletionReport *struct { |
| 13 | Verdict string `json:"verdict"` |
| 14 | Gaps int `json:"gaps"` |
| 15 | GapKinds []string `json:"gap_kinds"` |
| 16 | ClaimsVerified int `json:"claims_verified"` |
| 17 | ClaimsUnbacked int `json:"claims_unbacked"` |
| 18 | } `json:"completion_report"` |
| 19 | OutcomeProgress *struct { |
| 20 | Round int `json:"round"` |
| 21 | Exploration int `json:"exploration"` |
| 22 | Verification int `json:"verification"` |
| 23 | Objective int `json:"objective"` |
| 24 | Regression int `json:"regression"` |
| 25 | Churn int `json:"churn"` |
| 26 | LegacyGain int `json:"legacy_gain"` |
| 27 | Discriminating int `json:"discriminating"` |
| 28 | DebtAge int `json:"debt_age"` |
| 29 | BlindMutations int `json:"blind_mutations"` |
| 30 | EBMEligible bool `json:"ebm_eligible"` |
| 31 | EBMFired bool `json:"ebm_fired"` |
| 32 | LocalExecSeen bool `json:"local_exec_seen"` |
| 33 | GovernorEligible bool `json:"governor_eligible"` |
| 34 | GovernorEngaged bool `json:"governor_engaged"` |
| 35 | Runway *int `json:"runway"` |
| 36 | RunwayDry int `json:"runway_dry"` |
| 37 | RunwayIdle int `json:"runway_idle"` |
| 38 | RunwaySpent bool `json:"runway_spent"` |
| 39 | } `json:"outcome_progress"` |
| 40 | AnchorSafetyAudit *anchorSafetyRecord `json:"anchor_safety_audit"` |
| 41 | DelegationAdmission *struct { |
| 42 | Tool string `json:"tool"` |
| 43 | Verdict string `json:"verdict"` |
| 44 | Reason string `json:"reason"` |
| 45 | } `json:"delegation_admission"` |
| 46 | Event *struct { |
| 47 | Kind string `json:"kind"` |
| 48 | Code string `json:"code"` |
| 49 | RetryScope string `json:"retryScope"` |
| 50 | StreamAttempt *struct { |
| 51 | ID string `json:"id"` |
| 52 | Action string `json:"action"` |
| 53 | } `json:"streamAttempt"` |
| 54 | Usage *struct { |
| 55 | Source string `json:"source"` |
| 56 | PromptTokens int64 `json:"promptTokens"` |
| 57 | CompletionTokens int64 `json:"completionTokens"` |
| 58 | ReasoningTokens int64 `json:"reasoningTokens"` |
| 59 | CacheHitTokens int64 `json:"cacheHitTokens"` |
| 60 | CacheMissTokens int64 `json:"cacheMissTokens"` |
| 61 | CacheDiagnostics *struct { |
| 62 | ToolSchemaTokens int64 `json:"toolSchemaTokens"` |
| 63 | PrefixChanged bool `json:"prefixChanged"` |
| 64 | } `json:"cacheDiagnostics"` |
| 65 | } `json:"usage"` |
| 66 | Tool *struct { |
| 67 | ID string `json:"id"` |
| 68 | Name string `json:"name"` |
| 69 | Args string `json:"args"` |
| 70 | Err string `json:"err"` |
| 71 | DurationMs int64 `json:"durationMs"` |
| 72 | ParentID string `json:"parentId"` |
| 73 | ReadOnly bool `json:"readOnly"` |
| 74 | Refreshed bool `json:"refreshed"` |
| 75 | StartedAt int64 `json:"startedAt"` |
| 76 | EndedAt int64 `json:"endedAt"` |
| 77 | Execution *struct { |
| 78 | Verification string `json:"verification"` |
| 79 | } `json:"execution"` |
| 80 | } `json:"tool"` |
| 81 | } `json:"event"` |
| 82 | } |
| 83 |