К обсуждениям

SiYuan: фильтр видимости после поиска блоков в publish mode

Редакция VOne Технологии

Защитная диагностика SiYuan publish full-text block search по ghsa-h89q-4j2h-7h88: применимость, безопасный локальный control, измеримый verdict, stop-rule и минимальный пакет данных владельцу системы.

Короткий ответ — SiYuan: фильтр видимости после поиска блоков в publish mode

Задача страницы — проверить серверную привязку результатов SiYuan block search к разрешённым published documents. Advisory ghsa-h89q-4j2h-7h88 служит свежим inventory-сигналом, но не доказывает состояние конкретной установки. Сначала зафиксируйте фактически загруженный компонент SiYuan publish full-text block search, lock-файл, image digest или сборочный provenance и границу «SiYuan kernel: fixed commit d0f0fe146fb0». Пользовательская боль здесь одна: результат поиска может пройти post-filter по проецируемым полям вместо подтверждённой принадлежности документа. Итогом должен стать артефакт «row id / canonical document / visibility / returned flag», чтобы другой инженер повторил решение без production-данных, внешнего воздействия и догадок.

Граница применимости: SiYuan publish full-text block search

Разложите проверку на переходы «reader request → query builder → row identity → document lookup → publish visibility filter». Для каждого перехода укажите владельца значения, допустимое состояние и запрещённый side effect. Проверяемая инварианта: каждая строка результата повторно связана с канонической identity видимого опубликованного документа. NOT_APPLICABLE допустим только при доказанном отсутствии SiYuan publish full-text block search или недостижимости указанной ветки. Неизвестные effective version, runtime digest либо конфигурация дают UNKNOWN; номер релиза без runtime readback не даёт PASS.

Почему одной версии недостаточно

SBOM, package manager, container digest и реально импортированный модуль отвечают на разные вопросы. Сведите их в одну provenance-строку и сопоставьте с границей «SiYuan kernel: fixed commit d0f0fe146fb0». Затем подтвердите effective путь «reader request → query builder → row identity → document lookup → publish visibility filter»: vendored копия, optional adapter, отдельный worker или старый runtime способны изменить применимость. Фиксируйте AFFECTED_PATH, PATCHED_PATH, COMPONENT_ABSENT либо PROVENANCE_UNKNOWN. Успешный health-check сам по себе не подтверждает правило «каждая строка результата повторно связана с канонической identity видимого опубликованного документа».

Безопасный обратимый control

Работайте только в disposable fixture: создать in-memory набор из одного опубликованного и одного скрытого документа и запросить нейтральный общий термин. Сеть, subprocess, production database, реальные аккаунты, bucket, очереди, письма, токены и пользовательские файлы замените fake, spy или in-memory адаптерами. Перед запуском сохраните baseline hash, нулевые counters, лимит времени, памяти и числа операций. Используйте короткие синтетические маркеры без эксплуатационного payload. После каждой строки возвращайте fixture к исходному состоянию.

Матрица наблюдений

Сначала benign control доказывает достижение целевой функции SiYuan publish full-text block search. Затем boundary-case меняет ровно один признак, связанный с болью «результат поиска может пройти post-filter по проецируемым полям вместо подтверждённой принадлежности документа». Для каждой строки записывайте «row id / canonical document / visibility / returned flag», reason code, duration, counters и digest fixture. Основная инварианта остаётся: каждая строка результата повторно связана с канонической identity видимого опубликованного документа. Недостижимая ветка, пропущенный side effect или двусмысленная точка наблюдения означают UNKNOWN, а не удобный PASS.

PASS, FAIL, UNKNOWN и stop-rule

PASS требует подтверждённого provenance, успешного benign control, соблюдения инварианты «каждая строка результата повторно связана с канонической identity видимого опубликованного документа», нулевых запрещённых side effects и cleanup proof. FAIL — тот же подтверждённый путь плюс измеримое нарушение policy. UNKNOWN означает отсутствие digest, effective config, recorder или возможности восстановить fixture. Немедленная красная линия: скрытая row identity попала в ответ либо filter доверился только возвращённым path-полям. При ней прекратите тест, сохраните минимальные метаданные и не увеличивайте вход или нагрузку.

Восстановление и regression check

Удалите disposable state, верните adapters к baseline и сравните hashes, counters, память и открытые ресурсы. Неожиданный I/O, сетевой вызов, новый процесс, строка БД или оставшийся файл блокирует PASS. После обновления повторите тот же fixture без изменения входов и лимитов; сравните «row id / canonical document / visibility / returned flag». Так видно, изменился ли защищаемый переход «reader request → query builder → row identity → document lookup → publish visibility filter», а не окружение, объём данных или инструмент наблюдения.

Самостоятельная ценность и пакет владельцу

Проверяет post-query object identity и видимость без SQL payload, реальных заметок или извлечения содержимого. Поэтому материал отвечает на самостоятельный запрос «проверить серверную привязку результатов SiYuan block search к разрешённым published documents» и не является механической заменой бренда, ОС или устройства. Передайте владельцу ghsa-h89q-4j2h-7h88, component digest, effective version/config, границу «SiYuan kernel: fixed commit d0f0fe146fb0», схему «reader request → query builder → row identity → document lookup → publish visibility filter», control/boundary rows, артефакт «row id / canonical document / visibility / returned flag», verdict, stop reason и cleanup proof. Advisory опубликована 2026-09-02 и обновлена 2026-09-02; это подтверждает свежесть источника, но не популярность запроса, эксплуатацию или применимость к конкретному deployment.

Материал подготовлен редакцией VOne с помощью автоматизированного черновика; даты, версии и ссылки сверены по GitHub Advisory Database и первичному upstream-материалу. Текст самостоятельный, не копирует источники, не содержит эксплуатационных последовательностей и предназначен для безопасной локальной проверки.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.