fix: задокументировать расхождение ConfigDirPath, закрыть дыру пустой строки (#110)#115
Merged
Conversation
… строки (#110) Расхождение оставлено намеренно (восстановлено по истории): фолбэк боевого блока — shim обратной совместимости из #67 для проектов без поля; бросок редактора — защита нового блока от непредсказуемого содержимого сериализованного свойства между обновлениями палитры. Оба поведения задокументированы в Docs/mbe-table.md и Docs/mbe-table-editor.md. Условие фолбэка MbeTableFB расширено с null до IsNullOrWhiteSpace: вручную очищенное свойство больше не уходит в Path.Combine относительным путём. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This was referenced Jun 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #110.
Решение
Вариант 3 из issue — расхождение оставлено, задокументировано — плюс закрытие дыры пустой строки в боевом блоке. Решение принято после git-археологии (восстановленный контекст ниже).
Что сделано
Docs/mbe-table.md— секция «Путь к конфигурации» уточнена: фолбэк срабатывает на пустой/незаданный путь, объяснено происхождение (проекты до появления свойства в Добавить для MbeTableFb возможность выбирать папку конфига #67 десериализуются с пустым полем при обновлении палитры); добавлен указатель на намеренное расхождение с редактором.Docs/mbe-table-editor.md— задокументировано, что пустой путь у редактора — явная ошибка, и почему это намеренно: содержимое сериализованного свойства непредсказуемо между обновлениями палитры, и для редактора молчаливая загрузка не того набора YAML опаснее остановки.MbeTableFB.Configuration.cs— условие фолбэка расширено с??=(толькоnull) доIsNullOrWhiteSpace: вручную очищенное в дизайнере свойство больше не уходит вPath.Combineотносительным путём с криптичной ошибкой. Поведение легаси-проектов не меняется. Редактор не тронут.Восстановленный контекст (git-археология)
af2a605) поля не существовало — путь был жёстко зашит вAppContext.BaseDirectory\NtoLibTableConfig.cfc8f03) ввёл свойство и одновременно сменил дефолт наC:\DISTR\Config\NtoLibTableConfig;??=-фолбэк добавлен в том же коммите как явный shim обратной совместимости.97fe8ba— ревёрт изменения путей «из-за ошибки проектов».Тесты
293/293 зелёные, формат чистый. Изменение поведения — только пограничный случай пустой строки в
MbeTableFB(раньше — ошибка относительного пути, теперь — фолбэк, как и приnull).🤖 Generated with Claude Code