bundleИсторический документ. План сохранён из ревизии исходника
61e75e9и не является текущим руководством по реализации. Исходный документ.
Сделать bundle доменным слоем чтения для происхождения данных, доверия,
жизненного цикла, Attested Computation, атрибуции по ключу и связанных ресурсов.
Сохранить соответствие с минимальными ограничениями, BYOT и обратную запись
неизвестных ключей без потерь.
Зависимость: task09.md.
bundle.OKFVersion == "0.1".timestamp, но не группы
полей v0.2.Document.Citations() понимает только позиционные # Citations.Bundle.Load не сохраняет ресурсы .sql/.py, не являющиеся Markdown.sources[].id фрагментом.relations не исключает стандартные группы полей v0.2.Добавить небольшие открытые модели чтения:
Generation;Verification;UsageWindow;ProvenanceSource (Source уже занят интерфейсом хранилища);TrustTier;ComputationParameter;ExecutorContract;AttesterContract;AttestedComputationContract.Участник, среда выполнения, тип параметра и имена полей квитанции остаются открытыми строками. Не вводить закрытые реестры или перечисления.
Добавить методы доступа:
Sources, общий и действующий UsageWindow;Generated, Verifications;TrustTier;Status;StaleAfter и вспомогательную функцию с явной опорной датой;AttestedComputation;Одиночное отображение verified нормализуется в срез из одного элемента без
изменения исходного YAML.
Get, Set, YAMLNode остаются определяющими источниками данных.FrontmatterSchema.timestamp исключаются из ExtensionKeys;
relations остаётся расширением проекта.Добавить ссылки и определения сносок и Document.Attributions():
sources[].id;Citation сохраняется.bundle и значения путейLoad сохраняет все обычные файлы, видимые в ревизии.MarkdownFiles() сохраняет прежнюю семантику.Files()/AssetFiles() с защитными копиями.ReadFile() читает сохранённые .sql, .py, .json без повторного ввода-вывода..okf.bundle и относительных путей.sources[].id не является concept#fragment.duplicate_fragment.Не расширять Document.ValidateConformance(): обязательное требование — только
разбираемые метаданные и непустая строка type.
Bundle.Load.Timestamp() сохранить как устаревший метод доступа к старому формату.generated.at имеет приоритет; некорректный присутствующий generated не должен
молча переключать чтение на timestamp.bundle/doc.go;bundle/frontmatter.go, новый frontmatter_v02.go;bundle/document.go;bundle/links.go или новый attribution.go;bundle/bundle.go;bundle/semantic_index.go;bundle/relations.go;Все тесты — AAA.
verified в виде одиночного отображения и списка.stable.today == stale_after.generated без at не переключается на резервное поле.sources[].id не появляется в индексах подресурсов и связей..sql/.py сохраняются и видимы в ревизии.bundle.OKFVersion == "0.2".bundle.go test ./bundle и go test ./... проходят.Выполнение, привязка параметров, квитанции и вердикты среды выполнения,
ABI и песочница attester, кеширование и автоматическая миграция.