@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,681 @@
1
+ {
2
+ "id": "m31",
3
+ "title": "Gullwing rollout and renewal",
4
+ "tags": [
5
+ "client",
6
+ "promotion",
7
+ "relative-date"
8
+ ],
9
+ "recordedAt": "2026-09-03T16:00:00Z",
10
+ "contextText": "Results after three months of production, and the renewal.",
11
+ "hasTranscript": true,
12
+ "speakers": [
13
+ {
14
+ "id": "m31-spk-a",
15
+ "label": "A",
16
+ "displayName": "Alex Rivera"
17
+ },
18
+ {
19
+ "id": "m31-spk-b",
20
+ "label": "B",
21
+ "displayName": "Felix Amundsen"
22
+ },
23
+ {
24
+ "id": "m31-spk-c",
25
+ "label": "C",
26
+ "displayName": "Wen Zhao"
27
+ },
28
+ {
29
+ "id": "m31-spk-d",
30
+ "label": "D",
31
+ "displayName": "Yusuf Demir"
32
+ },
33
+ {
34
+ "id": "m31-spk-e",
35
+ "label": "E",
36
+ "displayName": "Hana Sato"
37
+ }
38
+ ],
39
+ "segments": [
40
+ {
41
+ "id": "m31-s001",
42
+ "speakerId": "m31-spk-a",
43
+ "startMs": 0,
44
+ "endMs": 5540,
45
+ "rev": 1,
46
+ "text": "Thanks all. Three months in production, so results first and then the renewal."
47
+ },
48
+ {
49
+ "id": "m31-s002",
50
+ "speakerId": "m31-spk-c",
51
+ "startMs": 5790,
52
+ "endMs": 11330,
53
+ "rev": 1,
54
+ "text": "Dispute handling time is down 35 percent on the three automated reason codes."
55
+ },
56
+ {
57
+ "id": "m31-s003",
58
+ "speakerId": "m31-spk-b",
59
+ "startMs": 11580,
60
+ "endMs": 14840,
61
+ "rev": 1,
62
+ "text": "That's the number the board will remember."
63
+ },
64
+ {
65
+ "id": "m31-s004",
66
+ "speakerId": "m31-spk-d",
67
+ "startMs": 15090,
68
+ "endMs": 19870,
69
+ "rev": 1,
70
+ "text": "And the queue API has held up. No incidents since launch."
71
+ },
72
+ {
73
+ "id": "m31-s005",
74
+ "speakerId": "m31-spk-a",
75
+ "startMs": 20120,
76
+ "endMs": 24520,
77
+ "rev": 1,
78
+ "text": "Before we go further, congratulations are in order, I hear."
79
+ },
80
+ {
81
+ "id": "m31-s006",
82
+ "speakerId": "m31-spk-b",
83
+ "startMs": 24770,
84
+ "endMs": 29170,
85
+ "rev": 1,
86
+ "text": "Yes. Wen became our Head of Risk on September 1."
87
+ },
88
+ {
89
+ "id": "m31-s007",
90
+ "speakerId": "m31-spk-c",
91
+ "startMs": 29420,
92
+ "endMs": 34200,
93
+ "rev": 1,
94
+ "text": "Thank you. It means the automation roadmap is officially mine now."
95
+ },
96
+ {
97
+ "id": "m31-s008",
98
+ "speakerId": "m31-spk-a",
99
+ "startMs": 34450,
100
+ "endMs": 37710,
101
+ "rev": 1,
102
+ "text": "Congratulations, Wen. So, the roadmap. What's next?"
103
+ },
104
+ {
105
+ "id": "m31-s009",
106
+ "speakerId": "m31-spk-c",
107
+ "startMs": 37960,
108
+ "endMs": 42740,
109
+ "rev": 1,
110
+ "text": "I want all dispute reason codes covered. The long tail too."
111
+ },
112
+ {
113
+ "id": "m31-s010",
114
+ "speakerId": "m31-spk-b",
115
+ "startMs": 42990,
116
+ "endMs": 44730,
117
+ "rev": 1,
118
+ "text": "Is that realistic?"
119
+ },
120
+ {
121
+ "id": "m31-s011",
122
+ "speakerId": "m31-spk-d",
123
+ "startMs": 44980,
124
+ "endMs": 50520,
125
+ "rev": 1,
126
+ "text": "With the flag-only design, yes. The long tail just gets flagged less often."
127
+ },
128
+ {
129
+ "id": "m31-s012",
130
+ "speakerId": "m31-spk-b",
131
+ "startMs": 50770,
132
+ "endMs": 55550,
133
+ "rev": 1,
134
+ "text": "Then we roll out to all dispute reason codes in Q4."
135
+ },
136
+ {
137
+ "id": "m31-s013",
138
+ "speakerId": "m31-spk-a",
139
+ "startMs": 55800,
140
+ "endMs": 58300,
141
+ "rev": 1,
142
+ "text": "Decided. Hana, the commercial side."
143
+ },
144
+ {
145
+ "id": "m31-s014",
146
+ "speakerId": "m31-spk-e",
147
+ "startMs": 58550,
148
+ "endMs": 63330,
149
+ "rev": 1,
150
+ "text": "I'll send the renewal proposal by Friday, with Q4 scope included."
151
+ },
152
+ {
153
+ "id": "m31-s015",
154
+ "speakerId": "m31-spk-b",
155
+ "startMs": 63580,
156
+ "endMs": 68740,
157
+ "rev": 1,
158
+ "text": "And I'll sign the renewal by September 18, assuming the numbers hold."
159
+ },
160
+ {
161
+ "id": "m31-s016",
162
+ "speakerId": "m31-spk-a",
163
+ "startMs": 68990,
164
+ "endMs": 71110,
165
+ "rev": 1,
166
+ "text": "Anything else from finance?"
167
+ },
168
+ {
169
+ "id": "m31-s017",
170
+ "speakerId": "m31-spk-b",
171
+ "startMs": 71360,
172
+ "endMs": 80700,
173
+ "rev": 1,
174
+ "text": "One personal note. I'm moving to part-time in the new year, to care for my father. Wen will take more of the day-to-day."
175
+ },
176
+ {
177
+ "id": "m31-s018",
178
+ "speakerId": "m31-spk-a",
179
+ "startMs": 80950,
180
+ "endMs": 85730,
181
+ "rev": 1,
182
+ "text": "Thank you for telling us, Felix. We'll route more through Wen."
183
+ },
184
+ {
185
+ "id": "m31-s019",
186
+ "speakerId": "m31-spk-c",
187
+ "startMs": 85980,
188
+ "endMs": 88100,
189
+ "rev": 1,
190
+ "text": "I'm ready for it."
191
+ },
192
+ {
193
+ "id": "m31-s020",
194
+ "speakerId": "m31-spk-d",
195
+ "startMs": 88350,
196
+ "endMs": 91990,
197
+ "rev": 1,
198
+ "text": "From engineering, we'd like the model retrained quarterly."
199
+ },
200
+ {
201
+ "id": "m31-s021",
202
+ "speakerId": "m31-spk-a",
203
+ "startMs": 92240,
204
+ "endMs": 95500,
205
+ "rev": 1,
206
+ "text": "We'll include quarterly retraining in the proposal."
207
+ },
208
+ {
209
+ "id": "m31-s022",
210
+ "speakerId": "m31-spk-e",
211
+ "startMs": 95750,
212
+ "endMs": 96730,
213
+ "rev": 1,
214
+ "text": "Noted."
215
+ },
216
+ {
217
+ "id": "m31-s023",
218
+ "speakerId": "m31-spk-a",
219
+ "startMs": 96980,
220
+ "endMs": 102900,
221
+ "rev": 1,
222
+ "text": "Great. So: all reason codes in Q4, proposal by Friday, signature by September 18."
223
+ }
224
+ ],
225
+ "note": {
226
+ "version": 1,
227
+ "body": "# Gullwing rollout and renewal\n\n**Date:** September 3\n**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)\n\n## Summary\n\nReview after three months of chargeback automation in production at Gullwing Payments, followed by the renewal discussion.\n\n## Results\n\n- Dispute handling time is down 35 percent on the three automated reason codes.\n- The disputes queue API has had no incidents since launch.\n\n## People\n\n- Wen Zhao became Gullwing's Head of Risk on September 1, and now officially owns the automation roadmap.\n- Felix is moving to part-time in the new year; Wen will take more of the day-to-day.\n\n## Decisions\n\n- **Roll out automation to all dispute reason codes in Q4**, including the long tail. The flag-only design means the long tail is simply flagged less often.\n- Quarterly model retraining will be included in the renewal proposal.\n\n## Action items\n\n- **Hana Sato** — send the renewal proposal by Friday, with Q4 scope and quarterly retraining included.\n- **Felix Amundsen** — sign the renewal by September 18, assuming the numbers hold.\n\n## Notes\n\n- Route more day-to-day questions through Wen going forward.\n- Yusuf's engineering team asked for quarterly retraining because fraud patterns shift with the seasons.\n"
228
+ },
229
+ "knownEntities": [
230
+ {
231
+ "id": "g-org-gullwing-payments",
232
+ "type": "Organization",
233
+ "label": "Gullwing Payments",
234
+ "aliases": [
235
+ "Gullwing"
236
+ ],
237
+ "props": {},
238
+ "attendedFixtureIds": []
239
+ },
240
+ {
241
+ "id": "g-org-larkspur-labs",
242
+ "type": "Organization",
243
+ "label": "Larkspur Labs",
244
+ "aliases": [
245
+ "Larkspur"
246
+ ],
247
+ "props": {},
248
+ "attendedFixtureIds": []
249
+ },
250
+ {
251
+ "id": "g-person-alex-rivera",
252
+ "type": "Person",
253
+ "label": "Alex Rivera",
254
+ "aliases": [
255
+ "Alex"
256
+ ],
257
+ "props": {},
258
+ "attendedFixtureIds": [
259
+ "m01",
260
+ "m02",
261
+ "m03",
262
+ "m04",
263
+ "m05",
264
+ "m06",
265
+ "m07",
266
+ "m08",
267
+ "m09",
268
+ "m10",
269
+ "m11",
270
+ "m12",
271
+ "m13",
272
+ "m14",
273
+ "m15",
274
+ "m16",
275
+ "m17",
276
+ "m18",
277
+ "m19",
278
+ "m20",
279
+ "m21",
280
+ "m22",
281
+ "m23",
282
+ "m24",
283
+ "m25",
284
+ "m26",
285
+ "m27",
286
+ "m28",
287
+ "m29",
288
+ "m30"
289
+ ]
290
+ },
291
+ {
292
+ "id": "g-person-felix-amundsen",
293
+ "type": "Person",
294
+ "label": "Felix Amundsen",
295
+ "aliases": [
296
+ "Felix"
297
+ ],
298
+ "props": {},
299
+ "attendedFixtureIds": [
300
+ "m14",
301
+ "m23"
302
+ ]
303
+ },
304
+ {
305
+ "id": "g-person-hana-sato",
306
+ "type": "Person",
307
+ "label": "Hana Sato",
308
+ "aliases": [
309
+ "Hana"
310
+ ],
311
+ "props": {},
312
+ "attendedFixtureIds": [
313
+ "m03",
314
+ "m16",
315
+ "m21",
316
+ "m30"
317
+ ]
318
+ },
319
+ {
320
+ "id": "g-person-wen-zhao",
321
+ "type": "Person",
322
+ "label": "Wen Zhao",
323
+ "aliases": [
324
+ "Wen"
325
+ ],
326
+ "props": {},
327
+ "attendedFixtureIds": [
328
+ "m14",
329
+ "m23"
330
+ ]
331
+ },
332
+ {
333
+ "id": "g-person-yusuf-demir",
334
+ "type": "Person",
335
+ "label": "Yusuf Demir",
336
+ "aliases": [
337
+ "Yusuf"
338
+ ],
339
+ "props": {},
340
+ "attendedFixtureIds": []
341
+ },
342
+ {
343
+ "id": "g-project-chargeback-automation",
344
+ "type": "Project",
345
+ "label": "Chargeback automation",
346
+ "aliases": [],
347
+ "props": {},
348
+ "attendedFixtureIds": []
349
+ }
350
+ ],
351
+ "labels": {
352
+ "entities": [
353
+ {
354
+ "key": "meeting",
355
+ "type": "Meeting",
356
+ "label": "Gullwing rollout and renewal",
357
+ "aliases": [],
358
+ "existingId": null,
359
+ "props": {},
360
+ "evidence": [
361
+ {
362
+ "source": "note",
363
+ "quote": "Gullwing rollout and renewal"
364
+ }
365
+ ]
366
+ },
367
+ {
368
+ "key": "alex",
369
+ "type": "Person",
370
+ "label": "Alex Rivera",
371
+ "aliases": [],
372
+ "existingId": "g-person-alex-rivera",
373
+ "props": {},
374
+ "evidence": [
375
+ {
376
+ "source": "note",
377
+ "quote": "Alex Rivera (Larkspur Labs)"
378
+ }
379
+ ]
380
+ },
381
+ {
382
+ "key": "hana",
383
+ "type": "Person",
384
+ "label": "Hana Sato",
385
+ "aliases": [],
386
+ "existingId": "g-person-hana-sato",
387
+ "props": {},
388
+ "evidence": [
389
+ {
390
+ "source": "note",
391
+ "quote": "Hana Sato (Larkspur Labs)"
392
+ }
393
+ ]
394
+ },
395
+ {
396
+ "key": "felix",
397
+ "type": "Person",
398
+ "label": "Felix Amundsen",
399
+ "aliases": [],
400
+ "existingId": "g-person-felix-amundsen",
401
+ "props": {},
402
+ "evidence": [
403
+ {
404
+ "source": "note",
405
+ "quote": "Felix Amundsen (Gullwing Payments)"
406
+ }
407
+ ]
408
+ },
409
+ {
410
+ "key": "wen",
411
+ "type": "Person",
412
+ "label": "Wen Zhao",
413
+ "aliases": [],
414
+ "existingId": "g-person-wen-zhao",
415
+ "props": {},
416
+ "evidence": [
417
+ {
418
+ "source": "segment",
419
+ "segmentId": "m31-s006",
420
+ "quote": "Wen became our Head of Risk on September 1."
421
+ }
422
+ ]
423
+ },
424
+ {
425
+ "key": "yusuf",
426
+ "type": "Person",
427
+ "label": "Yusuf Demir",
428
+ "aliases": [],
429
+ "existingId": "g-person-yusuf-demir",
430
+ "props": {},
431
+ "evidence": [
432
+ {
433
+ "source": "note",
434
+ "quote": "Yusuf Demir (Gullwing Payments)"
435
+ }
436
+ ]
437
+ },
438
+ {
439
+ "key": "gullwing",
440
+ "type": "Organization",
441
+ "label": "Gullwing Payments",
442
+ "aliases": [],
443
+ "existingId": "g-org-gullwing-payments",
444
+ "props": {},
445
+ "evidence": [
446
+ {
447
+ "source": "note",
448
+ "quote": "chargeback automation in production at Gullwing Payments"
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ "key": "chargeback",
454
+ "type": "Project",
455
+ "label": "Chargeback automation",
456
+ "aliases": [],
457
+ "existingId": "g-project-chargeback-automation",
458
+ "props": {},
459
+ "evidence": [
460
+ {
461
+ "source": "note",
462
+ "quote": "chargeback automation in production at Gullwing Payments"
463
+ }
464
+ ]
465
+ }
466
+ ],
467
+ "relations": [
468
+ {
469
+ "type": "ATTENDED",
470
+ "from": "alex",
471
+ "to": "meeting",
472
+ "validFrom": null,
473
+ "validTo": null,
474
+ "precision": "unknown",
475
+ "props": {},
476
+ "evidence": [
477
+ {
478
+ "source": "note",
479
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
480
+ }
481
+ ]
482
+ },
483
+ {
484
+ "type": "ATTENDED",
485
+ "from": "hana",
486
+ "to": "meeting",
487
+ "validFrom": null,
488
+ "validTo": null,
489
+ "precision": "unknown",
490
+ "props": {},
491
+ "evidence": [
492
+ {
493
+ "source": "note",
494
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
495
+ }
496
+ ]
497
+ },
498
+ {
499
+ "type": "ATTENDED",
500
+ "from": "felix",
501
+ "to": "meeting",
502
+ "validFrom": null,
503
+ "validTo": null,
504
+ "precision": "unknown",
505
+ "props": {},
506
+ "evidence": [
507
+ {
508
+ "source": "note",
509
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
510
+ }
511
+ ]
512
+ },
513
+ {
514
+ "type": "ATTENDED",
515
+ "from": "wen",
516
+ "to": "meeting",
517
+ "validFrom": null,
518
+ "validTo": null,
519
+ "precision": "unknown",
520
+ "props": {},
521
+ "evidence": [
522
+ {
523
+ "source": "note",
524
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ "type": "ATTENDED",
530
+ "from": "yusuf",
531
+ "to": "meeting",
532
+ "validFrom": null,
533
+ "validTo": null,
534
+ "precision": "unknown",
535
+ "props": {},
536
+ "evidence": [
537
+ {
538
+ "source": "note",
539
+ "quote": "**Attendees:** Alex Rivera (Larkspur Labs), Hana Sato (Larkspur Labs), Felix Amundsen (Gullwing Payments), Wen Zhao (Gullwing Payments), Yusuf Demir (Gullwing Payments)"
540
+ }
541
+ ]
542
+ },
543
+ {
544
+ "type": "HAS_ROLE",
545
+ "from": "wen",
546
+ "to": "gullwing",
547
+ "validFrom": "2026-09-01",
548
+ "validTo": null,
549
+ "precision": "day",
550
+ "props": {
551
+ "title": "Head of Risk"
552
+ },
553
+ "evidence": [
554
+ {
555
+ "source": "segment",
556
+ "segmentId": "m31-s006",
557
+ "quote": "Wen became our Head of Risk on September 1."
558
+ }
559
+ ]
560
+ },
561
+ {
562
+ "type": "DISCUSSED",
563
+ "from": "meeting",
564
+ "to": "chargeback",
565
+ "validFrom": null,
566
+ "validTo": null,
567
+ "precision": "unknown",
568
+ "props": {},
569
+ "evidence": [
570
+ {
571
+ "source": "note",
572
+ "quote": "chargeback automation in production at Gullwing Payments"
573
+ }
574
+ ]
575
+ }
576
+ ],
577
+ "items": [
578
+ {
579
+ "kind": "claim",
580
+ "subject": "chargeback",
581
+ "owner": null,
582
+ "counterparty": null,
583
+ "title": "Handling time down 35 percent",
584
+ "statement": "Dispute handling time is down 35 percent on the three automated reason codes.",
585
+ "status": null,
586
+ "occurredAt": "2026-09-03",
587
+ "dueAt": null,
588
+ "sensitivity": null,
589
+ "supersedesLabel": null,
590
+ "evidence": [
591
+ {
592
+ "source": "segment",
593
+ "segmentId": "m31-s002",
594
+ "quote": "Dispute handling time is down 35 percent on the three automated reason codes."
595
+ }
596
+ ]
597
+ },
598
+ {
599
+ "kind": "decision",
600
+ "subject": "chargeback",
601
+ "owner": null,
602
+ "counterparty": null,
603
+ "title": "Roll out to all reason codes in Q4",
604
+ "statement": "Automation rolls out to all dispute reason codes in Q4.",
605
+ "status": null,
606
+ "occurredAt": "2026-09-03",
607
+ "dueAt": null,
608
+ "sensitivity": null,
609
+ "supersedesLabel": null,
610
+ "evidence": [
611
+ {
612
+ "source": "segment",
613
+ "segmentId": "m31-s012",
614
+ "quote": "Then we roll out to all dispute reason codes in Q4."
615
+ }
616
+ ]
617
+ },
618
+ {
619
+ "kind": "commitment",
620
+ "subject": "chargeback",
621
+ "owner": "hana",
622
+ "counterparty": "felix",
623
+ "title": "Send renewal proposal",
624
+ "statement": "Hana will send the renewal proposal by Friday, with Q4 scope included.",
625
+ "status": "open",
626
+ "occurredAt": "2026-09-03",
627
+ "dueAt": "2026-09-04",
628
+ "sensitivity": null,
629
+ "supersedesLabel": null,
630
+ "evidence": [
631
+ {
632
+ "source": "segment",
633
+ "segmentId": "m31-s014",
634
+ "quote": "I'll send the renewal proposal by Friday, with Q4 scope included."
635
+ }
636
+ ]
637
+ },
638
+ {
639
+ "kind": "commitment",
640
+ "subject": "chargeback",
641
+ "owner": "felix",
642
+ "counterparty": "g-org-larkspur-labs",
643
+ "title": "Sign the renewal",
644
+ "statement": "Felix will sign the renewal by September 18.",
645
+ "status": "open",
646
+ "occurredAt": "2026-09-03",
647
+ "dueAt": "2026-09-18",
648
+ "sensitivity": null,
649
+ "supersedesLabel": null,
650
+ "evidence": [
651
+ {
652
+ "source": "segment",
653
+ "segmentId": "m31-s015",
654
+ "quote": "I'll sign the renewal by September 18, assuming the numbers hold."
655
+ }
656
+ ]
657
+ },
658
+ {
659
+ "kind": "person_fact",
660
+ "subject": "felix",
661
+ "owner": null,
662
+ "counterparty": null,
663
+ "title": "Moving to part-time to care for his father",
664
+ "statement": "Felix is moving to part-time in the new year to care for his father.",
665
+ "status": null,
666
+ "occurredAt": "2026-09-03",
667
+ "dueAt": null,
668
+ "sensitivity": "personal",
669
+ "supersedesLabel": null,
670
+ "evidence": [
671
+ {
672
+ "source": "segment",
673
+ "segmentId": "m31-s017",
674
+ "quote": "I'm moving to part-time in the new year, to care for my father."
675
+ }
676
+ ]
677
+ }
678
+ ],
679
+ "negatives": []
680
+ }
681
+ }