WEB-547 · Задача · — · web
SEC-030 Generated ARI credential config lacks explicit private file modes
Закрыт
P2
ведёт: —
эпик: WEB-515
Суть
## ДЛЯ НУЛЕВОГО АГЕНТА (обновлено 2026-09-05 UTC)
- **Суть одной строкой:** SEC-030 Generated ARI credential config lacks explicit private file modes
- **Текущее состояние:** статус: todo; что на проде: body: Текущее состояние:** статус: todo; что на проде: 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SE; 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SEC-030: при включённом live Stasis launcher записывает A; 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d; что принято/ждёт посадки: body: Текущее состояние:** статус: todo; что на проде: 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SE; 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d; что в работе: body: Текущее состояние:** статус: todo; что на проде: 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SE; 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SEC-030: при включённом live Stasis launcher записывает A; 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d
- **Кто работал:**
- body: Текущее состояние:** статус: todo; что на проде: 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SE
- 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SEC-030: при включённом live Stasis launcher записывает A
- 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d
- **Ветки/бандлы/отчёты:**
- body: Ветки/бандлы/отчёты:**
- 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d
- **KNOWN ISSUES / ТРАБЛШУТИНГ:** симптом → проверка → причина (file:line, если есть) → лечение
- body: KNOWN ISSUES / ТРАБЛШУТИНГ:** симптом → проверка → причина (file:line, если есть) → лечение
- 2026-09-05T17:59:23.087Z: block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SEC-030: при включённом live Stasis launcher записывает A
- **Эволюция:**
- 2026-09-05T17:59:23.087Z → block10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30 SEC-030: при включённом live Stasis launcher записывает ARI credential в generated
- 2026-09-05T17:59:52.814Z → block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d3df805d4ce37186c85b0c0b72f
- **Следующий шаг:** см. текущую работу из комментариев: 2026-09-05T17:59:52.814Z: block10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30 Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d
Связи
- связан → WEB-515 — ЭПИК: АУДИТ БЕЗОПАСНОСТИ проекта (Codex gpt-6-astra как security lead) — карта поверхности, threat model, ASVS L2, реестр находок, фиксы с adversarial-приёмкой на Claude
Лента
2026-09-05T17:59:23.087Z · astra-securityblock10-sec030-handoff — 2026-09-05T17:59:23.086949+00:00 / IST=2026-09-05T23:29:23.087122+05:30
SEC-030: при включённом live Stasis launcher записывает ARI credential в generated ari.conf без явных private modes. infra/sip/start-sip-native-opus-live-experimental.sh:8–12,38–43,70–76 → systemd-sip-supervisor-opus-live-experimental.sh:9 / ag-sip-native-opus-live-experimental.service:8–15,21–22 → start-sip-native.sh:182–185,240–245,307–324. Config root по умолчанию /tmp/ag-asterisk-native-opus-live-experimental, mkdir/redirection без umask/chmod. Asterisk astetcdir386–407 и gateway481–496 — actual consumers. Аналогичный x64 writer: start-sip-opus-x64.sh:49–55,319–320,361–377,492–508,647–649.
Source-only P2 hardening; CVSS3.1 pending. World-readable состояние НЕ установлено: effective umask, directory ACL, installed unit/drop-ins, непустой credential и доступ локальных читателей неизвестны. Unit User=pi и отдельный experimental flag сохранены. Это generated secret-file condition, не SEC014 URL-log sink и не SEC003 cleanup ownership. Никаких live reads/infra edits.
Действие: proof/design only2029, Codex sol; coordinator alone owns gateway/SIP patch window. Suggested design: explicit private runtime directory,0700/0600, restrictive UMask and consumer-compatible runtime isolation. No service/env/secret rotation edits.
Три группы приёмки:
1. В изолированном временном корне с обычным synthetic credential проверить точный writer и ожидаемые restrictive modes при разных inherited umask. Новые и заранее существовавшие permissive directory/file должны быть0700/0600 после proposed fix; существующие restrictive ACL/ownership не расширяются. Перед любой shell-пробой доказать containment cleanup и заменить запуск Asterisk/gateway инертными адаптерами. Verbatim extracted writer proof маркировать как subset, не как full launcher/systemd acceptance.
2. При отключённом Stasis sensitive ari.conf не создаётся; при включённом Asterisk и gateway получают одинаковое synthetic значение через functional path. No secret value appears in diagnostic output. Отсутствие credential сейчас только warning: proposed fail-closed — отдельный policy/design вопрос; не вводить произвольное понятие weak password и не объявлять его текущим RED-contract.
3. Restart/update/stop на owned temp root не создаёт более доступную промежуточную копию и сохраняет owner-only modes. Проверить совместимость native/x64 consumers и unit runtime-dir/private-tmp contract; простое включение PrivateTmp/ProtectSystem без анализа shared consumers не является готовым фиксом. Effective deployed unit/ACL остаётся UNKNOWN до отдельного sanitized coordinator readback.
KNOWN ISSUES / ТРАБЛШУТИНГ: source snapshot l106-line/6930c6832744e273ccad495caba9b31329761650 differs from potentially newer live gateway. Never rsync/replay launcher from this audit tree. No tests executed by parent/agent.
Outbox2029 SHA256 39dc5b170aa2d1f130bc9686acf1acceecda7e19d91935c482b79b73f47dbcc9
2026-09-05T17:59:52.814Z · astra-securityblock10-2029-transfer — 2026-09-05T17:59:52.813928+00:00 / IST=2026-09-05T23:29:52.814019+05:30
Outbox/2029-ari-config-evidence.tar.gz, SHA256 23937b7dd4d3df805d4ce37186c85b0c0b72f3307304af68ecbc35ac77092caa, MANIFEST4/4 verified. Supplemental evidence for2029 only; no new job, no gateway deployment. Worker must readback archive SHA before proof.
2026-09-05T19:40:09.192Z · astra-securitycont12-intake-web-547 — 2026-09-05T19:40:09.191987+00:00 / IST=2026-09-06T01:10:09.191992+05:30
2029 tail: GO толькоdesignhandoff,commitnone,22/22okreported. Verbatimnative/x64writer subsets наownedtemp демонстрируютзависимостьотumask, x64сохраняетстарыеpermissivemodes. Это выполняемыеsubsetcharacterization, неfullsystemdилиliveproof и неproductfix; designadapterGREENотдельно. Source tree dc4821ef184e7c9394de853cc8747e9ba43f1a5e совпадаетсlocal6930. Native disabledStasisнепишетari.conf; x64пишетбезусловно, ноэтоНЕсамостоятельныйdefectбезконтрактаегоARIпотребителей. Нельзяавтоматическиудалятьx64ARIпоnativeфлагам. FullREPORT/COMMANDS/manifest9493cae5503ac5bdfe8bbe7e94340dc5860b1dd5df18d21e28fa14f3b761df4aудалённо; ACLskipcountsтребуютfullTAP. WorkspacemovedtoTrashпоreport; recoveryдоочистки. Runtimeunknown,CVSSpending, coordinatorwindow; todo.
KNOWN ISSUES / ТРАБЛШУТИНГ: parentread-only, no product tests or real restores. Incoming hashes in evidence/block12/intake-manifest.json. Queued corrections/reviews are not deployed changes.
2026-09-06T00:22:31.718Z · astra-securitycont16-wave-2074-web-547 — 2026-09-06T00:22:31.718027+00:00 / IST=2026-09-06T05:52:31.718032+05:30
CONT16 fan-out: 2074 REVIEW, gpt-5.6-sol, priority NORMAL; задачи WEB-547, WEB-548.
Read-only design completion, no infra product edits or host actions. WEB-547:2029 was GO for design/extracted writer characterization22/22, not a mode fix or effective host attestation. Inspect exact native/x64 ARI config writers (start-sip-native.sh:240–245,307–324; start-sip-opus-x64.sh:319–320,361–377; experimental start script8–12,38–43,70–76 and service6–22) plus actual consumers. WEB-548:2041 has no delivered outcome; hetzbk-env-pack:272–288 preserves links with cp-a; unpack81–102 validates names before type/target; rehearse294–310 propagates extracted package. Establish safe portable file semantics using ordinary fixtures, not real config. Coordinator must choose any host linkage policy and supply current ownership context before implementation; this review prepares the concrete choice.
Бриф: /Users/poolpooly/audit/outbox/2074-configuration-file-and-package-contracts-brief.md
SHA256 2d3cf4ee55ab3d61a073ccb5af27d7ae2252c19042bfbcd544b92e9b2be567cc
Статус: выдан в relay; запуск/результат не подтверждены. Full assigned l113/l113b SHA и prior-output dedupe обязательны. Координатор принимает пересекающиеся изменения и посадку.
2026-09-06T05:19:39.013Z · astra-securitycont17-verdict-web-547 — 2026-09-06T05:19:39.013266+00:00 / IST=2026-09-06T10:49:39.013271+05:30
GO только review/design
Принят завершённый обзор2074b. Product/host implementation NO-GO: нужны sanitized effective modes/UMask, reader identity, gateway ownership и конкретный host plan. Done/production closure не заявлены.
Источник: /Users/poolpooly/audit/evidence/block17/intake-originals/M4-CONFIGURATION-FILE-AND-PACKAGE-CONTRACTS-R2-REPORT.md
SHA256 2c6203886331a7d8005cf425fe4c0ccb0a008dbe7e23cfecf4d8df987cf361f5
Детали: /Users/poolpooly/audit/reports/2026-09-06-boundaries-block17-intake.md
2026-09-06T07:33:49.227Z · coordinator[06.09 07:33Z координатор] [2026-09-06T07:33Z координатор] Ревью блока 16 R2 (M4 sol, база 02812b90): VERDICT=GO без изменений кода — текущая линия удовлетворяет контрактам конфигурационного файла и переносимости пакета (отчёт M4 ~/waves/CONFIGURATION-FILE-AND-PACKAGE-CONTRACTS-R2-REPORT.md). Статус → done.
2026-09-06T10:09:56.098Z · astra-securitycont18-wave-2095-web-547 — 2026-09-06T10:09:56.096963+00:00 / IST=2026-09-06T15:39:56.097040+05:30
CONT18 fan-out: 2095 REVIEW, gpt-5.6-sol, priority URGENT / High; задачи WEB-547, WEB-548.
BLOCK18 High closure-verification mismatch: both board done, but2074b was GO only for read-only review/design and explicitly NO-GO for production implementation. Exact4c73 native/x64 launchers still redirect-write ARI/http config (start-sip-native.sh:373,383; start-sip-opus-x64.sh:361,371) without this scope's explicit private-mode implementation/test. env-pack:272 cp-a preserves links, env-unpack:81 validates names before extraction, rehearse:307 copies staged result; no explicit link portability policy test identified. These are host/config assurance gaps, not established outsider access or CVSS High impact. High priority comes from the done verification assignment.
Consume existing2074b report and artifacts instead of repeating its whole design model. Obtain precise non-secret coordinator closure record if done means an effective host action, policy acceptance or later code mapping. Without it, report source unchanged, tests missing/adjacent, host facts OPEN. No host edits, chmod, secret-file read, restore, real pack/upload or service start. A local fixture uses only synthetic non-secret files in owned root. Do not impose reject/materialize policy until explicit owner decision; no production code change in this review.
Бриф: /Users/poolpooly/audit/outbox/2095-host-policy-done-closure-evidence-review-brief.md
SHA256 d17a3ece3ec2ba404436627da68d620cfb0639c4c2287ecc8e9f626539ee54ce
Статус: выдан в relay; запуск/результат не подтверждены. Назначенная база 4c73d8451a295af84603b1d20f66f88d5aa82a2e; l113d-line. Проверка текущего кода и prior-output dedupe обязательны. Координатор принимает пересекающиеся изменения и посадку.
2026-09-06T10:15:25.172Z · astra-securityblock18-verdict-web-547 — 2026-09-06T10:15:25.171938+00:00 / IST=2026-09-06T15:45:25.171960+05:30
open: host/policy evidence отсутствует на 4c73d8451a295af84603b1d20f66f88d5aa82a2e.
Source: infra/sip/start-sip-native.sh:373, infra/sip/start-sip-native.sh:383, infra/sip/start-sip-opus-x64.sh:361, infra/sip/start-sip-opus-x64.sh:371
Tests: целевой current test не найден
Mapping: none:2074b design only
Residual: Source private-mode fix and dedicated current test absent; effective UMask/reader/mode host attestation missing. Done does not prove file modes.
Tests NOT_EXECUTED parent; actual behavior wave(s): 2095
Evidence: /Users/poolpooly/audit/evidence/block18/source-test-hashes.json
Checkpoint: /Users/poolpooly/audit/reports/block18-checkpoint.md
Board status не изменён; source/test presence и policy disposition не равны выполненной runtime-приёмке.
2026-09-06T10:43:46.958Z · coordinator[06.09 10:43Z координатор] [2026-09-06T10:43Z координатор] ASTRA БЛОК 18 (проверка 29 done по дереву l113d 4c73d845, без runtime): 19 фиксов подтверждены с тестами; 3 — принятое поведение/закрытая гипотеза (WEB-524/529/535); 5 расхождений done↔код (WEB-534, 536, 549, 551, 556); 2 — host/policy без source-фикса (WEB-547, 548). Новый SEC-046 = WEB-568 (paid text-stream lease только для SSE; completion/route.ts:127-138 открытый text stream) — High, фикс 2090 идёт на M4. Итого по 45: 22 verified, 23 open (16 не-done + 5 расхождений + 2 host/policy). 24 брифа 2088–2111 (3 FIX luna, 21 REVIEW sol) ретранслируются на M4 (кап 5 → поднимаю). Чекпойнт: ~/audit/reports/block18-checkpoint.md, чеклист владельца: block18-owner-checklist.md (M1). Расхождение WEB-536 совпало с моей приёмкой 2236 (NO-GO High) → круг 3 идёт.
2026-09-06T11:10:43.705Z · astra-securitycont18-relay12-verdict-web-547 — 2026-09-06T11:10:43.704807+00:00 / IST=2026-09-06T16:40:43.704814+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА / CONT18 intake209x.
Состояние: NO-GO / DONE closure.
Причина/доказательство: Exact4c73 characterization14/14 подтверждает inherited modes, pre-existing mode retention и переносимость/сигнатуру links.2074b GO явно только review/design, production implementation NO-GO.
Что осталось: URGENT coordinator: reader/mode/UMask/ACL attestation547; configured-source inventory и explicit reject/materialize548. Нет новой blind review/FIX до решений. Board done не закрывает host/source requirement.
KNOWN ISSUES / ТРАБЛШУТИНГ
Симптом: headerGO/NO-GO или boarddone не задаёт scope приёмки. Проверка: раздел Provenance/Exactly three groups/KNOWN ISSUES исходного отчёта и adjudications.json; source-hash-reconciliation.json содержит локальный byte bridge на4c73. Report-only результаты не объявлены исполненными родителем. Prod65ff9060 сообщён WEB-515:2088, object на M1 отсутствует; authoritative current mapping pending. Лечение/статус: URGENT coordinator: reader/mode/UMask/ACL attestation547; configured-source inventory и explicit reject/materialize548. Нет новой blind review/FIX до решений. Board done не закрывает host/source requirement.
КАРТА ДОКУМЕНТОВ: M1 /Users/poolpooly/audit/evidence/block18-relay/intake-originals/CONT18-RELAY-2/HOST-POLICY-DONE-CLOSURE-EVIDENCE-REVIEW-REPORT.md
SHA256 0f73037df6000f4202a06d19f762b0ddd029b244675561244c50571db5ac35ee
M1 /Users/poolpooly/audit/reports/block18-relay-1-2-checkpoint.md
M1 /Users/poolpooly/audit/evidence/block18-relay/adjudications.json
M1 /Users/poolpooly/audit/outbox/CONT18-RELAY-1-2-URGENT-COORDINATOR-HANDOFF.md
Board status/чужие поля не менялись. High здесь приоритет closure verification, CVSS не повышен.
2026-09-06T14:05:20.778Z · astra-securityblock19-wave-2114-web-547 — 2026-09-06T14:05:20.777552+00:00 / IST=2026-09-06T19:35:20.777577+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА: BLOCK19 FIX, gpt-5.6-luna, URGENT / High closure.
RELAY2 HOST-POLICY-DONE-CLOSURE-EVIDENCE-REVIEW-REPORT.md exact4c73 characterization14/14 found fresh writer modes inherit umask and x64 existing paths are not tightened. Currentg controlling blocks: infra/sip/start-sip-native.sh:373–391 and start-sip-opus-x64.sh:361–377; verify moved anchors before change. Prepare a reviewable source fix now: explicit private config root and atomic private ARI/http publication; refuse non-regular/link targets without touching unrelated paths, retain native Stasis/cleanup and x64 update/unconditional contracts. Same-user reader policy has inert proof; do not silently change installed service User/group/PrivateTmp/runtime root or gateway files. If real reader topology requires group access, expose a narrowly validated explicit source configuration and document required owner decision rather than weakening default modes. Source candidate can complete independently; host activation remains coordinator-owned with sanitized UMask/ACL/reader receipt.
Бриф M1 /Users/poolpooly/audit/outbox/2114-generated-config-mode-contract-fix-brief.md; SHA256 03fc6149c1d85410d64f2aa5aeac816209c59aae499374eb88fd3b99afec84af. База l113g4c322c4606a1695fc896ecd6313842d55679b472. Выдан в outbox, running не подтверждён.
KNOWN ISSUES / ТРАБЛШУТИНГ: old4c73 report verdict не равен currentg defect или runtime acceptance. Сначала current-source/candidate dedupe; no duplicate implementation. Три обязательные группы проверок в брифе; failed/skipped gates и owner/host dependencies сохранять явно. High — приоритет closure, CVSS не повышен. Документы M1 /Users/poolpooly/audit/evidence/block19/fanout-jobs.json; будущий отчёт worker ~/waves/BLOCK19-GENERATED-CONFIG-MODE-CONTRACT-FIX-REPORT.md
2026-09-06T14:18:20.822Z · astra-securityblock19-host-policy-done-closure-evidence-review-web-547 — 2026-09-06T14:18:20.821822+00:00 / IST=2026-09-06T19:48:20.821827+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА / BLOCK19.
Вердикт: NO-GO closure / source fixes2114+2115.
Причина и текущая дельта: 14/14 characterization — отсутствующие policies, не implementationGO. Current native anchors283/339/346 (old373–391 сместились), x64/pack/unpack/rehearse unchanged. Готовятся reviewable source fixes; reader/ACL и reject/materialize selection требуются для host activation, не для параллельной разработки кандидатов.
База независимой source-сверки M1: 4c322c4606a1695fc896ecd6313842d55679b472; root /private/tmp/nc-block19-parent. Исходный header VERDICT=NO-GO сохранён без изменения scope.
KNOWN ISSUES / ТРАБЛШУТИНГ: reportGO ограничен исполненными группами; INPUT-NO-GO не доказывает product failure; current source/hash bridge не заменяет runtime/DB/provider/host acceptance. Проверка: раздел provenance/raw counts исходного отчёта, source-hash-reconciliation.json и актуальный fanout-jobs.json. Лечение/следующий шаг: 14/14 characterization — отсутствующие policies, не implementationGO. Current native anchors283/339/346 (old373–391 сместились), x64/pack/unpack/rehearse unchanged. Готовятся reviewable source fixes; reader/ACL и reject/materialize selection требуются для host activation, не для параллельной разработки кандидатов.
КАРТА ДОКУМЕНТОВ: M1 /Users/poolpooly/audit/evidence/block19/intake-originals/CONT18-RELAY-2/HOST-POLICY-DONE-CLOSURE-EVIDENCE-REVIEW-REPORT.md
SHA256 0f73037df6000f4202a06d19f762b0ddd029b244675561244c50571db5ac35ee
M1 /Users/poolpooly/audit/evidence/block19/source-hash-reconciliation.json
M1 /Users/poolpooly/audit/reports/block19-checkpoint.md
M1 /Users/poolpooly/audit/evidence/block19/fanout-jobs.json
Board workflow/чужие поля не менялись. High — срочность сверки закрытия; новая числоваяCVSS не назначалась. Parent/reviewer тестов не запускали; результаты worker report-attested.
2026-09-06T14:26:35.673Z · coordinator[06.09 14:26Z координатор] [2026-09-06T14:26Z координатор] Авторы сдали GO → приёмки: C4-RU-3/структура списков в claim-split 11f3cdd5 (2324; корень: judge удалял «Шаги:\n1.», оставляя сиротский «2.»; чекер батареи принимал ordinal за разряд) → 2333 (A2); realtime-сессии в redis 3d63dfd9 (2328) → 2334 (A2, PG+redis); Astra блок 19: extraction wiring c0e3c353 (WEB-521/522) → 2335 (M4), generated config mode cd9cee08 (WEB-547/548) → 2336 (M4). SIP fix plan (2322) = NO-GO по замыслу (хост не трогали): корень провала окна — Asterisk 20.19: «No such command pjsip reload», CLI вернул rc 0, helper счёл reload успешным; v2 скрипты в /home/ubuntu/waves/siphostsync-v2/ — новое окно только после стендовой проверки с реальным Asterisk.
2026-09-06T15:17:40.620Z · coordinator[06.09 15:17Z координатор] [2026-09-06T15:17Z координатор] WEB-547 (Astra 2114 generated config mode): приёмка 2336 = NO-GO cd9cee08 — контракт http.conf/ari.conf верен, регрессия x64 explicit-root (status/stop считают conf root иначе, чем start) → круг 2 = 2356 (M4). SIP proof-диагноз (2347) = NO-GO: внутренняя причина STOP proof-reload.sh:130-132 не восстановима без защищённого reload-add.raw; статические гипотезы отвергнуты (append верный, include-порядок верный); расхождение 6 vs 7 endpoints — мой grep считал заголовок. Круг 2 = 2347b с добавленным evidence. Фаза 3 (restart для barge-in) ждёт «го» владельца с зарегистрированным Linphone. SEC-007 config assurance → 2355 (A1) с receipts-паком.
2026-09-06T15:30:02.139Z · astra-securityblock20-block19-generated-config-mode-contract-fix-web-547 — 2026-09-06T15:30:02.139010+00:00 / IST=2026-09-06T21:00:02.139016+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА / CONT19 relay15:20, BLOCK20.
Вердикт: AUTHOR GO superseded by independent NO-GO.
Причина/действие: cd9cee089167ae715abe9a711afd92a01dedc53b private publication groups pass, but candidate adds SIDECAR_CONFIG_ROOT only in start. Status/stop still compute SIDECAR_ROOT/conf. Existing2356 fixes lifecycle root consistency. SourceGO doesnotmeanhostclosure.
Report header: VERDICT=GO; metadata {"commit": "cd9cee089167ae715abe9a711afd92a01dedc53b", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "cd9cee089167ae715abe9a711afd92a01dedc53b", "branch": "agent/web-547-generated-config-mode-20260906", "root": "/private/tmp/nc-block19-l113g"}.
KNOWN ISSUES / ТРАБЛШУТИНГ
Симптом: authorGO не заменяет independentacceptance/посадку; reviewNO-GO может быть missinghostinput или отдельный testcontract. Проверка: исходныйreport Provenance/3groups/rawresults, metadata above и current ledger46.json. Лечение: cd9cee089167ae715abe9a711afd92a01dedc53b private publication groups pass, but candidate adds SIDECAR_CONFIG_ROOT only in start. Status/stop still compute SIDECAR_ROOT/conf. Existing2356 fixes lifecycle root consistency. SourceGO doesnotmeanhostclosure.
Source reviewed M1 /private/tmp/nc-block19-parent на4c322c4606a1695fc896ecd6313842d55679b472; h83683d48reportedWEB515:2425, objectnotlocal. Candidate/rawarchivebytes report-attested, parenttests notexecuted. КАРТА ДОКУМЕНТОВ: M1 /Users/poolpooly/audit/evidence/block20/intake-originals/CONT19-RELAY-1/BLOCK19-GENERATED-CONFIG-MODE-CONTRACT-FIX-REPORT.md
SHA256 98db3b7ef271e849735e36dda46f347fa33fc8c48dd8a73d2583e99a58fd47c1
M1 /Users/poolpooly/audit/reports/block20-checkpoint.md
M1 /Users/poolpooly/audit/evidence/block20/adjudications.json
M1 /Users/poolpooly/audit/evidence/block20/fanout-jobs.json
Boardstatus/чужиеполяне менялись; числоваяCVSS не повышалась поmissinginput. 2026-09-06T15:30:02.146Z · astra-securityblock20-accblock19genconfig-web-547 — 2026-09-06T15:30:02.145472+00:00 / IST=2026-09-06T21:00:02.145479+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА / CONT19 relay15:20, BLOCK20.
Вердикт: NO-GO acceptance upheld.
Причина/действие: start candidate54–55 accepts explicitroot while current status-sip-opus-x64.sh:13–16,39 and stop:57–66 use oldroot. Groups1/2GO,group3NO.2356 aligns start/status/stop and reruns modes/lifecycle. This is WEB547 only; WEB548 package2115 stillawaits its ownreport.
Report header: VERDICT=NO-GO; metadata {"commit": "cd9cee089167ae715abe9a711afd92a01dedc53b", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "cd9cee089167ae715abe9a711afd92a01dedc53b"}.
KNOWN ISSUES / ТРАБЛШУТИНГ
Симптом: authorGO не заменяет independentacceptance/посадку; reviewNO-GO может быть missinghostinput или отдельный testcontract. Проверка: исходныйreport Provenance/3groups/rawresults, metadata above и current ledger46.json. Лечение: start candidate54–55 accepts explicitroot while current status-sip-opus-x64.sh:13–16,39 and stop:57–66 use oldroot. Groups1/2GO,group3NO.2356 aligns start/status/stop and reruns modes/lifecycle. This is WEB547 only; WEB548 package2115 stillawaits its ownreport.
Source reviewed M1 /private/tmp/nc-block19-parent на4c322c4606a1695fc896ecd6313842d55679b472; h83683d48reportedWEB515:2425, objectnotlocal. Candidate/rawarchivebytes report-attested, parenttests notexecuted. КАРТА ДОКУМЕНТОВ: M1 /Users/poolpooly/audit/evidence/block20/intake-originals/CONT19-RELAY-5/ACCBLOCK19GENCONFIG-REPORT.md
SHA256 c4dc4a1383fff81a76a5f257dbdf8ddf34817445cb17f94717564b5c0f503f67
M1 /Users/poolpooly/audit/reports/block20-checkpoint.md
M1 /Users/poolpooly/audit/evidence/block20/adjudications.json
M1 /Users/poolpooly/audit/evidence/block20/fanout-jobs.json
Boardstatus/чужиеполяне менялись; числоваяCVSS не повышалась поmissinginput. 2026-09-06T18:22:46.446Z · astra-securityblock21-block19genconfigr2-web-547 — 2026-09-06T18:22:46.446157+00:00 / IST=2026-09-06T23:52:46.446163+05:30
Правила обогащения: WEB-449. ДЛЯ ТИКЕТА / BLOCK21, CONT19-RELAY-6.
Вердикт: GO author; independent pending2374
Scope: 950615fe x64 config-root lifecycle R2
Report metadata: {"commit": "950615feac809e3b4da74efb40fd83b8934135cf", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "950615feac809e3b4da74efb40fd83b8934135cf"}
Доказательство: One resolver for start/status/stop; node11/11, focused7/7, bash syntax and shell regressions pass; private publication0700/0600 retained.
KNOWN ISSUES / ТРАБЛШУТИНГ
Candidate helper sidecar-config-root.sh:3–5 and x64 consumers unify override/default; helper absent h. Linux and host owner/group/UMask/ACL not executed. Report wording acceptance GO does not replace2374.
Следующее действие: Await2374 independent950615feac809e3b4da74efb40fd83b8934135cf. WEB548 package2115 remains distinct; coordinator Linux/effective-host gate.
Текущая source база M1: /private/tmp/nc-block21-parent, audit/block21-parent, 83683d4818ecc9b91e151be9e27a9ef0d6015294. Bundle SHA проверен. Report-attested tests не выполнялись родителем/пятью reviewer GPT5.5; удалённые candidate bundles/rawarchives физически не проверены. AuthorGO не равен independentGO, running2370–2377 не равен accepted. Чужие статусы не изменены, CVSS не повышен.
КАРТА ДОКУМЕНТОВ: /Users/poolpooly/audit/evidence/block21/intake-originals/BLOCK19GENCONFIGR2-REPORT.md
SHA256 5d3bed18847c0bd089fab40fce75099de6bb190341a1f76e57c2b7d533ebbc7f
M1 /Users/poolpooly/audit/evidence/block21/adjudications.json; ledger46.json; /Users/poolpooly/audit/reports/block21-checkpoint.md. 2026-09-06T21:37:37.268Z · astra-securityblock22-wave-2174-web-547 — 2026-09-06T21:37:37.267422+00:00 / IST=2026-09-07T03:07:37.267442+05:30
ДЛЯ ТИКЕТА / BLOCK22 release closure. WEB547 accepted47665c94 genconfigR3, not package548 or URLproof517.
Бриф /Users/poolpooly/audit/outbox/2174-generated-config-modes-post-l113j-closure-brief.md; SHA256 8de0a4de8abdd22895ab709ed6294b25ed7cd30ef6ab4db8818ed11fe5e1c4c4. MODEL=gpt-5.6-sol, A2 cap11, M4 cap3 без автоматического переноса. WAITING_RELEASE_l113j: не запускать до полного deployed-SHA/artifact/backend receipt. Сейчас reportedprod i18f130938b8d2a8f4376811651ad21beb4e28838; M1 source checkout толькоh.
Три группы: exactrelease/source mapping; live: Fresh active host stat/owner/group/ACL/reader-path receipt for config root and http.conf/ari.conf; no content read, chmod/start/stop/restart. Verify shared x64 root resolver used by actual service.; companion: Local temp files/umasks and x64start/status/stop resolver tests on Linux companion; no Asterisk runtime required. Distinct reader compatibility and effective host modes remain separate from sourceGO.
KNOWN ISSUES: sent≠running, code/authorGO≠liveclosure. При отсутствующем fix в j — NOT_DEPLOYED. Никаких paid/provider effects, реальных удалений/отказов сервиса. Existing2455/2450/2460/2462/2458 и старые работы не дублируются. Историческиеanchors infra/sip/sidecar-config-root.sh:3–5 candidate; infra/sip/start-sip-opus-x64.sh:29–32,55–57; generated-config-mode-contract.test.mjs:32–46. Fullreport future /home/ubuntu/waves/BLOCK22-GENERATED-CONFIG-MODES-POST-L113J-CLOSURE-REPORT.md. Evidence M1 /Users/poolpooly/audit/evidence/block22/fanout-jobs.json; checkpoint /Users/poolpooly/audit/reports/block22-checkpoint.md. Статус тикета не менялся.
2026-09-06T21:43:33.207Z · astra-securityblock22-accblock19genconfigr2-web-547 — 2026-09-06T21:43:33.206733+00:00 / IST=2026-09-07T03:13:33.206738+05:30
ДЛЯ ТИКЕТА / BLOCK22, CONT19-RELAY-7.
Вердикт: NO-GO independent superseded R3
Report header: NO-GO
Report metadata: {"commit": "950615feac809e3b4da74efb40fd83b8934135cf", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "none"}
Связанные темы отчёта: WEB-547
Доказательство: functional8/8,infra11/11;checkJstscTS2339×2
KNOWN ISSUES / ТРАБЛШУТИНГ
generated-config-mode-contract.test.mjs:35,37 envtyping; correctticket547 not548 despitegroupedreportmetadata.
Следующее действие: 47665c94 acceptedR3; package548separate2115.
Продуктовая посадка сейчас: l113i18f130938b8d2a8f4376811651ad21beb4e28838 по координатору и L113I8; предыдущие assembly ec5c/bad68 не равны prod. M1 физически располагает толькоh83683d48; i/j source/runtime bytes не проверены. Тесты из отчёта не выполнялись родителем/5reviewerGPT5.5. Bundle/rawархивы report-attested. Statusdone и authorGO не заменяют independent/liveGO. Чужие статусы не менялись; числовойCVSS не повышен.
Документ: /Users/poolpooly/audit/evidence/block22/intake-originals/ACCBLOCK19GENCONFIGR2-REPORT.md
SHA256 495753ef1618d3707ec3f6865646758247ef56297823987d8d76ef855a9502f0
Реестр: /Users/poolpooly/audit/evidence/block22/ledger46.json
Checkpoint: /Users/poolpooly/audit/reports/block22-checkpoint.md. 2026-09-06T21:43:33.212Z · astra-securityblock22-accblock19genconfigr3-web-547 — 2026-09-06T21:43:33.212158+00:00 / IST=2026-09-07T03:13:33.212163+05:30
ДЛЯ ТИКЕТА / BLOCK22, CONT19-RELAY-7.
Вердикт: GO independent queued j
Report header: GO
Report metadata: {"commit": "47665c94a01bc12c22bee3a298646339adb33655", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "47665c94a01bc12c22bee3a298646339adb33655"}
Связанные темы отчёта: WEB-547
Доказательство: R2tsc2→R3tsc0,functional/sourcecontrolsrepeatgreen
KNOWN ISSUES / ТРАБЛШУТИНГ
EffectiveLinuxreader/owner/group/ACLnotproved bysourcealone.
Следующее действие: 2174; do notassigntoWEB548.
Продуктовая посадка сейчас: l113i18f130938b8d2a8f4376811651ad21beb4e28838 по координатору и L113I8; предыдущие assembly ec5c/bad68 не равны prod. M1 физически располагает толькоh83683d48; i/j source/runtime bytes не проверены. Тесты из отчёта не выполнялись родителем/5reviewerGPT5.5. Bundle/rawархивы report-attested. Statusdone и authorGO не заменяют independent/liveGO. Чужие статусы не менялись; числовойCVSS не повышен.
Документ: /Users/poolpooly/audit/evidence/block22/intake-originals/ACCBLOCK19GENCONFIGR3-REPORT.md
SHA256 f2542db2b6b011bcfc7939da782edf3f6b4fe618d5e69a7e582820366da1b4e1
Реестр: /Users/poolpooly/audit/evidence/block22/ledger46.json
Checkpoint: /Users/poolpooly/audit/reports/block22-checkpoint.md. 2026-09-06T21:43:33.582Z · astra-securityblock22-block19genconfigr3-web-547 — 2026-09-06T21:43:33.581795+00:00 / IST=2026-09-07T03:13:33.581827+05:30
ДЛЯ ТИКЕТА / BLOCK22, CONT19-RELAY-7.
Вердикт: GO author accepted independently
Report header: GO
Report metadata: {"commit": "47665c94a01bc12c22bee3a298646339adb33655", "base": "4c322c4606a1695fc896ecd6313842d55679b472", "fix_commit": "47665c94a01bc12c22bee3a298646339adb33655"}
Связанные темы отчёта: WEB-547
Доказательство: checkJstsc0,infra11/11,bash/scopedchecks
KNOWN ISSUES / ТРАБЛШУТИНГ
47665c94a01bc12c22bee3a298646339adb33655 preservesmode/rootcontract; nohost.
Следующее действие: Queuedj;2174hostmetadataafterj, no activations.
Продуктовая посадка сейчас: l113i18f130938b8d2a8f4376811651ad21beb4e28838 по координатору и L113I8; предыдущие assembly ec5c/bad68 не равны prod. M1 физически располагает толькоh83683d48; i/j source/runtime bytes не проверены. Тесты из отчёта не выполнялись родителем/5reviewerGPT5.5. Bundle/rawархивы report-attested. Statusdone и authorGO не заменяют independent/liveGO. Чужие статусы не менялись; числовойCVSS не повышен.
Документ: /Users/poolpooly/audit/evidence/block22/intake-originals/BLOCK19GENCONFIGR3-REPORT.md
SHA256 c971519e2dfac963ddb5521e675fefe244e1a7c9acc6b096c76db6f46afb5b93
Реестр: /Users/poolpooly/audit/evidence/block22/ledger46.json
Checkpoint: /Users/poolpooly/audit/reports/block22-checkpoint.md. 2026-09-06T23:52:21.576Z · astra-securityblock22-relay9-adjudication-web-547 — 2026-09-06T23:52:21.575567+00:00 / IST=2026-09-07T05:22:21.575600+05:30
BLOCK22 RELAY-9: вердикты по доставленному пакету. l113j 46393080 source bundle проверен локально; runtime и live — по расписке. Численные тесты ниже выполнены авторами доставленных отчётов, родитель их не перезапускал.
L113JPREP2-REPORT.md — новый отчёт.
Вердикт: GO for l113j stage-1 assembly at 46393080; deployed receipt confirms l113j, but stage 2 was only a probe and did not land.
Commit/base: 46393080dd885f6ff25967f18639075564e12737 / 18f130938b8d2a8f4376811651ad21beb4e28838
Доказательства: check-migration-compatibility rc 0, migrationCount 189; check-api-perimeter rc 0; realtime 61/61; active/passive lease 11/11; landing/proxy/final HTTP 56/56; composer DOM matrix pass; WEB477 23/23 plus negatives; Notion 11/11; SIP/genconfig/barge-in suites pass; activation checks pass; git fsck rc 0; bundle verify rc 0
Anchors: monet-w34-activation-manifest.json; monet-w35-activation-attestation.json; src/lib/billing/generatedActivationManifest.ts; public/_landing.html; src/proxy.ts; infra/sip/*
KNOWN ISSUES / ТРАБЛШУТИНГ: Stage 2 NOT on j: roles5b, docengine R2, controller R2, invite, podcast, beta, citation, overdraft, voice retry. Landing WEB-545 rewrite caused / 500 after deployment and was mitigated by PUBLIC_LANDING_ENABLED=false; fix is wave 2495. Keep WEB-545 landing label separate and do not overwrite SEC545 Lighthouse. Canonical SEC-028/WEB-545 remains Lighthouse; landing label collision is recorded only as provenance.
Действие: Use l113j only for deployed stage-1 contents. Route deferred stage-2 work through l113k/accepted waves; keep landing rewrite under 2495.
Report: /Users/poolpooly/audit/evidence/block22-relay9/intake-originals/a2/L113JPREP2-REPORT.md
SHA256: 8ff5adf24deb0d47091e4e1a5faa38676c582a7337777f6ec18e1babccdce7b3
ДЛЯ ТИКЕТА: workflow done сохранён; Accepted generated-config chain 47665c94 lineage → 06b2540c + 21fe91d3 + 71da9514 physically present; renderer 8e04c643 present.
Ожидает: No new genconfig source candidate; host activation separate via 2496 and 2174.
Closure 2174: RELEASED; per-ticket A1 dispatch vs A2 capacity hold not specified.
WEB547 accepted47665c94 genconfigR3, not package548 or URLproof517.
КАРТА ДОКУМЕНТОВ: /Users/poolpooly/audit/reports/block22-relay9-update.md; /Users/poolpooly/audit/evidence/block22/ledger46.json; /Users/poolpooly/audit/evidence/block22-relay9/adjudications.json. Новые брифы 2497/2498 — ROUTING: A2; существующие coordinator waves не дублируются. Правила обогащения: WEB-449.
2026-09-07T07:38:24.472Z · astra-securityBLOCK22-RELAY13-WEB-547 — 2026-09-07T07:38:24.472213+00:00 / IST=2026-09-07T13:08:24.472233+05:30
SEC-030 / WEB-547: NO_GO_FULL_CLOSURE_UNVERIFIED. Workflow done сохранён. Текущий m 8f4ba1d92cc15a8b64144674e35cce71fdfba43a подтверждён распиской; родитель не выполнял live.
Полный closure GO не установлен. NO-GO из-за недостающих входов не объявляется новым продуктовым дефектом. Исторический source/companion PASS сохраняется в исходном отчёте.
KNOWN ISSUES / ТРАБЛШУТИНГ
- fresh active-host owner/group/ACL/reader-path receipt absent
- actual x64 service resolver binding absent
- source/runtime byte mapping absent
ДЛЯ ТИКЕТА
No new r3 wave: outside explicitly listed blockers; retain NO-GO/evidence gap for coordinator.
No additional release candidate asserted by this delta.
Полный ledger и parent adjudication: ~/audit/evidence/block22-relay13/ledger46.json; ~/audit/reports/block22-relay13-r3-plan.md.
Reports:
/Users/poolpooly/audit/evidence/block22-relay13/intake-originals/CONT19-RELAY-12/a1/BLOCK22-GENERATED-CONFIG-MODES-POST-L113J-CLOSURE-REPORT.md
2026-09-07T08:06:47.283Z · astra-securityBLOCK22-RELAY13-N-WEB-547 — 2026-09-07T08:06:47.283660+00:00 / IST=2026-09-07T13:36:47.283666+05:30
l113n44d8af687a9e78816b6f747b81a13402abda98bf deployed07:47:36Z по расписке; scope closure NO_GO_FULL_CLOSURE_UNVERIFIED сохранён, workflow не менялся.
generated config06b2540c+71da9514 present per addendum (source row labelled WEB-519)
KNOWN ISSUES
Canonical SEC-030/WEB-547 retained; host owner/group/ACL/x64 reader/service resolver proof still needed; no inferred GO
Ancestry/replay attestation ≠ runtime member verification; ready/deployment ≠ scoped GO.
ДЛЯ ТИКЕТА
A1 actual LIVE-WINDOW-AUTH-l113n до10:30Z с QA lease;2568 отдельно HOLD2570 independent GO+landing. No new wave.
Evidence: ~/audit/evidence/block22-relay13-n/intake/L113N-RELEASE-RECEIPT.md + L113N-TICKET-SHA-ADDENDUM.md; remaining matrix ~/audit/reports/block22-relay13-n-update.md.
2026-09-07T11:40:36.056Z · ЭВОЛЮЦИЯ ЗА 12 Ч (гигиена 2609, 11:25Z 07.09)
ХРОНОЛОГИЯ КРУГОВ
- волна 2174 → `46393080dd885f6ff25967f18639075564e12737`, `06b2540cdbd1ef87f41fae277b836258b4eedd97`, `21fe91d32a5de4068ca5e983a8521604da65ead9` → VERDICT=NO-GO — Затронутая область: только release-closure `SEC-030 / WEB-547`; это evidence gap, а не новый доказанный дефект. Source/companion GO не заменяет host proof. Источник: `A1 waves/BLOCK22-GENERATED-CONFIG-MODES-POST-L113J-CLOSURE-REPORT.md`.
- Линии посадки: l113j 22:56Z → l113k 00:41Z → l113l 05:30Z → l113m 06:33Z → l113n 07:48Z → l113o 09:35Z → l113p 10:21:43Z. Текущий PROD: l113p `1c850d92876757812eab9ffa7f381bcea95aad86`; общий verify — green по release receipt.
ДЛЯ НУЛЕВОГО АГЕНТА
- Board показывает done, но строгий closure не доказан. Проверка относительно l113p `1c850d92876757812eab9ffa7f381bcea95aad86`: `46393080dd885f6ff25967f18639075564e12737`=предок; `06b2540cdbd1ef87f41fae277b836258b4eedd97`=предок; `21fe91d32a5de4068ca5e983a8521604da65ead9`=предок. Это запись «ЛОЖНО ЗАКРЫТЫЙ»; статус не меняется автоматически.
- Следующий шаг / владелец: Координатор/Astra: закрыть названный в последнем отчёте mapping/runtime/live/landing gate, получить независимый GO по точному кандидату и затем post-QA (либо явно обоснованное code-only n/a).
KNOWN ISSUES / ТРАБЛШУТИНГ
- Дельта без домысла: Затронутая область: только release-closure `SEC-030 / WEB-547`; это evidence gap, а не новый доказанный дефект. Source/companion GO не заменяет host proof. Проверка/причина привязаны к отчётам выше; anchors: `infra/sip/sidecar-config-root.sh:3-5`, `infra/sip/start-sip-opus-x64.sh:29-32`, `infra/sip/private-config-publication.sh:78-105`, `infra/sip/tests/generated-config-mode-contract.test.mjs:32-46`. Лечение — только указанное в report disposition; отсутствующий live/receipt не объявляется продуктовой регрессией.
ЛОЖНО ЗАКРЫТЫЙ
- Последний полный trail не замкнут: done оставлен без обратного PATCH по прямому правилу owner; это ручная очередь closure.
СВЯЗИ / ИСТОЧНИКИ
- Release: `M4 waves/L113P-RELEASE-RECEIPT.md`; координаторский срез: `M4 waves/OPS-STATUS-HEAD-1120.md`; точные отчёты перечислены в хронологии/KNOWN ISSUES.
- Если сегодняшняя карточка уже содержит более ранний coordinator-комментарий с тем же фактом, эта запись является только дельтой 2609 и не отменяет тот trail.
2026-09-07T12:22:09.617Z · astra-securityRELAY16-R3P-FANOUT — 2026-09-07T12:22:09.616519+00:00 / IST=2026-09-07T17:52:09.616539+05:30
OWNER DECISION RELAY16: closure r3p выдан в пакете2624, ROUTING A1, MODEL gpt-5.5.
Бриф /Users/poolpooly/audit/outbox/2624-sip-generated-config-r3p-brief.md; SHA256 65749b14e392d9345a009c3c38ee23a5ed3bf8c3c8c7104ae87cf497872e4c51. Base l113p1c850d92876757812eab9ffa7f381bcea95aad86.
KNOWN ISSUES: ['Canonical SEC-030/WEB-547 retained; host owner/group/ACL/x64 reader/service resolver proof still needed; no inferred GO', 'Ancestry/replay attestation is not direct runtime or full closure proof; worker results still pending.']
Следующий gate: 2624 / A1: finish per-ticket exactp mapping, targetreceipt and independent companion; report blockedgroups individually. Issued, not running/GO.
Действие координатора: Canonical SEC-030/WEB-547 retained; host owner/group/ACL/x64 reader/service resolver proof still needed; no inferred GO
ТРАБЛШУТИНГ: три группы на этот тикет — exact accepted/semantic source→runtime mapping, specific target receipt/authorized QA proof, independent inert behavior. Policy accepted != fixed; historical NO-GO != newpdefect. Missinginput возвращать отдельно, без ожиданиявслоте.
ДЛЯ ТИКЕТА: ISSUED_OUTBOX, pickup/run/result пока не подтверждены; workflow не менялся. Таблица и exactmissingbundles: /Users/poolpooly/audit/outbox/CLOSURE-BATCH-PLAN-20260907.md.
2026-09-08T08:13:33.260Z · coordinator[08.09 08:13Z координатор] ЗАКРЫТО КООРДИНАТОРОМ НА ХОСТЕ 08.09 ~07:47Z. Это была операторская задача, не код.
ЧТО БЫЛО
Тикет: сгенерированные конфигурации ARI не имеют явных приватных прав. Принятый исходный фикс 06b2540cdbd1ef87f41fae277b836258b4eedd97 «fix: publish SIP generated configs privately and atomically» (добавляет infra/sip/private-config-publication.sh, 158 строк, плюс правки start-sip-native.sh) на хост НЕ ПРИМЕНЁН — скрипта публикации на A1 нет.
Прежние круги помечали HOST-MODE REQUIRED и вставали, потому что волны не имеют root, а синхронизация хоста — работа координатора.
ИЗМЕРЕНО НА ЖИВОМ ХОСТЕ ДО ПРАВКИ
/tmp/ag-asterisk-native/ari.conf ubuntu:ubuntu 644 СОДЕРЖИТ password
/tmp/ag-asterisk-native/pjsip-generated.conf ubuntu:ubuntu 644 СОДЕРЖИТ secret
/tmp/ag-asterisk-native/http.conf ubuntu:ubuntu 644 без учётных данных
/tmp/ag-asterisk-native/pjsip.conf ubuntu:ubuntu 644 без учётных данных
/tmp/ag-asterisk-native/pjsip-tls.conf ubuntu:ubuntu 644 без учётных данных
То есть два файла с учётными данными лежали доступными на чтение всем на машине, включая процессы волн.
ЧТО СДЕЛАНО
1. Файлы с учётными данными ужаты до 600. Проверено: sudo -u wave test -r ari.conf → отказ.
2. Мера сделана долговременной: /etc/systemd/system/ag-sip-native.service.d/61-config-modes.conf с ExecStartPost, закрывающим права после каждого старта службы. Причина: каталог живёт в /tmp и пересоздаётся при каждом старте, ручной chmod перезапуск не переживает.
3. Проверено после: служба ag-sip-native active, Asterisk работает, шлюз работает.
СВЯЗАННАЯ НАХОДКА ТОГО ЖЕ КЛАССА, закрыта отдельно (см. WEB-531)
Asterisk на уровне debug писал в /tmp/ag-asterisk-logs/full строку «http.c: HTTP Request URI is /ari/events?app=…&api_key=…». Файл имел режим 644, каталог 755, пользователь wave фактически мог читать. Уровень debug намеренно СОХРАНЁН (нужен для расследования захлёбывания звука), вместо этого drop-in 60-logdir-mode.conf закрывает каталог до 750 и файлы до 640 при каждом старте. Проверено испытанием: права намеренно возвращены в 755/644, служба перезапущена, права закрылись обратно, wave не читает, телефония поднялась целиком.
ЧТО ОСТАЁТСЯ ЗА ГРАНИЦЕЙ
Исходный фикс 06b2540cd на хост по-прежнему не применён — применён обходной путь через drop-in. Правильное завершение: синхронизировать private-config-publication.sh на хост, тогда приватные права будут ставиться при генерации, а не постфактум. Это отдельная операторская задача.
Ротация ключа ARI: владелец разрешил 08.09 06:24Z. Попытка не удалась и откачена — см. отдельную запись ниже.
РОТАЦИЯ КЛЮЧА: ПОПЫТКА И ОТКАТ
Ключ задан в строке 73 /home/pi/ag-voice/infra/sip/start-sip-native.sh ПРОСТЫМ присваиванием, что перебивает EnvironmentFile=/etc/ag-sip/ari.env из drop-in 40-ari-env.conf. Строка 432 пишет его в ari.conf, строка 723 экспортирует в шлюз — поэтому обе стороны согласованы, но на значении из скрипта.
Правка ari.env эффекта не дала (стороны разъехались). Правка строки 73 тоже не дала — значит исполняется не этот файл, а копия, которую делает systemd-sip-supervisor.sh. После трёх перезапусков живой телефонии остановился и вернул исходное состояние.
Состояние после отката проверено: ari.env восстановлен из копии .bak-arirotate-20260908T071421Z, скрипт идентичен .bak-arirotate-20260908T071230Z, служба active, ключи согласованы, отказов авторизации ноль, ari_connected есть, приветствие прогрето.
Следующая попытка: сначала установить по коду супервизора, какой файл реально исполняется, затем ОДНА правка и ОДИН перезапуск. Не подбирать место перебором на живой телефонии — владелец может позвонить в любой момент.
KNOWN ISSUES / ТРАБЛШУТИНГ
Симптом: тикет с пометкой HOST-MODE REQUIRED не движется кругами.
Причина: волны не имеют root; правка хоста — работа координатора, и её никто не делал.
Лечение: координатор делает сам и прикладывает измерения до и после.
Ловушка 1: каталог /tmp/ag-asterisk-native пересоздаётся при каждом старте — ручной chmod не переживает перезапуск, нужен ExecStartPost.
Ловушка 2: проверять права после перезапуска, а не сразу после chmod. Испытание: намеренно открыть права, перезапустить, убедиться что закрылись.
Ловушка 3: сверять ключ ari.conf против /proc/<pid шлюза>/environ НЕ во время перезапуска — там они закономерно расходятся и дают ложную тревогу.
Воркер
не привязан — привязать:
curl -X POST https://bugs.wool2.online/api/web/assign -H 'content-type: application/json' \
-d '{"issueId":"WEB-547","session":"<имя tmux-сессии>","host":"m4"}'
Обновлён
2026-09-06T07:33:50.424Z