@marinoscar/kvox-eval 0.0.0-bootstrap → 0.1.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/LICENSE +21 -0
  3. package/README.md +166 -0
  4. package/dist/ask/index.d.ts +6 -0
  5. package/dist/ask/index.js +28 -0
  6. package/dist/ask/question-schema.d.ts +121 -0
  7. package/dist/ask/question-schema.js +167 -0
  8. package/dist/ask/report.d.ts +88 -0
  9. package/dist/ask/report.js +170 -0
  10. package/dist/ask/scorer.d.ts +104 -0
  11. package/dist/ask/scorer.js +164 -0
  12. package/dist/ask-run/ask-command.d.ts +62 -0
  13. package/dist/ask-run/ask-command.js +254 -0
  14. package/dist/ask-run/host/app.d.ts +65 -0
  15. package/dist/ask-run/host/app.js +146 -0
  16. package/dist/ask-run/host/db.d.ts +38 -0
  17. package/dist/ask-run/host/db.js +126 -0
  18. package/dist/ask-run/host/ports.d.ts +35 -0
  19. package/dist/ask-run/host/ports.js +113 -0
  20. package/dist/ask-run/index.d.ts +13 -0
  21. package/dist/ask-run/index.js +35 -0
  22. package/dist/ask-run/replay.d.ts +128 -0
  23. package/dist/ask-run/replay.js +212 -0
  24. package/dist/ask-run/run-ask-eval.d.ts +125 -0
  25. package/dist/ask-run/run-ask-eval.js +193 -0
  26. package/dist/ask-run/seed-golden-graph.d.ts +64 -0
  27. package/dist/ask-run/seed-golden-graph.js +495 -0
  28. package/dist/cli/index.d.ts +3 -0
  29. package/dist/cli/index.js +12 -0
  30. package/dist/cli/kg-command.d.ts +66 -0
  31. package/dist/cli/kg-command.js +238 -0
  32. package/dist/cli/main.d.ts +18 -0
  33. package/dist/cli/main.js +69 -0
  34. package/dist/fixtures/domains.d.ts +16 -0
  35. package/dist/fixtures/domains.js +33 -0
  36. package/dist/fixtures/fixture-schema.d.ts +323 -0
  37. package/dist/fixtures/fixture-schema.js +199 -0
  38. package/dist/fixtures/index.d.ts +16 -0
  39. package/dist/fixtures/index.js +40 -0
  40. package/dist/fixtures/load.d.ts +73 -0
  41. package/dist/fixtures/load.js +137 -0
  42. package/dist/fixtures/questions.d.ts +15 -0
  43. package/dist/fixtures/questions.js +26 -0
  44. package/dist/index.d.ts +20 -0
  45. package/dist/index.js +36 -0
  46. package/dist/kg/gold-runner.d.ts +13 -0
  47. package/dist/kg/gold-runner.js +57 -0
  48. package/dist/kg/index.d.ts +17 -0
  49. package/dist/kg/index.js +65 -0
  50. package/dist/kg/internals.d.ts +7 -0
  51. package/dist/kg/internals.js +17 -0
  52. package/dist/kg/prediction-schema.d.ts +245 -0
  53. package/dist/kg/prediction-schema.js +102 -0
  54. package/dist/kg/predictions.d.ts +11 -0
  55. package/dist/kg/predictions.js +49 -0
  56. package/dist/kg/report.d.ts +84 -0
  57. package/dist/kg/report.js +125 -0
  58. package/dist/kg/run-kg-eval.d.ts +77 -0
  59. package/dist/kg/run-kg-eval.js +137 -0
  60. package/dist/kg/runner.d.ts +72 -0
  61. package/dist/kg/runner.js +51 -0
  62. package/dist/kg/runners/extract-resolve-runner.d.ts +40 -0
  63. package/dist/kg/runners/extract-resolve-runner.js +199 -0
  64. package/dist/kg/runners/extract-runner.d.ts +65 -0
  65. package/dist/kg/runners/extract-runner.js +243 -0
  66. package/dist/kg/scorer.d.ts +226 -0
  67. package/dist/kg/scorer.js +463 -0
  68. package/dist/kg/targets.d.ts +17 -0
  69. package/dist/kg/targets.js +16 -0
  70. package/dist/kg/text.d.ts +45 -0
  71. package/dist/kg/text.js +100 -0
  72. package/dist/live/adapters.d.ts +16 -0
  73. package/dist/live/adapters.js +58 -0
  74. package/dist/live/env.d.ts +39 -0
  75. package/dist/live/env.js +56 -0
  76. package/dist/live/index.d.ts +6 -0
  77. package/dist/live/index.js +16 -0
  78. package/dist/live/live-ai.d.ts +104 -0
  79. package/dist/live/live-ai.js +157 -0
  80. package/dist/parity/constants.d.ts +79 -0
  81. package/dist/parity/constants.js +104 -0
  82. package/dist/parity/index.d.ts +20 -0
  83. package/dist/parity/index.js +38 -0
  84. package/dist/parity/internals.d.ts +8 -0
  85. package/dist/parity/internals.js +16 -0
  86. package/dist/parity/scenario.d.ts +45 -0
  87. package/dist/parity/scenario.js +245 -0
  88. package/dist/parity/script.d.ts +44 -0
  89. package/dist/parity/script.js +136 -0
  90. package/dist/parity/snapshot.d.ts +43 -0
  91. package/dist/parity/snapshot.js +71 -0
  92. package/dist/real-data/index.d.ts +2 -0
  93. package/dist/real-data/index.js +12 -0
  94. package/dist/real-data/real-data.d.ts +76 -0
  95. package/dist/real-data/real-data.js +156 -0
  96. package/fixtures/kg-golden/README.md +136 -0
  97. package/fixtures/kg-golden/ask-questions.json +458 -0
  98. package/fixtures/kg-golden/meetings/m01-northwind-pilot-kickoff.json +792 -0
  99. package/fixtures/kg-golden/meetings/m02-halden-migration-planning.json +814 -0
  100. package/fixtures/kg-golden/meetings/m03-larkspur-weekly-sync.json +601 -0
  101. package/fixtures/kg-golden/meetings/m04-corvid-intake-discovery.json +690 -0
  102. package/fixtures/kg-golden/meetings/m05-hosting-vendor-selection.json +631 -0
  103. package/fixtures/kg-golden/meetings/m06-northwind-floor-data-review.json +649 -0
  104. package/fixtures/kg-golden/meetings/m07-gullwing-intro-notes.json +428 -0
  105. package/fixtures/kg-golden/meetings/m08-halden-migration-checkpoint.json +672 -0
  106. package/fixtures/kg-golden/meetings/m09-northwind-platform-org-update.json +711 -0
  107. package/fixtures/kg-golden/meetings/m10-corvid-prototype-review.json +623 -0
  108. package/fixtures/kg-golden/meetings/m11-solvane-grid-dashboard-scoping.json +689 -0
  109. package/fixtures/kg-golden/meetings/m12-northwind-pilot-replan.json +681 -0
  110. package/fixtures/kg-golden/meetings/m13-halden-cutover-go-no-go.json +721 -0
  111. package/fixtures/kg-golden/meetings/m14-gullwing-discovery-readout.json +719 -0
  112. package/fixtures/kg-golden/meetings/m15-halden-handover-ravi-leaving.json +716 -0
  113. package/fixtures/kg-golden/meetings/m16-varden-claims-portal-intro.json +704 -0
  114. package/fixtures/kg-golden/meetings/m17-corvid-usability-debrief.json +572 -0
  115. package/fixtures/kg-golden/meetings/m18-hosting-decision-revisited.json +655 -0
  116. package/fixtures/kg-golden/meetings/m19-solvane-integration-kickoff.json +726 -0
  117. package/fixtures/kg-golden/meetings/m20-northwind-go-live-retro.json +673 -0
  118. package/fixtures/kg-golden/meetings/m21-quarterly-account-review.json +449 -0
  119. package/fixtures/kg-golden/meetings/m22-halden-intro-call-2020.json +558 -0
  120. package/fixtures/kg-golden/meetings/m23-gullwing-model-review.json +702 -0
  121. package/fixtures/kg-golden/meetings/m24-varden-discovery-midpoint.json +643 -0
  122. package/fixtures/kg-golden/meetings/m25-corvid-rollout-planning.json +642 -0
  123. package/fixtures/kg-golden/meetings/m26-larkspur-engineering-prep.json +695 -0
  124. package/fixtures/kg-golden/meetings/m27-solvane-phase-one-demo.json +649 -0
  125. package/fixtures/kg-golden/meetings/m28-northwind-building-5-scoping.json +715 -0
  126. package/fixtures/kg-golden/meetings/m29-halden-southern-cutover-review.json +752 -0
  127. package/fixtures/kg-golden/meetings/m30-varden-portal-build-kickoff.json +697 -0
  128. package/fixtures/kg-golden/meetings/m31-gullwing-rollout-renewal.json +681 -0
  129. package/fixtures/kg-golden/meetings/m32-brambleway-weekly-sync.json +472 -0
  130. package/fixtures/kg-golden/meetings/m33-nina-oliver-one-on-one.json +342 -0
  131. package/fixtures/kg-golden/meetings/m34-coffee-with-dana.json +249 -0
  132. package/fixtures/kg-golden/meetings/m35-brambleway-june-sync.json +553 -0
  133. package/fixtures/kg-golden/meetings/m36-copenhagen-conference-planning.json +296 -0
  134. package/host/generated/client.d.ts +1 -0
  135. package/host/generated/client.js +5 -0
  136. package/host/generated/default.d.ts +1 -0
  137. package/host/generated/default.js +5 -0
  138. package/host/generated/edge.d.ts +1 -0
  139. package/host/generated/edge.js +1658 -0
  140. package/host/generated/index-browser.js +1684 -0
  141. package/host/generated/index.d.ts +192335 -0
  142. package/host/generated/index.js +1658 -0
  143. package/host/generated/package.json +139 -0
  144. package/host/generated/query_compiler_fast_bg.js +2 -0
  145. package/host/generated/query_compiler_fast_bg.wasm +0 -0
  146. package/host/generated/query_compiler_fast_bg.wasm-base64.js +2 -0
  147. package/host/generated/runtime/client.d.ts +3433 -0
  148. package/host/generated/runtime/client.js +110 -0
  149. package/host/generated/runtime/index-browser.d.ts +90 -0
  150. package/host/generated/runtime/index-browser.js +6 -0
  151. package/host/generated/runtime/wasm-compiler-edge.js +100 -0
  152. package/host/generated/schema.prisma +6312 -0
  153. package/host/generated/wasm-edge-light-loader.mjs +5 -0
  154. package/host/generated/wasm-worker-loader.mjs +5 -0
  155. package/host/prisma/fragments/kvox.ask.prisma +126 -0
  156. package/host/prisma/fragments/kvox.graph.prisma +1073 -0
  157. package/host/prisma/fragments/kvox.notes.prisma +787 -0
  158. package/host/prisma/fragments/kvox.search.prisma +211 -0
  159. package/host/prisma/fragments/kvox.transcripts.prisma +790 -0
  160. package/host/prisma/kvox.lock +101 -0
  161. package/host/prisma/migrations/20240101000000_initial/migration.sql +297 -0
  162. package/host/prisma/migrations/20240101000001_add_personal_access_tokens/migration.sql +31 -0
  163. package/host/prisma/migrations/20240101000002_add_credentials/migration.sql +20 -0
  164. package/host/prisma/migrations/20240101000003_add_notification_deliveries/migration.sql +27 -0
  165. package/host/prisma/migrations/20240101000004_drop_stale_uuid_defaults/migration.sql +35 -0
  166. package/host/prisma/migrations/20240101000005_add_notifications/migration.sql +22 -0
  167. package/host/prisma/migrations/20240101000006_add_push_subscriptions/migration.sql +25 -0
  168. package/host/prisma/migrations/20240101000007_add_jobs/migration.sql +110 -0
  169. package/host/prisma/migrations/20240101000008_add_worker_nodes/migration.sql +90 -0
  170. package/host/prisma/migrations/20240101000009_add_database_backup_runs/migration.sql +104 -0
  171. package/host/prisma/migrations/20240101000010_add_notification_broadcasts/migration.sql +57 -0
  172. package/host/prisma/migrations/20240101000011_add_backup_run_job_link/migration.sql +87 -0
  173. package/host/prisma/migrations/20240101000012_add_job_node_secrets/migration.sql +61 -0
  174. package/host/prisma/migrations/20240101000013_add_backup_run_pg_dump_version/migration.sql +26 -0
  175. package/host/prisma/migrations/20240101000014_add_job_claim_token/migration.sql +92 -0
  176. package/host/prisma/migrations/20240101000015_add_ai_platform/migration.sql +108 -0
  177. package/host/prisma/migrations/20240101000016_revoke_viewer_ai_use/migration.sql +32 -0
  178. package/host/prisma/migrations/20240101000017_add_user_credentials/migration.sql +29 -0
  179. package/host/prisma/migrations/20240101000018_add_device_session_credential_link/migration.sql +52 -0
  180. package/host/prisma/migrations/20240101000019_add_worker_node_vitals/migration.sql +3 -0
  181. package/host/prisma/migrations/20240101000020_add_job_trace_context/migration.sql +6 -0
  182. package/host/prisma/migrations/20240101000021_add_retention_created_at_indexes/migration.sql +13 -0
  183. package/host/prisma/migrations/20240101000022_add_organizations/migration.sql +142 -0
  184. package/host/prisma/migrations/20240101000023_split_system_org_roles/migration.sql +131 -0
  185. package/host/prisma/migrations/20240101000024_org_scoped_rls/migration.sql +215 -0
  186. package/host/prisma/migrations/20240101000025_add_groups/migration.sql +165 -0
  187. package/host/prisma/migrations/20240101000026_add_grants/migration.sql +117 -0
  188. package/host/prisma/migrations/20240101000027_add_org_settings/migration.sql +49 -0
  189. package/host/prisma/migrations/20240101000028_add_org_credentials/migration.sql +54 -0
  190. package/host/prisma/migrations/20240101000029_add_jobs_org_id/migration.sql +18 -0
  191. package/host/prisma/migrations/20240101000030_add_jobs_org_id_status_index/migration.sql +6 -0
  192. package/host/prisma/migrations/20240101000031_add_broadcast_target_org/migration.sql +21 -0
  193. package/host/prisma/migrations/20240101000032_add_android_app/migration.sql +60 -0
  194. package/host/prisma/migrations/20240101000033_open_job_reason/migration.sql +16 -0
  195. package/host/prisma/migrations/20240101000034_ai_usage_feature/migration.sql +37 -0
  196. package/host/prisma/migrations/20240101000035_add_app_metadata/migration.sql +49 -0
  197. package/host/prisma/migrations/20240101000036_open_sharing_vocabularies/migration.sql +97 -0
  198. package/host/prisma/migrations/20260914130000_kvox_add_transcripts/migration.sql +322 -0
  199. package/host/prisma/migrations/20260914140000_kvox_add_notes/migration.sql +311 -0
  200. package/host/prisma/migrations/20260915120000_kvox_add_search_vectors/migration.sql +150 -0
  201. package/host/prisma/migrations/20260915130000_kvox_add_search_embeddings/migration.sql +362 -0
  202. package/host/prisma/migrations/20260915210000_kvox_add_note_title_source/migration.sql +30 -0
  203. package/host/prisma/migrations/20260923120000_kvox_add_note_generation_context_snapshot/migration.sql +24 -0
  204. package/host/prisma/migrations/20260923130000_kvox_add_user_hidden_note_templates/migration.sql +35 -0
  205. package/host/prisma/migrations/20260923140000_kvox_add_transcript_speaker_identities/migration.sql +6 -0
  206. package/host/prisma/migrations/20260923150000_kvox_transcript_name_checks/migration.sql +95 -0
  207. package/host/prisma/migrations/20260923160000_kvox_add_note_body_format/migration.sql +27 -0
  208. package/host/prisma/migrations/20260923170000_kvox_add_note_version_body_format/migration.sql +23 -0
  209. package/host/prisma/migrations/20260926012548_kvox_add_knowledge_graph/migration.sql +680 -0
  210. package/host/prisma/migrations/20260926030000_kvox_fix_kg_relations_valid_precision_chk/migration.sql +29 -0
  211. package/host/prisma/migrations/20260926030100_kvox_add_transcript_recorded_at/migration.sql +9 -0
  212. package/host/prisma/migrations/20260926030200_kvox_kg_evidence_invariant/migration.sql +60 -0
  213. package/host/prisma/migrations/20260926040000_kvox_add_kg_graph_layouts/migration.sql +30 -0
  214. package/host/prisma/migrations/20260926050000_kvox_add_ask_conversations/migration.sql +99 -0
  215. package/host/prisma/migrations/20260926231512_kvox_add_kg_exports/migration.sql +52 -0
  216. package/host/prisma/migrations/20261016120000_kvox_transcripts_org_id/migration.sql +49 -0
  217. package/host/prisma/platform.lock +319 -0
  218. package/host/prisma/schema/app.kvox.ask.prisma +110 -0
  219. package/host/prisma/schema/app.kvox.graph.prisma +1030 -0
  220. package/host/prisma/schema/app.kvox.notes.prisma +746 -0
  221. package/host/prisma/schema/app.kvox.search.prisma +208 -0
  222. package/host/prisma/schema/app.kvox.transcripts.prisma +726 -0
  223. package/host/prisma/schema/platform.ai.prisma +419 -0
  224. package/host/prisma/schema/platform.android-app.prisma +46 -0
  225. package/host/prisma/schema/platform.base.prisma +15 -0
  226. package/host/prisma/schema/platform.credentials.prisma +156 -0
  227. package/host/prisma/schema/platform.db-backup.prisma +359 -0
  228. package/host/prisma/schema/platform.identity.prisma +638 -0
  229. package/host/prisma/schema/platform.jobs.prisma +824 -0
  230. package/host/prisma/schema/platform.notifications.prisma +641 -0
  231. package/host/prisma/schema/platform.settings.prisma +53 -0
  232. package/host/prisma/schema/platform.sharing.prisma +208 -0
  233. package/host/prisma/schema/platform.storage.prisma +118 -0
  234. package/package.json +112 -1
  235. package/parity/requests.ask.json +2681 -0
  236. package/parity/requests.m01.json +1554 -0
  237. package/parity/requests.m02.json +1554 -0
  238. package/parity/requests.m03.json +1554 -0
  239. package/parity/requests.m04.json +1554 -0
  240. package/parity/requests.m05.json +1554 -0
  241. package/parity/requests.m06.json +1554 -0
  242. package/parity/requests.m07.json +1554 -0
  243. package/parity/requests.m08.json +1554 -0
  244. package/parity/requests.m09.json +1554 -0
  245. package/parity/requests.m10.json +1554 -0
@@ -0,0 +1,702 @@
1
+ {
2
+ "id": "m23",
3
+ "title": "Gullwing pilot model review",
4
+ "tags": [
5
+ "client",
6
+ "relative-date"
7
+ ],
8
+ "recordedAt": "2026-06-04T16:00:00Z",
9
+ "contextText": "First model results on the labelled dispute sample.",
10
+ "hasTranscript": true,
11
+ "speakers": [
12
+ {
13
+ "id": "m23-spk-a",
14
+ "label": "A",
15
+ "displayName": "Alex Rivera"
16
+ },
17
+ {
18
+ "id": "m23-spk-b",
19
+ "label": "B",
20
+ "displayName": "Wen Zhao"
21
+ },
22
+ {
23
+ "id": "m23-spk-c",
24
+ "label": "C",
25
+ "displayName": "Felix Amundsen"
26
+ },
27
+ {
28
+ "id": "m23-spk-d",
29
+ "label": "D",
30
+ "displayName": "Kwame Mensah"
31
+ },
32
+ {
33
+ "id": "m23-spk-e",
34
+ "label": "E",
35
+ "displayName": "Yusuf Demir"
36
+ }
37
+ ],
38
+ "segments": [
39
+ {
40
+ "id": "m23-s001",
41
+ "speakerId": "m23-spk-a",
42
+ "startMs": 0,
43
+ "endMs": 5920,
44
+ "rev": 1,
45
+ "text": "Thanks all. This is the gate review, first model results on the labelled sample."
46
+ },
47
+ {
48
+ "id": "m23-s002",
49
+ "speakerId": "m23-spk-d",
50
+ "startMs": 6170,
51
+ "endMs": 14370,
52
+ "rev": 1,
53
+ "text": "On the held-out set, the model's precision is 0.91 on the three target reason codes. Recall is lower, around 0.78."
54
+ },
55
+ {
56
+ "id": "m23-s003",
57
+ "speakerId": "m23-spk-c",
58
+ "startMs": 14620,
59
+ "endMs": 19400,
60
+ "rev": 1,
61
+ "text": "Explain that to me like I'm the CFO. Which I am."
62
+ },
63
+ {
64
+ "id": "m23-s004",
65
+ "speakerId": "m23-spk-d",
66
+ "startMs": 19650,
67
+ "endMs": 33170,
68
+ "rev": 1,
69
+ "text": "When the model says a dispute is a clear case, it's right nine times out of ten. It misses about a fifth of the clear cases, which then go to a human as today."
70
+ },
71
+ {
72
+ "id": "m23-s005",
73
+ "speakerId": "m23-spk-b",
74
+ "startMs": 33420,
75
+ "endMs": 37060,
76
+ "rev": 1,
77
+ "text": "So nothing gets worse, some things get faster."
78
+ },
79
+ {
80
+ "id": "m23-s006",
81
+ "speakerId": "m23-spk-c",
82
+ "startMs": 37310,
83
+ "endMs": 43610,
84
+ "rev": 1,
85
+ "text": "I'm fine with that, but I don't want the model rejecting anything on its own."
86
+ },
87
+ {
88
+ "id": "m23-s007",
89
+ "speakerId": "m23-spk-b",
90
+ "startMs": 43860,
91
+ "endMs": 47500,
92
+ "rev": 1,
93
+ "text": "Agreed. My analysts should make every final call."
94
+ },
95
+ {
96
+ "id": "m23-s008",
97
+ "speakerId": "m23-spk-a",
98
+ "startMs": 47750,
99
+ "endMs": 53670,
100
+ "rev": 1,
101
+ "text": "So the model flags disputes for review but never auto-rejects. Is that the decision?"
102
+ },
103
+ {
104
+ "id": "m23-s009",
105
+ "speakerId": "m23-spk-c",
106
+ "startMs": 53920,
107
+ "endMs": 56800,
108
+ "rev": 1,
109
+ "text": "That's the decision. Flag, never auto-reject."
110
+ },
111
+ {
112
+ "id": "m23-s010",
113
+ "speakerId": "m23-spk-e",
114
+ "startMs": 57050,
115
+ "endMs": 66010,
116
+ "rev": 1,
117
+ "text": "I'm Yusuf Demir, I lead the disputes platform engineering at Gullwing. For that we'll need a queue the analysts can work from."
118
+ },
119
+ {
120
+ "id": "m23-s011",
121
+ "speakerId": "m23-spk-a",
122
+ "startMs": 66260,
123
+ "endMs": 69140,
124
+ "rev": 1,
125
+ "text": "What would you need to build?"
126
+ },
127
+ {
128
+ "id": "m23-s012",
129
+ "speakerId": "m23-spk-e",
130
+ "startMs": 69390,
131
+ "endMs": 76450,
132
+ "rev": 1,
133
+ "text": "An API that exposes the flagged disputes queue. I'll expose the disputes queue API by June 18."
134
+ },
135
+ {
136
+ "id": "m23-s013",
137
+ "speakerId": "m23-spk-d",
138
+ "startMs": 76700,
139
+ "endMs": 80340,
140
+ "rev": 1,
141
+ "text": "I'll give you the model output schema today."
142
+ },
143
+ {
144
+ "id": "m23-s014",
145
+ "speakerId": "m23-spk-b",
146
+ "startMs": 80590,
147
+ "endMs": 86130,
148
+ "rev": 1,
149
+ "text": "I'll also need reviewer guidelines, so analysts know how to treat a flag."
150
+ },
151
+ {
152
+ "id": "m23-s015",
153
+ "speakerId": "m23-spk-a",
154
+ "startMs": 86380,
155
+ "endMs": 88120,
156
+ "rev": 1,
157
+ "text": "Who writes those?"
158
+ },
159
+ {
160
+ "id": "m23-s016",
161
+ "speakerId": "m23-spk-b",
162
+ "startMs": 88370,
163
+ "endMs": 92770,
164
+ "rev": 1,
165
+ "text": "I will. I'll write the reviewer guidelines by next Tuesday."
166
+ },
167
+ {
168
+ "id": "m23-s017",
169
+ "speakerId": "m23-spk-c",
170
+ "startMs": 93020,
171
+ "endMs": 97800,
172
+ "rev": 1,
173
+ "text": "Then I'm approving the build phase. Send the paperwork to me."
174
+ },
175
+ {
176
+ "id": "m23-s018",
177
+ "speakerId": "m23-spk-a",
178
+ "startMs": 98050,
179
+ "endMs": 101310,
180
+ "rev": 1,
181
+ "text": "Great news. Hana will send it over."
182
+ },
183
+ {
184
+ "id": "m23-s019",
185
+ "speakerId": "m23-spk-b",
186
+ "startMs": 101560,
187
+ "endMs": 108620,
188
+ "rev": 1,
189
+ "text": "Unrelated, but I'm learning Portuguese for a trip, so if I say obrigada by accident, that's why."
190
+ },
191
+ {
192
+ "id": "m23-s020",
193
+ "speakerId": "m23-spk-a",
194
+ "startMs": 108870,
195
+ "endMs": 110230,
196
+ "rev": 1,
197
+ "text": "Ha, noted."
198
+ },
199
+ {
200
+ "id": "m23-s021",
201
+ "speakerId": "m23-spk-d",
202
+ "startMs": 110480,
203
+ "endMs": 116780,
204
+ "rev": 1,
205
+ "text": "One risk, the model was trained on last year's data. Seasonal fraud patterns may shift."
206
+ },
207
+ {
208
+ "id": "m23-s022",
209
+ "speakerId": "m23-spk-c",
210
+ "startMs": 117030,
211
+ "endMs": 119910,
212
+ "rev": 1,
213
+ "text": "Then we review the numbers monthly."
214
+ },
215
+ {
216
+ "id": "m23-s023",
217
+ "speakerId": "m23-spk-a",
218
+ "startMs": 120160,
219
+ "endMs": 123040,
220
+ "rev": 1,
221
+ "text": "Monthly numbers review, noted. Thanks everyone."
222
+ }
223
+ ],
224
+ "note": {
225
+ "version": 1,
226
+ "body": "# Gullwing pilot model review\n\n**Date:** June 4\n**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)\n\n## Summary\n\nGate review of the first chargeback automation model on the labelled dispute sample. Felix approved the build phase.\n\n## Results\n\n- On the held-out set, the model's precision is 0.91 on the three target reason codes; recall is around 0.78.\n- In plain terms: when the model calls a dispute a clear case it is right nine times out of ten, and the clear cases it misses go to a human as they do today.\n- The model was trained on last year's data, so seasonal fraud patterns may shift.\n\n## Decisions\n\n- **The model flags disputes for review and never auto-rejects.** Analysts make every final call.\n- **Felix approved the build phase.**\n- Numbers will be reviewed monthly because of the seasonality risk.\n\n## Action items\n\n- **Yusuf Demir** — expose the flagged disputes queue API by June 18. Yusuf leads disputes platform engineering at Gullwing.\n- **Kwame Mensah** — give Yusuf the model output schema today.\n- **Wen Zhao** — write reviewer guidelines for analysts by next Tuesday.\n- **Hana Sato** — send the build-phase paperwork to Felix.\n\n## Notes\n\n- Wen is learning Portuguese for a trip.\n"
227
+ },
228
+ "knownEntities": [
229
+ {
230
+ "id": "g-org-gullwing-payments",
231
+ "type": "Organization",
232
+ "label": "Gullwing Payments",
233
+ "aliases": [
234
+ "Gullwing"
235
+ ],
236
+ "props": {},
237
+ "attendedFixtureIds": []
238
+ },
239
+ {
240
+ "id": "g-person-alex-rivera",
241
+ "type": "Person",
242
+ "label": "Alex Rivera",
243
+ "aliases": [
244
+ "Alex"
245
+ ],
246
+ "props": {},
247
+ "attendedFixtureIds": [
248
+ "m01",
249
+ "m02",
250
+ "m03",
251
+ "m04",
252
+ "m05",
253
+ "m06",
254
+ "m07",
255
+ "m08",
256
+ "m09",
257
+ "m10",
258
+ "m11",
259
+ "m12",
260
+ "m13",
261
+ "m14",
262
+ "m15",
263
+ "m16",
264
+ "m17",
265
+ "m18",
266
+ "m19",
267
+ "m20",
268
+ "m21",
269
+ "m22"
270
+ ]
271
+ },
272
+ {
273
+ "id": "g-person-felix-amundsen",
274
+ "type": "Person",
275
+ "label": "Felix Amundsen",
276
+ "aliases": [
277
+ "Felix"
278
+ ],
279
+ "props": {},
280
+ "attendedFixtureIds": [
281
+ "m14"
282
+ ]
283
+ },
284
+ {
285
+ "id": "g-person-hana-sato",
286
+ "type": "Person",
287
+ "label": "Hana Sato",
288
+ "aliases": [
289
+ "Hana"
290
+ ],
291
+ "props": {},
292
+ "attendedFixtureIds": [
293
+ "m03",
294
+ "m16",
295
+ "m21"
296
+ ]
297
+ },
298
+ {
299
+ "id": "g-person-kwame-mensah",
300
+ "type": "Person",
301
+ "label": "Kwame Mensah",
302
+ "aliases": [
303
+ "Kwame"
304
+ ],
305
+ "props": {},
306
+ "attendedFixtureIds": [
307
+ "m11",
308
+ "m14",
309
+ "m19"
310
+ ]
311
+ },
312
+ {
313
+ "id": "g-person-wen-zhao",
314
+ "type": "Person",
315
+ "label": "Wen Zhao",
316
+ "aliases": [
317
+ "Wen"
318
+ ],
319
+ "props": {},
320
+ "attendedFixtureIds": [
321
+ "m14"
322
+ ]
323
+ },
324
+ {
325
+ "id": "g-project-chargeback-automation",
326
+ "type": "Project",
327
+ "label": "Chargeback automation",
328
+ "aliases": [],
329
+ "props": {},
330
+ "attendedFixtureIds": []
331
+ }
332
+ ],
333
+ "labels": {
334
+ "entities": [
335
+ {
336
+ "key": "meeting",
337
+ "type": "Meeting",
338
+ "label": "Gullwing pilot model review",
339
+ "aliases": [],
340
+ "existingId": null,
341
+ "props": {},
342
+ "evidence": [
343
+ {
344
+ "source": "note",
345
+ "quote": "Gullwing pilot model review"
346
+ }
347
+ ]
348
+ },
349
+ {
350
+ "key": "alex",
351
+ "type": "Person",
352
+ "label": "Alex Rivera",
353
+ "aliases": [],
354
+ "existingId": "g-person-alex-rivera",
355
+ "props": {},
356
+ "evidence": [
357
+ {
358
+ "source": "note",
359
+ "quote": "Alex Rivera (Larkspur Labs)"
360
+ }
361
+ ]
362
+ },
363
+ {
364
+ "key": "kwame",
365
+ "type": "Person",
366
+ "label": "Kwame Mensah",
367
+ "aliases": [],
368
+ "existingId": "g-person-kwame-mensah",
369
+ "props": {},
370
+ "evidence": [
371
+ {
372
+ "source": "note",
373
+ "quote": "Kwame Mensah (Larkspur Labs)"
374
+ }
375
+ ]
376
+ },
377
+ {
378
+ "key": "felix",
379
+ "type": "Person",
380
+ "label": "Felix Amundsen",
381
+ "aliases": [],
382
+ "existingId": "g-person-felix-amundsen",
383
+ "props": {},
384
+ "evidence": [
385
+ {
386
+ "source": "note",
387
+ "quote": "Felix Amundsen (Gullwing Payments)"
388
+ }
389
+ ]
390
+ },
391
+ {
392
+ "key": "wen",
393
+ "type": "Person",
394
+ "label": "Wen Zhao",
395
+ "aliases": [],
396
+ "existingId": "g-person-wen-zhao",
397
+ "props": {},
398
+ "evidence": [
399
+ {
400
+ "source": "note",
401
+ "quote": "Wen Zhao (Gullwing Payments)"
402
+ }
403
+ ]
404
+ },
405
+ {
406
+ "key": "yusuf",
407
+ "type": "Person",
408
+ "label": "Yusuf Demir",
409
+ "aliases": [],
410
+ "existingId": null,
411
+ "props": {},
412
+ "evidence": [
413
+ {
414
+ "source": "segment",
415
+ "segmentId": "m23-s010",
416
+ "quote": "I'm Yusuf Demir, I lead the disputes platform engineering at Gullwing."
417
+ }
418
+ ]
419
+ },
420
+ {
421
+ "key": "gullwing",
422
+ "type": "Organization",
423
+ "label": "Gullwing Payments",
424
+ "aliases": [],
425
+ "existingId": "g-org-gullwing-payments",
426
+ "props": {},
427
+ "evidence": [
428
+ {
429
+ "source": "segment",
430
+ "segmentId": "m23-s010",
431
+ "quote": "I lead the disputes platform engineering at Gullwing."
432
+ }
433
+ ]
434
+ },
435
+ {
436
+ "key": "chargeback",
437
+ "type": "Project",
438
+ "label": "Chargeback automation",
439
+ "aliases": [],
440
+ "existingId": "g-project-chargeback-automation",
441
+ "props": {},
442
+ "evidence": [
443
+ {
444
+ "source": "note",
445
+ "quote": "the first chargeback automation model"
446
+ }
447
+ ]
448
+ }
449
+ ],
450
+ "relations": [
451
+ {
452
+ "type": "ATTENDED",
453
+ "from": "alex",
454
+ "to": "meeting",
455
+ "validFrom": null,
456
+ "validTo": null,
457
+ "precision": "unknown",
458
+ "props": {},
459
+ "evidence": [
460
+ {
461
+ "source": "note",
462
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
463
+ }
464
+ ]
465
+ },
466
+ {
467
+ "type": "ATTENDED",
468
+ "from": "kwame",
469
+ "to": "meeting",
470
+ "validFrom": null,
471
+ "validTo": null,
472
+ "precision": "unknown",
473
+ "props": {},
474
+ "evidence": [
475
+ {
476
+ "source": "note",
477
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
478
+ }
479
+ ]
480
+ },
481
+ {
482
+ "type": "ATTENDED",
483
+ "from": "felix",
484
+ "to": "meeting",
485
+ "validFrom": null,
486
+ "validTo": null,
487
+ "precision": "unknown",
488
+ "props": {},
489
+ "evidence": [
490
+ {
491
+ "source": "note",
492
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
493
+ }
494
+ ]
495
+ },
496
+ {
497
+ "type": "ATTENDED",
498
+ "from": "wen",
499
+ "to": "meeting",
500
+ "validFrom": null,
501
+ "validTo": null,
502
+ "precision": "unknown",
503
+ "props": {},
504
+ "evidence": [
505
+ {
506
+ "source": "note",
507
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
508
+ }
509
+ ]
510
+ },
511
+ {
512
+ "type": "ATTENDED",
513
+ "from": "yusuf",
514
+ "to": "meeting",
515
+ "validFrom": null,
516
+ "validTo": null,
517
+ "precision": "unknown",
518
+ "props": {},
519
+ "evidence": [
520
+ {
521
+ "source": "note",
522
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Kwame Mensah (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
523
+ }
524
+ ]
525
+ },
526
+ {
527
+ "type": "WORKS_FOR",
528
+ "from": "yusuf",
529
+ "to": "gullwing",
530
+ "validFrom": null,
531
+ "validTo": null,
532
+ "precision": "unknown",
533
+ "props": {},
534
+ "evidence": [
535
+ {
536
+ "source": "segment",
537
+ "segmentId": "m23-s010",
538
+ "quote": "I'm Yusuf Demir, I lead the disputes platform engineering at Gullwing."
539
+ }
540
+ ]
541
+ },
542
+ {
543
+ "type": "DISCUSSED",
544
+ "from": "meeting",
545
+ "to": "chargeback",
546
+ "validFrom": null,
547
+ "validTo": null,
548
+ "precision": "unknown",
549
+ "props": {},
550
+ "evidence": [
551
+ {
552
+ "source": "note",
553
+ "quote": "the first chargeback automation model"
554
+ }
555
+ ]
556
+ }
557
+ ],
558
+ "items": [
559
+ {
560
+ "kind": "claim",
561
+ "subject": "chargeback",
562
+ "owner": null,
563
+ "counterparty": null,
564
+ "title": "Model precision 0.91",
565
+ "statement": "The model's precision is 0.91 on the three target reason codes, with recall around 0.78.",
566
+ "status": null,
567
+ "occurredAt": "2026-06-04",
568
+ "dueAt": null,
569
+ "sensitivity": null,
570
+ "supersedesLabel": null,
571
+ "evidence": [
572
+ {
573
+ "source": "segment",
574
+ "segmentId": "m23-s002",
575
+ "quote": "the model's precision is 0.91 on the three target reason codes. Recall is lower, around 0.78."
576
+ }
577
+ ]
578
+ },
579
+ {
580
+ "kind": "decision",
581
+ "subject": "chargeback",
582
+ "owner": null,
583
+ "counterparty": null,
584
+ "title": "Flag, never auto-reject",
585
+ "statement": "The model flags disputes for review and never auto-rejects.",
586
+ "status": null,
587
+ "occurredAt": "2026-06-04",
588
+ "dueAt": null,
589
+ "sensitivity": null,
590
+ "supersedesLabel": null,
591
+ "evidence": [
592
+ {
593
+ "source": "segment",
594
+ "segmentId": "m23-s009",
595
+ "quote": "That's the decision. Flag, never auto-reject."
596
+ }
597
+ ]
598
+ },
599
+ {
600
+ "kind": "decision",
601
+ "subject": "chargeback",
602
+ "owner": null,
603
+ "counterparty": null,
604
+ "title": "Build phase approved",
605
+ "statement": "Felix approved the build phase.",
606
+ "status": null,
607
+ "occurredAt": "2026-06-04",
608
+ "dueAt": null,
609
+ "sensitivity": null,
610
+ "supersedesLabel": null,
611
+ "evidence": [
612
+ {
613
+ "source": "segment",
614
+ "segmentId": "m23-s017",
615
+ "quote": "Then I'm approving the build phase."
616
+ }
617
+ ]
618
+ },
619
+ {
620
+ "kind": "commitment",
621
+ "subject": "chargeback",
622
+ "owner": "yusuf",
623
+ "counterparty": null,
624
+ "title": "Expose disputes queue API",
625
+ "statement": "Yusuf will expose the disputes queue API by June 18.",
626
+ "status": "open",
627
+ "occurredAt": "2026-06-04",
628
+ "dueAt": "2026-06-18",
629
+ "sensitivity": null,
630
+ "supersedesLabel": null,
631
+ "evidence": [
632
+ {
633
+ "source": "segment",
634
+ "segmentId": "m23-s012",
635
+ "quote": "I'll expose the disputes queue API by June 18."
636
+ }
637
+ ]
638
+ },
639
+ {
640
+ "kind": "commitment",
641
+ "subject": "chargeback",
642
+ "owner": "wen",
643
+ "counterparty": null,
644
+ "title": "Write reviewer guidelines",
645
+ "statement": "Wen will write the reviewer guidelines by next Tuesday.",
646
+ "status": "open",
647
+ "occurredAt": "2026-06-04",
648
+ "dueAt": "2026-06-09",
649
+ "sensitivity": null,
650
+ "supersedesLabel": null,
651
+ "evidence": [
652
+ {
653
+ "source": "segment",
654
+ "segmentId": "m23-s016",
655
+ "quote": "I'll write the reviewer guidelines by next Tuesday."
656
+ }
657
+ ]
658
+ },
659
+ {
660
+ "kind": "commitment",
661
+ "subject": "chargeback",
662
+ "owner": "kwame",
663
+ "counterparty": "yusuf",
664
+ "title": "Share model output schema",
665
+ "statement": "Kwame will give Yusuf the model output schema today.",
666
+ "status": "open",
667
+ "occurredAt": "2026-06-04",
668
+ "dueAt": "2026-06-04",
669
+ "sensitivity": null,
670
+ "supersedesLabel": null,
671
+ "evidence": [
672
+ {
673
+ "source": "segment",
674
+ "segmentId": "m23-s013",
675
+ "quote": "I'll give you the model output schema today."
676
+ }
677
+ ]
678
+ },
679
+ {
680
+ "kind": "person_fact",
681
+ "subject": "wen",
682
+ "owner": null,
683
+ "counterparty": null,
684
+ "title": "Learning Portuguese",
685
+ "statement": "Wen is learning Portuguese for a trip.",
686
+ "status": null,
687
+ "occurredAt": "2026-06-04",
688
+ "dueAt": null,
689
+ "sensitivity": "personal",
690
+ "supersedesLabel": null,
691
+ "evidence": [
692
+ {
693
+ "source": "segment",
694
+ "segmentId": "m23-s019",
695
+ "quote": "I'm learning Portuguese for a trip"
696
+ }
697
+ ]
698
+ }
699
+ ],
700
+ "negatives": []
701
+ }
702
+ }