Безопасная проверка Yamcs StreamSQL: граница имён колонок в aggregate compiler по GHSA-3g44-3m7x-cgg2: runtime inventory, изолированный fixture, измеримый verdict, стоп-правило и минимальный evidence bundle.
Короткий ответ — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Для запроса «проверить, что имена колонок StreamSQL не превращаются в исходный код aggregate compiler» нужен не агрессивный тест, а доказательная цепочка из четырёх состояний: runtime подходит под границу, entry point реально включён, безопасный control проходит, граничный fixture останавливается до побочного эффекта. Боль этого материала — строковый идентификатор может покинуть SQL-модель и попасть в компилируемый фрагмент. Результат оформляется как identifier class / compiler input / compile counter / verdict. Advisory GHSA-3g44-3m7x-cgg2 задаёт ориентир «maven:org.yamcs:yamcs-core >= 5.13.0, <= 5.13.1; first patched 5.13.2 | maven:org.yamcs:yamcs-core <= 5.12.7; first patched 5.12.8», но сам по себе не доказывает состояние конкретной установки.
Что подтвердить в inventory — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Запишите фактически загруженный package org.yamcs:yamcs-core, версию и immutable artifact digest. Сопоставьте их с диапазоном «maven:org.yamcs:yamcs-core >= 5.13.0, <= 5.13.1; first patched 5.13.2 | maven:org.yamcs:yamcs-core <= 5.12.7; first patched 5.12.8» и отдельно подтвердите конфигурацию функции «Yamcs StreamSQL: граница имён колонок в aggregate compiler». Статусы различаются: Not present, Outside range, Candidate и Unknown. Дата образа, зелёный health или запись в lockfile без runtime readback не переводят Candidate в PASS. Матрица содержит Unicode-класс, reserved word, quoted identifier и разделитель; контрольный aggregate остаётся одинаковым. Нужный результат — invalid name отклонён до генератора, а не очищен после создания source fragment.
Безопасный fixture — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Используйте только следующий изолированный протокол: Передать безопасному parser stub короткие допустимые и недопустимые имена; compiler spy фиксирует только факт вызова и нормализованный identifier, не компилируя код. Все данные синтетические, объём заранее ограничен, сеть и production-хранилища заменяются spies или in-memory adapters. До запуска сохраните hash fixture, нулевые counters и ожидаемое состояние. После каждой строки меняется одна переменная; роли, версия и конфигурация остаются теми же. Так наблюдение относится к «Yamcs StreamSQL: граница имён колонок в aggregate compiler», а не к случайной разнице окружений.
Наблюдения и контроль — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Control обязан доказать, что harness достигает нужной ветки без нарушения. Boundary-case подтверждает stop до запрещённого действия. Снимайте только поля из «identifier class / compiler input / compile counter / verdict», монотонную длительность и sanitised reason code. Не сохраняйте payload, секреты, адреса, полные пути, пользовательские записи или environment dump. Специальная карта этого материала: Матрица содержит Unicode-класс, reserved word, quoted identifier и разделитель; контрольный aggregate остаётся одинаковым. Нужный результат — invalid name отклонён до генератора, а не очищен после создания source fragment.
Как присвоить verdict — Yamcs StreamSQL: граница имён колонок в aggregate compiler
PASS возможен, когда runtime подтверждён и граничная строка останавливается до состояния «строковый идентификатор может покинуть SQL-модель и попасть в компилируемый фрагмент». FAIL требует той же provenance плюс наблюдаемый запрещённый counter или неверный state transition. UNKNOWN ставится при отсутствии версии, configuration snapshot, control или точки наблюдения. NOT_APPLICABLE допустим только при доказанном отсутствии package/entry point. Номер исправленной версии без повторения fixture не считается runtime proof.
Стоп-правило и восстановление — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Немедленно прекратите проверку, если compiler получил непроверенную строку или попытался загрузить класс. Не увеличивайте объём для наглядности и не переносите fixture в production. Восстановите disposable state по исходному hash, освободите test objects и убедитесь, что счётчики сети, процессов, файлов, сессий или записей равны ожидаемым. Если cleanup не доказан, итог остаётся UNKNOWN независимо от основного наблюдения.
Чем материал отличается — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Разделяет SQL-парсинг, проверку идентификатора и стадию генерации кода. Не общий SQL injection: проверяется переход column name в compiler. Поэтому нельзя создавать соседнюю страницу простой заменой продукта, ОС или устройства. Если существующий URL уже отвечает тем же intent, pain, answer и decision tree, нужен update/merge, а не новый адрес. Здесь самостоятельная практическая ценность — identifier class / compiler input / compile counter / verdict; особый диагностический контекст: Матрица содержит Unicode-класс, reserved word, quoted identifier и разделитель; контрольный aggregate остаётся одинаковым. Нужный результат — invalid name отклонён до генератора, а не очищен после создания source fragment.
Пакет для владельца — Yamcs StreamSQL: граница имён колонок в aggregate compiler
Передайте владельцу GHSA GHSA-3g44-3m7x-cgg2, runtime digest, version range «maven:org.yamcs:yamcs-core >= 5.13.0, <= 5.13.1; first patched 5.13.2 | maven:org.yamcs:yamcs-core <= 5.12.7; first patched 5.12.8», включённый entry point, sanitized config, control/boundary rows, counters, verdict, stop reason и cleanup proof. Источник опубликован 2026-08-28, обновлён 2026-08-28; даты показывают свежесть advisory, но не популярность запроса и не эксплуатацию. После обновления повторите тот же fixture без изменения переменных и сравните state transition, а не только номер версии.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика; версии, даты, границы и ссылки вручную сверены по GitHub Advisory Database и прямой upstream-странице. Текст самостоятельный, не копирует источник и не содержит эксплуатационных шагов.
Источники и проверка
- GitHub Advisory Database — GHSA-3g44-3m7x-cgg2 проверено 2026-09-02
- Первичный upstream advisory — org.yamcs:yamcs-core проверено 2026-09-02
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.