@clipwright/core 0.2.0 → 0.3.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.
- package/dist/__fixtures__/queue-promises.d.ts +87 -0
- package/dist/__fixtures__/queue-promises.js +99 -0
- package/dist/__fixtures__/queue-promises.js.map +1 -0
- package/dist/api-failure.d.ts +20 -2
- package/dist/api-failure.js +46 -5
- package/dist/api-failure.js.map +1 -1
- package/dist/contract-dispositions.d.ts +2 -19
- package/dist/contract-dispositions.js +2 -19
- package/dist/contract-dispositions.js.map +1 -1
- package/dist/errors.d.ts +79 -5
- package/dist/errors.js +110 -6
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/public-endpoints.d.ts +29 -0
- package/dist/public-endpoints.js +49 -0
- package/dist/public-endpoints.js.map +1 -0
- package/dist/rate-limit.d.ts +22 -0
- package/dist/rate-limit.js +30 -0
- package/dist/rate-limit.js.map +1 -1
- package/dist/render-backend.d.ts +44 -6
- package/dist/render-backend.js +24 -0
- package/dist/render-backend.js.map +1 -1
- package/dist/run-static-warnings.d.ts +5 -0
- package/dist/run-static-warnings.js +30 -0
- package/dist/run-static-warnings.js.map +1 -0
- package/dist/runs.d.ts +3 -0
- package/dist/runs.js +18 -1
- package/dist/runs.js.map +1 -1
- package/dist/skills.d.ts +27 -2
- package/dist/skills.js +48 -8
- package/dist/skills.js.map +1 -1
- package/dist/tts-backend.d.ts +4 -0
- package/dist/tts-backend.js +0 -13
- package/dist/tts-backend.js.map +1 -1
- package/dist/vendor-response.d.ts +98 -0
- package/dist/vendor-response.js +152 -0
- package/dist/vendor-response.js.map +1 -0
- package/dist/voices.d.ts +42 -26
- package/dist/voices.js +11 -8
- package/dist/voices.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ОБЕЩАНИЯ ОЧЕРЕДИ, ЗАПРЕЩЁННЫЕ НА ОТКАЗЕ `account_not_admitted` (US-620).
|
|
3
|
+
*
|
|
4
|
+
* ПРАВИЛО (держится чтением; проверка ниже — лишь регрессионный сторож против
|
|
5
|
+
* уже случавшихся формулировок, см. «что она не гарантирует»). Из 403 известно
|
|
6
|
+
* ровно одно: у аккаунта нет доступа. Тем же ответом
|
|
7
|
+
* отвечает аккаунт, у которого доступ СНЯЛИ (третья поверхность вентиля
|
|
8
|
+
* построена вокруг именно этого случая — `credit-guard.ts`), и обещание скорого
|
|
9
|
+
* приёма было бы для него ложью в самый неподходящий момент. Поэтому ни одна
|
|
10
|
+
* поверхность, объясняющая этот отказ, не называет ни срока, ни номера.
|
|
11
|
+
*
|
|
12
|
+
* ПОЧЕМУ СПИСОК ОДИН НА ВСЕХ. Правило нарушалось ПЯТЬ раз подряд, и каждый раз
|
|
13
|
+
* чинилось по адресу находки: совет агенту, `SKILL.md`, тело ответа, снова
|
|
14
|
+
* совет, публичная дока. Когда сторожей стало двое, список немедленно
|
|
15
|
+
* разошёлся: у одного было `yet`, у другого — русские корни. Два ответа на
|
|
16
|
+
* вопрос «что такое это правило» — тот же дефект, который эта же приёмка дважды
|
|
17
|
+
* признавала блокером (два перечня писателей `admitted_at`, два текста про
|
|
18
|
+
* очередь). Лечение одно и то же: одна копия, остальные ссылаются.
|
|
19
|
+
*
|
|
20
|
+
* ЯЗЫКА ДВА, ПОТОМУ ЧТО КОРПУС ДВУЯЗЫЧНЫЙ. Код и агентские тексты английские,
|
|
21
|
+
* документация и комментарии русские. Пятое вхождение уцелело ровно потому, что
|
|
22
|
+
* сторож знал только английский.
|
|
23
|
+
*
|
|
24
|
+
* КОРНИ, А НЕ СЛОВОФОРМЫ: `волн` ловит «волну» и «волнами», `очеред` —
|
|
25
|
+
* «очередь» и «очереди».
|
|
26
|
+
*
|
|
27
|
+
* ЧТО ЭТА ПРОВЕРКА НЕ ГАРАНТИРУЕТ, И ЭТО ГЛАВНОЕ ПРО НЕЁ.
|
|
28
|
+
*
|
|
29
|
+
* Она НЕ обеспечивает инвариант «не называет срока» — обеспечить смысловой
|
|
30
|
+
* инвариант списком подстрок невозможно в принципе. «access will be granted
|
|
31
|
+
* tomorrow», «доступ появится в пятницу», «soon» пройдут: их в списке нет, и
|
|
32
|
+
* добавить все нельзя — язык не кончается. Обещание, написанное вовсе без имени
|
|
33
|
+
* отказа, тоже пройдёт: якорь его не найдёт.
|
|
34
|
+
*
|
|
35
|
+
* ЧЕГО СПИСОК НЕ ЗНАЕТ, названо поимённо, чтобы следующий автор не полагался на
|
|
36
|
+
* сторожа там, где тот слеп: `soon`, `shortly`, `waitlist`, `invite`, `batch`,
|
|
37
|
+
* «скоро», «в ближайшее время», «лист ожидания», «пригласим», «завтра». Все они
|
|
38
|
+
* пройдут. Добавлять их нельзя: «скоро» и `soon` встречаются в верных текстах
|
|
39
|
+
* повсюду, и сторож станет шумным — а шумного снимают.
|
|
40
|
+
*
|
|
41
|
+
* Что она РЕАЛЬНО делает: не даёт вернуться ШЕСТИ формулировкам, которые в этой
|
|
42
|
+
* стори уже возвращались — по одной на круг приёмки, в шести разных местах.
|
|
43
|
+
* Регрессионный сторож против известного класса, а не доказательство свойства.
|
|
44
|
+
* Само свойство держит чтение: правило и его довод записаны у
|
|
45
|
+
* `accountNotAdmittedError`, и рецензент, читающий текст отказа, проверяет
|
|
46
|
+
* смысл, а не подстроки. Считать иначе — значит второй раз поверить, что
|
|
47
|
+
* зелёный тест равен верному коду.
|
|
48
|
+
*
|
|
49
|
+
* ЧЕМ ЭТА ПРОВЕРКА ПЛАТИТ, названо прямо. Подстрочный поиск не отличает
|
|
50
|
+
* обещание от его отрицания: верная фраза «отказ не ставит аккаунт в очередь»
|
|
51
|
+
* покраснеет. Это осознанный обмен — сторож ошибается ГРОМКО и чинится
|
|
52
|
+
* переписыванием фразы, тогда как сторож, разбирающий отрицания, ошибётся ТИХО
|
|
53
|
+
* и пропустит обещание. Тексты запретов в этом проекте пишутся без запрещаемых
|
|
54
|
+
* слов; так уже сделано в `SKILL.md` и в `docs/03-api.md`.
|
|
55
|
+
*
|
|
56
|
+
* ЛЕЖИТ В `__fixtures__`, а не в публичном экспорте пакета: это тестовый
|
|
57
|
+
* материал, а не часть контракта клиентов.
|
|
58
|
+
*/
|
|
59
|
+
export declare const QUEUE_PROMISES: readonly ["in waves", "in the queue", "next wave", "yet", "волн", "очеред", "пока что", "подожди"];
|
|
60
|
+
/**
|
|
61
|
+
* Предмет правила — В НОРМАЛИЗОВАННОМ ВИДЕ, а не одним написанием.
|
|
62
|
+
*
|
|
63
|
+
* Скоуп по ИМЕНИ, а не по файлу, проводит границу по смыслу: `CLAUDE.md` вправе
|
|
64
|
+
* описывать приём волнами как операторский процесс, а `docs/03-api.md` §7 —
|
|
65
|
+
* очередь рендеров при превышении потолка. Ни то, ни другое не утверждает
|
|
66
|
+
* ничего про этот 403.
|
|
67
|
+
*
|
|
68
|
+
* НО ИМЯ У ПРЕДМЕТА НЕ ОДНО. Кодовая база называет его четырьмя написаниями:
|
|
69
|
+
* `account_not_admitted` (тело и документы), `accountNotAdmittedBody`
|
|
70
|
+
* (сборка), `NotAdmittedFailure` (вид отказа) и `kind: "not_admitted"` (вердикт
|
|
71
|
+
* на четырёх поверхностях). Сторож, знавший только первое, не видел ЧЕТЫРЕХ
|
|
72
|
+
* файлов, объясняющих тот же отказ, — включая сообщение `issue-token.ts`,
|
|
73
|
+
* которое читает человек. Обе приёмки нашли это независимо, и это та же форма,
|
|
74
|
+
* что «список слов английский, а корпус двуязычный»: скоуп по смыслу остаётся
|
|
75
|
+
* скоупом по написанию, пока опознание однодиалектное.
|
|
76
|
+
*
|
|
77
|
+
* Поэтому сравнение идёт по нормализованному тексту: снимаем `_`, приводим к
|
|
78
|
+
* нижнему регистру, ищем подстроку. Любое БУДУЩЕЕ написание ловится само, без
|
|
79
|
+
* правки сторожа.
|
|
80
|
+
*
|
|
81
|
+
* ЛОЖНЫХ СРАБАТЫВАНИЙ НА СОСЕДЯХ НЕТ, и это проверено, а не предположено:
|
|
82
|
+
* `already_admitted` (вердикт US-602 «у рана уже есть холд») нормализуется в
|
|
83
|
+
* `alreadyadmitted` и подстроки `notadmitted` не содержит.
|
|
84
|
+
*/
|
|
85
|
+
export declare const NOT_ADMITTED_ANCHOR = "notadmitted";
|
|
86
|
+
/** Снимает разницу написаний: `account_not_admitted` и `NotAdmittedFailure` — одно. */
|
|
87
|
+
export declare function normalizeForAnchor(text: string): string;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ОБЕЩАНИЯ ОЧЕРЕДИ, ЗАПРЕЩЁННЫЕ НА ОТКАЗЕ `account_not_admitted` (US-620).
|
|
3
|
+
*
|
|
4
|
+
* ПРАВИЛО (держится чтением; проверка ниже — лишь регрессионный сторож против
|
|
5
|
+
* уже случавшихся формулировок, см. «что она не гарантирует»). Из 403 известно
|
|
6
|
+
* ровно одно: у аккаунта нет доступа. Тем же ответом
|
|
7
|
+
* отвечает аккаунт, у которого доступ СНЯЛИ (третья поверхность вентиля
|
|
8
|
+
* построена вокруг именно этого случая — `credit-guard.ts`), и обещание скорого
|
|
9
|
+
* приёма было бы для него ложью в самый неподходящий момент. Поэтому ни одна
|
|
10
|
+
* поверхность, объясняющая этот отказ, не называет ни срока, ни номера.
|
|
11
|
+
*
|
|
12
|
+
* ПОЧЕМУ СПИСОК ОДИН НА ВСЕХ. Правило нарушалось ПЯТЬ раз подряд, и каждый раз
|
|
13
|
+
* чинилось по адресу находки: совет агенту, `SKILL.md`, тело ответа, снова
|
|
14
|
+
* совет, публичная дока. Когда сторожей стало двое, список немедленно
|
|
15
|
+
* разошёлся: у одного было `yet`, у другого — русские корни. Два ответа на
|
|
16
|
+
* вопрос «что такое это правило» — тот же дефект, который эта же приёмка дважды
|
|
17
|
+
* признавала блокером (два перечня писателей `admitted_at`, два текста про
|
|
18
|
+
* очередь). Лечение одно и то же: одна копия, остальные ссылаются.
|
|
19
|
+
*
|
|
20
|
+
* ЯЗЫКА ДВА, ПОТОМУ ЧТО КОРПУС ДВУЯЗЫЧНЫЙ. Код и агентские тексты английские,
|
|
21
|
+
* документация и комментарии русские. Пятое вхождение уцелело ровно потому, что
|
|
22
|
+
* сторож знал только английский.
|
|
23
|
+
*
|
|
24
|
+
* КОРНИ, А НЕ СЛОВОФОРМЫ: `волн` ловит «волну» и «волнами», `очеред` —
|
|
25
|
+
* «очередь» и «очереди».
|
|
26
|
+
*
|
|
27
|
+
* ЧТО ЭТА ПРОВЕРКА НЕ ГАРАНТИРУЕТ, И ЭТО ГЛАВНОЕ ПРО НЕЁ.
|
|
28
|
+
*
|
|
29
|
+
* Она НЕ обеспечивает инвариант «не называет срока» — обеспечить смысловой
|
|
30
|
+
* инвариант списком подстрок невозможно в принципе. «access will be granted
|
|
31
|
+
* tomorrow», «доступ появится в пятницу», «soon» пройдут: их в списке нет, и
|
|
32
|
+
* добавить все нельзя — язык не кончается. Обещание, написанное вовсе без имени
|
|
33
|
+
* отказа, тоже пройдёт: якорь его не найдёт.
|
|
34
|
+
*
|
|
35
|
+
* ЧЕГО СПИСОК НЕ ЗНАЕТ, названо поимённо, чтобы следующий автор не полагался на
|
|
36
|
+
* сторожа там, где тот слеп: `soon`, `shortly`, `waitlist`, `invite`, `batch`,
|
|
37
|
+
* «скоро», «в ближайшее время», «лист ожидания», «пригласим», «завтра». Все они
|
|
38
|
+
* пройдут. Добавлять их нельзя: «скоро» и `soon` встречаются в верных текстах
|
|
39
|
+
* повсюду, и сторож станет шумным — а шумного снимают.
|
|
40
|
+
*
|
|
41
|
+
* Что она РЕАЛЬНО делает: не даёт вернуться ШЕСТИ формулировкам, которые в этой
|
|
42
|
+
* стори уже возвращались — по одной на круг приёмки, в шести разных местах.
|
|
43
|
+
* Регрессионный сторож против известного класса, а не доказательство свойства.
|
|
44
|
+
* Само свойство держит чтение: правило и его довод записаны у
|
|
45
|
+
* `accountNotAdmittedError`, и рецензент, читающий текст отказа, проверяет
|
|
46
|
+
* смысл, а не подстроки. Считать иначе — значит второй раз поверить, что
|
|
47
|
+
* зелёный тест равен верному коду.
|
|
48
|
+
*
|
|
49
|
+
* ЧЕМ ЭТА ПРОВЕРКА ПЛАТИТ, названо прямо. Подстрочный поиск не отличает
|
|
50
|
+
* обещание от его отрицания: верная фраза «отказ не ставит аккаунт в очередь»
|
|
51
|
+
* покраснеет. Это осознанный обмен — сторож ошибается ГРОМКО и чинится
|
|
52
|
+
* переписыванием фразы, тогда как сторож, разбирающий отрицания, ошибётся ТИХО
|
|
53
|
+
* и пропустит обещание. Тексты запретов в этом проекте пишутся без запрещаемых
|
|
54
|
+
* слов; так уже сделано в `SKILL.md` и в `docs/03-api.md`.
|
|
55
|
+
*
|
|
56
|
+
* ЛЕЖИТ В `__fixtures__`, а не в публичном экспорте пакета: это тестовый
|
|
57
|
+
* материал, а не часть контракта клиентов.
|
|
58
|
+
*/
|
|
59
|
+
export const QUEUE_PROMISES = [
|
|
60
|
+
"in waves",
|
|
61
|
+
"in the queue",
|
|
62
|
+
"next wave",
|
|
63
|
+
"yet",
|
|
64
|
+
"волн",
|
|
65
|
+
"очеред",
|
|
66
|
+
"пока что",
|
|
67
|
+
"подожди",
|
|
68
|
+
];
|
|
69
|
+
/**
|
|
70
|
+
* Предмет правила — В НОРМАЛИЗОВАННОМ ВИДЕ, а не одним написанием.
|
|
71
|
+
*
|
|
72
|
+
* Скоуп по ИМЕНИ, а не по файлу, проводит границу по смыслу: `CLAUDE.md` вправе
|
|
73
|
+
* описывать приём волнами как операторский процесс, а `docs/03-api.md` §7 —
|
|
74
|
+
* очередь рендеров при превышении потолка. Ни то, ни другое не утверждает
|
|
75
|
+
* ничего про этот 403.
|
|
76
|
+
*
|
|
77
|
+
* НО ИМЯ У ПРЕДМЕТА НЕ ОДНО. Кодовая база называет его четырьмя написаниями:
|
|
78
|
+
* `account_not_admitted` (тело и документы), `accountNotAdmittedBody`
|
|
79
|
+
* (сборка), `NotAdmittedFailure` (вид отказа) и `kind: "not_admitted"` (вердикт
|
|
80
|
+
* на четырёх поверхностях). Сторож, знавший только первое, не видел ЧЕТЫРЕХ
|
|
81
|
+
* файлов, объясняющих тот же отказ, — включая сообщение `issue-token.ts`,
|
|
82
|
+
* которое читает человек. Обе приёмки нашли это независимо, и это та же форма,
|
|
83
|
+
* что «список слов английский, а корпус двуязычный»: скоуп по смыслу остаётся
|
|
84
|
+
* скоупом по написанию, пока опознание однодиалектное.
|
|
85
|
+
*
|
|
86
|
+
* Поэтому сравнение идёт по нормализованному тексту: снимаем `_`, приводим к
|
|
87
|
+
* нижнему регистру, ищем подстроку. Любое БУДУЩЕЕ написание ловится само, без
|
|
88
|
+
* правки сторожа.
|
|
89
|
+
*
|
|
90
|
+
* ЛОЖНЫХ СРАБАТЫВАНИЙ НА СОСЕДЯХ НЕТ, и это проверено, а не предположено:
|
|
91
|
+
* `already_admitted` (вердикт US-602 «у рана уже есть холд») нормализуется в
|
|
92
|
+
* `alreadyadmitted` и подстроки `notadmitted` не содержит.
|
|
93
|
+
*/
|
|
94
|
+
export const NOT_ADMITTED_ANCHOR = "notadmitted";
|
|
95
|
+
/** Снимает разницу написаний: `account_not_admitted` и `NotAdmittedFailure` — одно. */
|
|
96
|
+
export function normalizeForAnchor(text) {
|
|
97
|
+
return text.replaceAll("_", "").toLowerCase();
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=queue-promises.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-promises.js","sourceRoot":"","sources":["../../src/__fixtures__/queue-promises.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU;IACV,cAAc;IACd,WAAW;IACX,KAAK;IACL,MAAM;IACN,QAAQ;IACR,UAAU;IACV,SAAS;CACD,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAEjD,uFAAuF;AACvF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAChD,CAAC"}
|
package/dist/api-failure.d.ts
CHANGED
|
@@ -40,13 +40,31 @@ export interface InsufficientCreditsFailure {
|
|
|
40
40
|
balanceCredits: number;
|
|
41
41
|
requiredCredits: number;
|
|
42
42
|
}
|
|
43
|
-
/**
|
|
43
|
+
/**
|
|
44
|
+
* Висит долг. Тоже терминально; лечится покупкой кредитов — поступившие гасят
|
|
45
|
+
* долг раньше, чем ложатся на баланс (clipwright#27). Отдельным от
|
|
46
|
+
* `insufficient_credits` отказ остаётся из-за разного положения дел: с долгом
|
|
47
|
+
* баланс бывает ненулевым.
|
|
48
|
+
*/
|
|
44
49
|
export interface DebtOutstandingFailure {
|
|
45
50
|
kind: "debt_outstanding";
|
|
46
51
|
status: number;
|
|
47
52
|
message: string;
|
|
48
53
|
debtCredits: number;
|
|
49
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Аккаунт не допущен в бету (US-620). Терминально, и лечится НЕ деньгами.
|
|
57
|
+
*
|
|
58
|
+
* Отдельный вид, а не `client_error` с кодом: у `client_error` совет агенту —
|
|
59
|
+
* «поправь вызов», а поправить в вызове нечего. Разница видна человеку: ему
|
|
60
|
+
* надо сказать «доступ выдаёт владелец», а не «ты что-то не так передал» и не
|
|
61
|
+
* «купи кредитов».
|
|
62
|
+
*/
|
|
63
|
+
export interface NotAdmittedFailure {
|
|
64
|
+
kind: "not_admitted";
|
|
65
|
+
status: number;
|
|
66
|
+
message: string;
|
|
67
|
+
}
|
|
50
68
|
/** 5xx: сервер обещает, что дело в нём. Повторять можно. */
|
|
51
69
|
export interface ServerFailure {
|
|
52
70
|
kind: "server_error";
|
|
@@ -62,7 +80,7 @@ export interface ClientFailure {
|
|
|
62
80
|
/** Код из тела, если тело вообще было контрактным. */
|
|
63
81
|
code: string | undefined;
|
|
64
82
|
}
|
|
65
|
-
export type ApiFailure = RateLimitedFailure | InsufficientCreditsFailure | DebtOutstandingFailure | ServerFailure | ClientFailure;
|
|
83
|
+
export type ApiFailure = RateLimitedFailure | InsufficientCreditsFailure | DebtOutstandingFailure | NotAdmittedFailure | ServerFailure | ClientFailure;
|
|
66
84
|
/**
|
|
67
85
|
* ПОВТОРЯТЬ ИЛИ НЕТ — ОДНОЙ ФУНКЦИЕЙ, а не условием на каждой поверхности.
|
|
68
86
|
*
|
package/dist/api-failure.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { apiError, debtOutstandingError, insufficientCreditsError } from "./errors.js";
|
|
1
|
+
import { accountNotAdmittedError, apiError, debtOutstandingError, insufficientCreditsError, } from "./errors.js";
|
|
2
2
|
import { rateLimitedError } from "./rate-limit.js";
|
|
3
3
|
/**
|
|
4
4
|
* ПОВТОРЯТЬ ИЛИ НЕТ — ОДНОЙ ФУНКЦИЕЙ, а не условием на каждой поверхности.
|
|
@@ -226,6 +226,13 @@ const BEHAVIOURAL_CODES = new Set([
|
|
|
226
226
|
rateLimitedError.shape.error.shape.code.value,
|
|
227
227
|
insufficientCreditsError.shape.error.shape.code.value,
|
|
228
228
|
debtOutstandingError.shape.error.shape.code.value,
|
|
229
|
+
// US-620. За этим кодом закреплено поведение в `packages/mcp-server/SKILL.md`
|
|
230
|
+
// («не предлагай пополнение — доступ выдаёт владелец»), значит он
|
|
231
|
+
// обязан подчиняться тому же правилу, что и три соседних: признаваться
|
|
232
|
+
// только на своём статусе. Без этой строки 402 с телом `account_not_admitted`
|
|
233
|
+
// (кэширующий прокси, отдавший тело одного ответа со статусом другого) увёл
|
|
234
|
+
// бы агента говорить «кредиты покупать не надо» на денежном отказе.
|
|
235
|
+
accountNotAdmittedError.shape.error.shape.code.value,
|
|
229
236
|
]);
|
|
230
237
|
/**
|
|
231
238
|
* Статус + тело + заголовок → то, с чем можно ПОСТУПИТЬ.
|
|
@@ -293,6 +300,18 @@ export function parseApiFailure(input) {
|
|
|
293
300
|
debtCredits: error.debt_credits,
|
|
294
301
|
};
|
|
295
302
|
}
|
|
303
|
+
// ВЕНТИЛЬ НА N — НА СВОЁМ СТАТУСЕ И ТОЛЬКО НА НЁМ (US-620). Ветка нужна
|
|
304
|
+
// именно потому, что код внесён в `BEHAVIOURAL_CODES`: без неё он подавлялся
|
|
305
|
+
// бы и на честном 403, то есть защита от несовпадения статуса с телом съела
|
|
306
|
+
// бы сам код. Здесь он признаётся, ниже — нет.
|
|
307
|
+
const notAdmitted = status === 403 ? accountNotAdmittedError.safeParse(body) : undefined;
|
|
308
|
+
if (notAdmitted?.success === true) {
|
|
309
|
+
return {
|
|
310
|
+
kind: "not_admitted",
|
|
311
|
+
status,
|
|
312
|
+
message: notAdmitted.data.error.message,
|
|
313
|
+
};
|
|
314
|
+
}
|
|
296
315
|
// Дальше тело либо не наше, либо не разобралось вовсе. Общий конверт
|
|
297
316
|
// (`apiError`) даёт хотя бы текст и код; всё, что не разобралось и им, —
|
|
298
317
|
// чужое, и сообщение придётся собрать из статуса.
|
|
@@ -410,11 +429,19 @@ export function agentFailureReport(failure) {
|
|
|
410
429
|
status: "FAILED",
|
|
411
430
|
code: "debt_outstanding",
|
|
412
431
|
retryable: false,
|
|
413
|
-
//
|
|
414
|
-
//
|
|
432
|
+
// ⚠️ ЗДЕСЬ СТОЯЛО «совет „пополни“ неверен — пополнение долг не
|
|
433
|
+
// снимает». С clipwright#27 это ЛОЖЬ: поступившие кредиты гасят долг
|
|
434
|
+
// первым. Хуже того, текст адресован АГЕНТУ и уводил его от
|
|
435
|
+
// единственного действия, которое снимает блокировку, — то есть
|
|
436
|
+
// отменял починку в точке доставки. Отдельным от `insufficient_credits`
|
|
437
|
+
// текст остаётся по другой причине: у счёта с долгом деньги на балансе
|
|
438
|
+
// БЫВАЮТ (`topUpHold` наращивает долг, не трогая баланс), и «не хватает
|
|
439
|
+
// кредитов» сказало бы заведомую неправду.
|
|
415
440
|
next_action: `STOP. Do NOT retry: an outstanding debt of ${failure.debtCredits} credits blocks new ` +
|
|
416
|
-
"paid runs. Tell the user to
|
|
417
|
-
"
|
|
441
|
+
"paid runs. Tell the user to buy credits — incoming credits clear the debt before any " +
|
|
442
|
+
"of them reach the balance. Clearing it lifts this block, but the run still needs " +
|
|
443
|
+
`enough credits of its own: a purchase of exactly ${failure.debtCredits} clears the ` +
|
|
444
|
+
"debt and adds nothing to the balance. Nothing was charged and no run was created.",
|
|
418
445
|
debt_credits: failure.debtCredits,
|
|
419
446
|
};
|
|
420
447
|
case "server_error": {
|
|
@@ -436,6 +463,20 @@ export function agentFailureReport(failure) {
|
|
|
436
463
|
...(seconds !== undefined && { retry_after_seconds: seconds }),
|
|
437
464
|
};
|
|
438
465
|
}
|
|
466
|
+
case "not_admitted":
|
|
467
|
+
return {
|
|
468
|
+
...base,
|
|
469
|
+
status: "FAILED",
|
|
470
|
+
code: "account_not_admitted",
|
|
471
|
+
retryable: false,
|
|
472
|
+
// Совет отличается от общего 4xx намеренно: чинить в вызове нечего, и
|
|
473
|
+
// покупка кредитов блокировку не снимет. Тот же текст, что в SKILL.md.
|
|
474
|
+
// Ни срока, ни обещания допуска: тем же кодом отвечает счёт,
|
|
475
|
+
// обезличенный удалением (US-624), а допуска на надгробие не бывает.
|
|
476
|
+
next_action: "STOP. The account is not admitted to the beta. Do NOT retry and do NOT offer to buy " +
|
|
477
|
+
"credits: neither changes the answer. Tell the user the account has no beta access and " +
|
|
478
|
+
"to ask the operator about it.",
|
|
479
|
+
};
|
|
439
480
|
case "client_error":
|
|
440
481
|
return {
|
|
441
482
|
...base,
|
package/dist/api-failure.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-failure.js","sourceRoot":"","sources":["../src/api-failure.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api-failure.js","sourceRoot":"","sources":["../src/api-failure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { makeUgcInputShape } from "./skills.js";
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
*
|
|
6
|
-
* ЗАЧЕМ ОН ЕСТЬ. Аудит 2026-07-21 показал: из четырнадцати полей публичного
|
|
7
|
-
* контракта на выход влияли четыре, а десять принимались и МОЛЧА игнорировались
|
|
8
|
-
* — включая все три поля идентичности и `webhook_url` (клиент подписывался на
|
|
9
|
-
* уведомление и не получал ничего). Это прямое нарушение правила проекта №3.
|
|
10
|
-
* Точечная починка вернула бы тот же класс дефекта при следующей фиче, поэтому
|
|
11
|
-
* лечится не список полей, а МЕХАНИЗМ: у каждого поля обязано быть записанное
|
|
12
|
-
* решение, и отсутствие решения ловится компилятором.
|
|
13
|
-
*
|
|
14
|
-
* ЧТО ЭТОТ ФАЙЛ НЕ ДЕЛАЕТ — И ЭТО ГЛАВНОЕ. Тип `Record<keyof …, Disposition>`
|
|
15
|
-
* — страж ПОЛНОТЫ, а не ИСТИННОСТИ: он ловит отсутствие строки, но не её
|
|
16
|
-
* неверность. Именно так `resolution` числился бы «работающим», хотя адаптер
|
|
17
|
-
* шлёт вендору литерал. Истинность строки `implemented` доказывает EGRESS-ТЕСТ
|
|
18
|
-
* (`contract-dispositions.egress.test.ts`): изменение значения поля обязано
|
|
19
|
-
* давать наблюдаемое различие в захваченном теле исходящего запроса вендору.
|
|
20
|
-
* Запись без egress-теста считается недоказанной — за этим следит мета-тест.
|
|
21
|
-
*/
|
|
3
|
+
/** РЕЕСТР ДИСПОЗИЦИЙ ПОЛЕЙ ВХОДА `make_ugc`: у каждого поля обязано быть записанное */
|
|
4
|
+
/** решение. Тип — страж ПОЛНОТЫ, истинность доказывает egress-тест. */
|
|
22
5
|
/**
|
|
23
6
|
* Версия публичного контракта. Отдаётся заголовком `X-Clipwright-Contract` и
|
|
24
7
|
* полем `contract_version` в ответе quote. Любое следующее ломающее изменение
|
|
@@ -1,24 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { makeUgcInputShape } from "./skills.js";
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
*
|
|
6
|
-
* ЗАЧЕМ ОН ЕСТЬ. Аудит 2026-07-21 показал: из четырнадцати полей публичного
|
|
7
|
-
* контракта на выход влияли четыре, а десять принимались и МОЛЧА игнорировались
|
|
8
|
-
* — включая все три поля идентичности и `webhook_url` (клиент подписывался на
|
|
9
|
-
* уведомление и не получал ничего). Это прямое нарушение правила проекта №3.
|
|
10
|
-
* Точечная починка вернула бы тот же класс дефекта при следующей фиче, поэтому
|
|
11
|
-
* лечится не список полей, а МЕХАНИЗМ: у каждого поля обязано быть записанное
|
|
12
|
-
* решение, и отсутствие решения ловится компилятором.
|
|
13
|
-
*
|
|
14
|
-
* ЧТО ЭТОТ ФАЙЛ НЕ ДЕЛАЕТ — И ЭТО ГЛАВНОЕ. Тип `Record<keyof …, Disposition>`
|
|
15
|
-
* — страж ПОЛНОТЫ, а не ИСТИННОСТИ: он ловит отсутствие строки, но не её
|
|
16
|
-
* неверность. Именно так `resolution` числился бы «работающим», хотя адаптер
|
|
17
|
-
* шлёт вендору литерал. Истинность строки `implemented` доказывает EGRESS-ТЕСТ
|
|
18
|
-
* (`contract-dispositions.egress.test.ts`): изменение значения поля обязано
|
|
19
|
-
* давать наблюдаемое различие в захваченном теле исходящего запроса вендору.
|
|
20
|
-
* Запись без egress-теста считается недоказанной — за этим следит мета-тест.
|
|
21
|
-
*/
|
|
3
|
+
/** РЕЕСТР ДИСПОЗИЦИЙ ПОЛЕЙ ВХОДА `make_ugc`: у каждого поля обязано быть записанное */
|
|
4
|
+
/** решение. Тип — страж ПОЛНОТЫ, истинность доказывает egress-тест. */
|
|
22
5
|
/**
|
|
23
6
|
* Версия публичного контракта. Отдаётся заголовком `X-Clipwright-Contract` и
|
|
24
7
|
* полем `contract_version` в ответе quote. Любое следующее ломающее изменение
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-dispositions.js","sourceRoot":"","sources":["../src/contract-dispositions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"contract-dispositions.js","sourceRoot":"","sources":["../src/contract-dispositions.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -42,12 +42,19 @@ export declare const insufficientCreditsError: z.ZodObject<{
|
|
|
42
42
|
}, z.core.$strip>;
|
|
43
43
|
export type InsufficientCreditsError = z.infer<typeof insufficientCreditsError>;
|
|
44
44
|
/**
|
|
45
|
-
* На аккаунте висит непогашенный долг.
|
|
45
|
+
* На аккаунте висит непогашенный долг.
|
|
46
46
|
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
47
|
+
* ОТДЕЛЬНЫЙ КОД, А НЕ ОТТЕНОК ПРЕДЫДУЩЕГО, и довод у этого ровно один: у счёта
|
|
48
|
+
* с долгом деньги на балансе БЫВАЮТ. Такое состояние оставляет `topUpHold`
|
|
49
|
+
* (ветка `deferred_to_debt`) — он наращивает долг, не трогая баланс; два других
|
|
50
|
+
* производителя долга обнуляют баланс, заводя его. Ответ «недостаточно
|
|
51
|
+
* кредитов» сказал бы такому счёту заведомую неправду.
|
|
52
|
+
*
|
|
53
|
+
* ⚠️ ВТОРАЯ ПОЛОВИНА ПРЕЖНЕГО ДОВОДА — «агента отправило бы покупать кредиты,
|
|
54
|
+
* которые не снимут блокировку» — СНЯТА КАК ЛОЖНАЯ (clipwright#27): кредиты
|
|
55
|
+
* снимают. Вывод пережил свою причину, и это стоит сказать прямо: оставь я
|
|
56
|
+
* старую формулировку, следующий читатель либо слил бы два кода, увидев, что
|
|
57
|
+
* лечение одно, либо заново вывел бы из неё неверный совет клиенту.
|
|
51
58
|
*/
|
|
52
59
|
export declare const debtOutstandingError: z.ZodObject<{
|
|
53
60
|
error: z.ZodObject<{
|
|
@@ -57,6 +64,41 @@ export declare const debtOutstandingError: z.ZodObject<{
|
|
|
57
64
|
}, z.core.$strip>;
|
|
58
65
|
}, z.core.$strip>;
|
|
59
66
|
export type DebtOutstandingError = z.infer<typeof debtOutstandingError>;
|
|
67
|
+
/**
|
|
68
|
+
* Аккаунт не допущен в бету (US-620). Ни «пополни», ни «погаси»: доступ выдаёт
|
|
69
|
+
* владелец, и деньги на это не влияют.
|
|
70
|
+
*
|
|
71
|
+
* Отдельный код по тому же доводу, что отделил долг от нехватки: у
|
|
72
|
+
* недопущенного аккаунта деньги на балансе БЫВАЮТ, и оба денежных ответа
|
|
73
|
+
* отправили бы его агента совершать действия, которые блокировку не снимут.
|
|
74
|
+
* Отказ терминальный: повтор того же запроса даст то же самое, пока владелец не
|
|
75
|
+
* допустит аккаунт командой `admit`.
|
|
76
|
+
*
|
|
77
|
+
* ЧИСЕЛ В ТЕЛЕ НЕТ, И ЭТО НЕ ЭКОНОМИЯ. Порядковый номер мы не считаем: доступ
|
|
78
|
+
* даётся решением человека, а не по счётчику, и назвать номер значило бы
|
|
79
|
+
* обещать срок, которого никто не давал.
|
|
80
|
+
*
|
|
81
|
+
* ПО ТОЙ ЖЕ ПРИЧИНЕ ТЕЛО НЕ НАЗЫВАЕТ НИ СРОКА, НИ НОМЕРА, НИ БЛИЗОСТИ РАЗВЯЗКИ.
|
|
82
|
+
* Из отказа известно ровно одно: доступа нет. Так же отвечает аккаунт, у
|
|
83
|
+
* которого доступ СНЯЛИ, — и обещание скорого приёма было бы для него ложью в
|
|
84
|
+
* самый неподходящий момент. Правило принималось трижды и трижды чинилось по адресу
|
|
85
|
+
* находки: сперва в совете агенту (`api-failure.ts`), потом в `SKILL.md`, и
|
|
86
|
+
* только тогда — ЗДЕСЬ, в единственном месте, которое порождает эту строку для
|
|
87
|
+
* всех остальных. Проверка стоит на этой функции, а не на её производных.
|
|
88
|
+
*
|
|
89
|
+
* ПРАВИЛО РАСПРОСТРАНЯЕТСЯ НА ЛЮБУЮ ПОВЕРХНОСТЬ, объясняющую этот отказ, а не
|
|
90
|
+
* только на те, что существуют сегодня. Ближайшие будущие — страница ключей
|
|
91
|
+
* (US-608) и лендинг US-614; там соблазн назвать срок сильнее всего. Сторож
|
|
92
|
+
* (`scripts/docs-consistency.test.ts`) их уже обходит, но HTML он читает как
|
|
93
|
+
* текст и поймает только то, что стоит рядом с именем кода.
|
|
94
|
+
*/
|
|
95
|
+
export declare const accountNotAdmittedError: z.ZodObject<{
|
|
96
|
+
error: z.ZodObject<{
|
|
97
|
+
code: z.ZodLiteral<"account_not_admitted">;
|
|
98
|
+
message: z.ZodString;
|
|
99
|
+
}, z.core.$strip>;
|
|
100
|
+
}, z.core.$strip>;
|
|
101
|
+
export type AccountNotAdmittedError = z.infer<typeof accountNotAdmittedError>;
|
|
60
102
|
/**
|
|
61
103
|
* Сборка тела «не хватило кредитов».
|
|
62
104
|
*
|
|
@@ -68,7 +110,39 @@ export declare function insufficientCreditsBody(args: {
|
|
|
68
110
|
balanceCredits: number;
|
|
69
111
|
requiredCredits: number;
|
|
70
112
|
}): InsufficientCreditsError;
|
|
113
|
+
/** Сборка тела «не допущен в бету». См. довод о формулировке выше. */
|
|
114
|
+
export declare function accountNotAdmittedBody(): AccountNotAdmittedError;
|
|
71
115
|
/** Сборка тела «висит долг». См. довод о формулировке выше. */
|
|
72
116
|
export declare function debtOutstandingBody(args: {
|
|
73
117
|
debtCredits: number;
|
|
74
118
|
}): DebtOutstandingError;
|
|
119
|
+
/** Во входе есть поле, которое продукт отклоняет. `fields` называет их поимённо: */
|
|
120
|
+
/** агенту чинить нечего, пока он не знает, какое именно убрать. */
|
|
121
|
+
export declare const rejectedFieldError: z.ZodObject<{
|
|
122
|
+
error: z.ZodObject<{
|
|
123
|
+
code: z.ZodLiteral<"rejected_field">;
|
|
124
|
+
message: z.ZodString;
|
|
125
|
+
fields: z.ZodArray<z.ZodString>;
|
|
126
|
+
}, z.core.$strip>;
|
|
127
|
+
}, z.core.$strip>;
|
|
128
|
+
export type RejectedFieldError = z.infer<typeof rejectedFieldError>;
|
|
129
|
+
/** Сборка тела «поле отклонено». Причина берётся из реестра диспозиций. */
|
|
130
|
+
export declare function rejectedFieldBody(hits: readonly {
|
|
131
|
+
field: string;
|
|
132
|
+
message: string;
|
|
133
|
+
}[]): RejectedFieldError;
|
|
134
|
+
/** КОДЫ С ГОЛЫМ КОНВЕРТОМ — ОДНИМ РЕЕСТРОМ: перечень §6 `docs/03-api.md` объявлен */
|
|
135
|
+
/** исчерпывающим. Устройство сторожей — `docs/41-api-error-contract.md`. */
|
|
136
|
+
declare const BARE_ERROR_CODES: readonly ["aspect_conflict", "idempotency_key_required", "idempotency_key_reused", "internal_error", "invalid_request", "not_found", "paid_render_disabled", "payload_too_large", "unauthorized", "upstream_error"];
|
|
137
|
+
/** Код отказа, тело которого несёт только `code` и `message`. */
|
|
138
|
+
export type BareApiErrorCode = (typeof BARE_ERROR_CODES)[number];
|
|
139
|
+
/** ВСЕ коды, которые умеет вернуть API: голые плюс типизированные. Значения вторых */
|
|
140
|
+
/** берутся из их схем, поэтому переименование доедет сюда само. */
|
|
141
|
+
export declare const API_ERROR_CODES: readonly string[];
|
|
142
|
+
/** Тело голого отказа. Единственный путь к нему: код вне реестра не компилируется, */
|
|
143
|
+
/** а конверт мимо этой функции валит `scripts/api-error-envelope.test.ts`. */
|
|
144
|
+
export declare function apiErrorBody(args: {
|
|
145
|
+
code: BareApiErrorCode;
|
|
146
|
+
message: string;
|
|
147
|
+
}): ApiError;
|
|
148
|
+
export {};
|