@taskless-app/shared 0.1.20 → 0.1.22

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.
@@ -4,14 +4,19 @@ import { z } from "zod";
4
4
  * знает, была ли подписка и шли ли PCM-кадры; здесь мы её читаем.
5
5
  *
6
6
  * `not_subscribed` — публиковал аудио, а рекордера на дорожке не было ни разу;
7
+ * `no_track` — аудио не публиковал ВОВСЕ, но просидел в комнате дольше
8
+ * порога сверки присутствия (пять минут). Про этих людей до
9
+ * TAS-511 отчёт говорил «слушатель»: Дима Гальянов, 39 минут
10
+ * в звонке, ноль реплик — и ни строки о нём в логе агента;
7
11
  * `no_audio` — подписка была, но ни одного кадра не доехало;
8
12
  * `suppressed` — сегменты распознавались, но их выбрасывал анти-дубль
9
13
  * «участник вышел» (собственно баг PRJ3-101).
10
14
  *
11
15
  * Молчавших и слушателей здесь НЕТ: их ноль объяснён, и сигналом он не
12
- * является — иначе предупреждение висело бы на каждом созвоне.
16
+ * является — иначе предупреждение висело бы на каждом созвоне. `no_track` —
17
+ * ровно граница между этими двумя случаями, и проводит её время в комнате.
13
18
  */
14
- export declare const TranscriptCoverageGapReason: z.ZodEnum<["not_subscribed", "no_audio", "suppressed"]>;
19
+ export declare const TranscriptCoverageGapReason: z.ZodEnum<["not_subscribed", "no_track", "no_audio", "suppressed"]>;
15
20
  export type TranscriptCoverageGapReason = z.infer<typeof TranscriptCoverageGapReason>;
16
21
  /**
17
22
  * Отчёт агента за одну сессию.
@@ -21,7 +26,15 @@ export type TranscriptCoverageGapReason = z.infer<typeof TranscriptCoverageGapRe
21
26
  * поля должно давать «нет данных», а не отбрасывать весь отчёт целиком.
22
27
  */
23
28
  export declare const TranscriptCoverage: z.ZodObject<{
24
- /** Версия формата. Читателей будет больше одного — пусть будет с самого начала. */
29
+ /**
30
+ * Версия формата. Читателей будет больше одного — пусть будет с самого начала.
31
+ * v2 (TAS-500) — `repairedSubscriptions` считает доехавшие починки, а не
32
+ * попытки; v3 (TAS-511) — у `listeners` сузился смысл: тот, кто просидел в
33
+ * комнате дольше пяти минут без единой дорожки, теперь gap с причиной
34
+ * `no_track`, а не слушатель. По версии здесь никто не ветвится и ветвиться
35
+ * не должен: поля читаются по одному, отсутствующие дают значение по
36
+ * умолчанию — агент и api выкатываются раздельно.
37
+ */
25
38
  v: z.ZodDefault<z.ZodNumber>;
26
39
  /** Сколько людей агент видел в комнате, включая заглянувших на минуту. */
27
40
  participants: z.ZodDefault<z.ZodNumber>;
@@ -58,15 +71,15 @@ export declare const TranscriptCoverage: z.ZodObject<{
58
71
  identity: z.ZodString;
59
72
  name: z.ZodDefault<z.ZodString>;
60
73
  } & {
61
- reason: z.ZodEnum<["not_subscribed", "no_audio", "suppressed"]>;
74
+ reason: z.ZodEnum<["not_subscribed", "no_track", "no_audio", "suppressed"]>;
62
75
  }, "strip", z.ZodTypeAny, {
63
76
  identity: string;
64
77
  name: string;
65
- reason: "no_audio" | "not_subscribed" | "suppressed";
78
+ reason: "no_audio" | "no_track" | "not_subscribed" | "suppressed";
66
79
  }, {
67
80
  identity: string;
68
81
  name?: string | undefined;
69
- reason: "no_audio" | "not_subscribed" | "suppressed";
82
+ reason: "no_audio" | "no_track" | "not_subscribed" | "suppressed";
70
83
  }>, "many">>;
71
84
  gapCount: z.ZodDefault<z.ZodNumber>;
72
85
  /**
@@ -94,6 +107,12 @@ export declare const TranscriptCoverage: z.ZodObject<{
94
107
  stuckCount: z.ZodDefault<z.ZodNumber>;
95
108
  /** Сколько распознанных сегментов выброшено анти-дублем «вышедшего». */
96
109
  suppressedSegments: z.ZodDefault<z.ZodNumber>;
110
+ /**
111
+ * Сколько раз сверка присутствия дожимала подписку по подозрению «человека
112
+ * не слышат» (v3+). Ноль при непустых `no_track` в gaps читается буквально:
113
+ * дожимать было нечего — публикации от него нет вовсе.
114
+ */
115
+ presenceProbes: z.ZodDefault<z.ZodNumber>;
97
116
  /**
98
117
  * Чем кончился выход джоба. `drain: "cancelled" | "abandoned"` означает, что
99
118
  * хвост очереди распознавания не доехал до базы, — снаружи это выглядит как
@@ -102,12 +121,46 @@ export declare const TranscriptCoverage: z.ZodObject<{
102
121
  shutdown: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodObject<{
103
122
  drain: z.ZodDefault<z.ZodEnum<["drained", "cancelled", "abandoned"]>>;
104
123
  unfinishedRecorders: z.ZodDefault<z.ZodNumber>;
124
+ /**
125
+ * Сколько секунд звука оборвал выход джоба и у кого именно (v3, TAS-510).
126
+ * «drain: cancelled» говорил, что хвост потерян, но не говорил СКОЛЬКО и
127
+ * ЧЕЙ — а без этого не отличить одну оборванную фразу от двенадцати
128
+ * человек по десять секунд. Верхняя граница: часть незакрытых секунд
129
+ * могла быть тишиной.
130
+ */
131
+ lostAudioSec: z.ZodDefault<z.ZodNumber>;
132
+ lostTails: z.ZodDefault<z.ZodArray<z.ZodObject<{
133
+ identity: z.ZodString;
134
+ name: z.ZodDefault<z.ZodString>;
135
+ } & {
136
+ seconds: z.ZodNumber;
137
+ }, "strip", z.ZodTypeAny, {
138
+ identity: string;
139
+ name: string;
140
+ seconds: number;
141
+ }, {
142
+ identity: string;
143
+ name?: string | undefined;
144
+ seconds: number;
145
+ }>, "many">>;
105
146
  }, "strip", z.ZodTypeAny, {
106
147
  drain: "abandoned" | "cancelled" | "drained";
107
148
  unfinishedRecorders: number;
149
+ lostAudioSec: number;
150
+ lostTails: {
151
+ identity: string;
152
+ name: string;
153
+ seconds: number;
154
+ }[];
108
155
  }, {
109
156
  drain?: "abandoned" | "cancelled" | "drained" | undefined;
110
157
  unfinishedRecorders?: number | undefined;
158
+ lostAudioSec?: number | undefined;
159
+ lostTails?: {
160
+ identity: string;
161
+ name?: string | undefined;
162
+ seconds: number;
163
+ }[] | undefined;
111
164
  }>>>>;
112
165
  }, "strip", z.ZodTypeAny, {
113
166
  v: number;
@@ -126,7 +179,7 @@ export declare const TranscriptCoverage: z.ZodObject<{
126
179
  gaps: {
127
180
  identity: string;
128
181
  name: string;
129
- reason: "no_audio" | "not_subscribed" | "suppressed";
182
+ reason: "no_audio" | "no_track" | "not_subscribed" | "suppressed";
130
183
  }[];
131
184
  gapCount: number;
132
185
  repairedSubscriptions: number;
@@ -137,9 +190,16 @@ export declare const TranscriptCoverage: z.ZodObject<{
137
190
  }[];
138
191
  stuckCount: number;
139
192
  suppressedSegments: number;
193
+ presenceProbes: number;
140
194
  shutdown: {
141
195
  drain: "abandoned" | "cancelled" | "drained";
142
196
  unfinishedRecorders: number;
197
+ lostAudioSec: number;
198
+ lostTails: {
199
+ identity: string;
200
+ name: string;
201
+ seconds: number;
202
+ }[];
143
203
  } | null;
144
204
  }, {
145
205
  v?: number | undefined;
@@ -158,7 +218,7 @@ export declare const TranscriptCoverage: z.ZodObject<{
158
218
  gaps?: {
159
219
  identity: string;
160
220
  name?: string | undefined;
161
- reason: "no_audio" | "not_subscribed" | "suppressed";
221
+ reason: "no_audio" | "no_track" | "not_subscribed" | "suppressed";
162
222
  }[] | undefined;
163
223
  gapCount?: number | undefined;
164
224
  repairedSubscriptions?: number | undefined;
@@ -169,9 +229,16 @@ export declare const TranscriptCoverage: z.ZodObject<{
169
229
  }[] | undefined;
170
230
  stuckCount?: number | undefined;
171
231
  suppressedSegments?: number | undefined;
232
+ presenceProbes?: number | undefined;
172
233
  shutdown?: {
173
234
  drain?: "abandoned" | "cancelled" | "drained" | undefined;
174
235
  unfinishedRecorders?: number | undefined;
236
+ lostAudioSec?: number | undefined;
237
+ lostTails?: {
238
+ identity: string;
239
+ name?: string | undefined;
240
+ seconds: number;
241
+ }[] | undefined;
175
242
  } | null | undefined;
176
243
  }>;
177
244
  export type TranscriptCoverage = z.infer<typeof TranscriptCoverage>;
@@ -19,15 +19,21 @@ import { z } from "zod";
19
19
  * знает, была ли подписка и шли ли PCM-кадры; здесь мы её читаем.
20
20
  *
21
21
  * `not_subscribed` — публиковал аудио, а рекордера на дорожке не было ни разу;
22
+ * `no_track` — аудио не публиковал ВОВСЕ, но просидел в комнате дольше
23
+ * порога сверки присутствия (пять минут). Про этих людей до
24
+ * TAS-511 отчёт говорил «слушатель»: Дима Гальянов, 39 минут
25
+ * в звонке, ноль реплик — и ни строки о нём в логе агента;
22
26
  * `no_audio` — подписка была, но ни одного кадра не доехало;
23
27
  * `suppressed` — сегменты распознавались, но их выбрасывал анти-дубль
24
28
  * «участник вышел» (собственно баг PRJ3-101).
25
29
  *
26
30
  * Молчавших и слушателей здесь НЕТ: их ноль объяснён, и сигналом он не
27
- * является — иначе предупреждение висело бы на каждом созвоне.
31
+ * является — иначе предупреждение висело бы на каждом созвоне. `no_track` —
32
+ * ровно граница между этими двумя случаями, и проводит её время в комнате.
28
33
  */
29
34
  export const TranscriptCoverageGapReason = z.enum([
30
35
  "not_subscribed",
36
+ "no_track",
31
37
  "no_audio",
32
38
  "suppressed",
33
39
  ]);
@@ -43,7 +49,15 @@ const Person = z.object({
43
49
  * поля должно давать «нет данных», а не отбрасывать весь отчёт целиком.
44
50
  */
45
51
  export const TranscriptCoverage = z.object({
46
- /** Версия формата. Читателей будет больше одного — пусть будет с самого начала. */
52
+ /**
53
+ * Версия формата. Читателей будет больше одного — пусть будет с самого начала.
54
+ * v2 (TAS-500) — `repairedSubscriptions` считает доехавшие починки, а не
55
+ * попытки; v3 (TAS-511) — у `listeners` сузился смысл: тот, кто просидел в
56
+ * комнате дольше пяти минут без единой дорожки, теперь gap с причиной
57
+ * `no_track`, а не слушатель. По версии здесь никто не ветвится и ветвиться
58
+ * не должен: поля читаются по одному, отсутствующие дают значение по
59
+ * умолчанию — агент и api выкатываются раздельно.
60
+ */
47
61
  v: z.number().int().default(1),
48
62
  /** Сколько людей агент видел в комнате, включая заглянувших на минуту. */
49
63
  participants: z.number().int().min(0).default(0),
@@ -76,6 +90,12 @@ export const TranscriptCoverage = z.object({
76
90
  stuckCount: z.number().int().min(0).default(0),
77
91
  /** Сколько распознанных сегментов выброшено анти-дублем «вышедшего». */
78
92
  suppressedSegments: z.number().int().min(0).default(0),
93
+ /**
94
+ * Сколько раз сверка присутствия дожимала подписку по подозрению «человека
95
+ * не слышат» (v3+). Ноль при непустых `no_track` в gaps читается буквально:
96
+ * дожимать было нечего — публикации от него нет вовсе.
97
+ */
98
+ presenceProbes: z.number().int().min(0).default(0),
79
99
  /**
80
100
  * Чем кончился выход джоба. `drain: "cancelled" | "abandoned"` означает, что
81
101
  * хвост очереди распознавания не доехал до базы, — снаружи это выглядит как
@@ -85,6 +105,15 @@ export const TranscriptCoverage = z.object({
85
105
  .object({
86
106
  drain: z.enum(["drained", "cancelled", "abandoned"]).default("drained"),
87
107
  unfinishedRecorders: z.number().int().min(0).default(0),
108
+ /**
109
+ * Сколько секунд звука оборвал выход джоба и у кого именно (v3, TAS-510).
110
+ * «drain: cancelled» говорил, что хвост потерян, но не говорил СКОЛЬКО и
111
+ * ЧЕЙ — а без этого не отличить одну оборванную фразу от двенадцати
112
+ * человек по десять секунд. Верхняя граница: часть незакрытых секунд
113
+ * могла быть тишиной.
114
+ */
115
+ lostAudioSec: z.number().min(0).default(0),
116
+ lostTails: z.array(Person.extend({ seconds: z.number().min(0) })).default([]),
88
117
  })
89
118
  .nullish()
90
119
  .default(null),
@@ -140,6 +169,7 @@ export function pluralPeople(n) {
140
169
  /** Человеческая причина провала — одними словами в UI и в логах. */
141
170
  export const TRANSCRIPT_COVERAGE_GAP_LABEL = {
142
171
  not_subscribed: "дорожку не слушали",
172
+ no_track: "дорожки от него не было",
143
173
  no_audio: "звук не доехал",
144
174
  suppressed: "речь распозналась, но не записалась",
145
175
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transcriptCoverage.js","sourceRoot":"","sources":["../src/transcriptCoverage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcriptCoverage.js","sourceRoot":"","sources":["../src/transcriptCoverage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taskless-app/shared",
3
- "version": "0.1.20",
3
+ "version": "0.1.22",
4
4
  "type": "module",
5
5
  "description": "Shared types, Zod schemas and design tokens for the Taskless API contract — consumed by @taskless/api, @taskless/web and the Taskless mobile app.",
6
6
  "license": "MIT",