Framework lock file
simai-framework.lock.json (the Framework lock) ties together the exact
Core/Smart revisions, the registry identity, manifests, the consumer policy,
hashes and asset projections. Besides Smart artifacts and typography, the
lock pins the local Core runtime package: the bootstrap JavaScript, the
required webpack/language chunks, Material Symbols, admitted component assets
and the Docara utilities in use.
Why the lock is separate
Presentation JSON chooses how a page looks, but it cannot admit a new Smart component. The runtime surface is defined by a separate immutable input that you can check and compare between builds.
main, master, latest and other moving references are forbidden. Local
projected bytes are checked by SHA-256 before publication. The manifest of
the runtime package records every distribution-relative path and a shared
path-sorted ledger; a path is kept relative to distr, because Core resolves
lazy chunks and utilities from window.sfPath.
What to check
- The lock has the schema
docara.framework_lock.v1. - Every revision is immutable.
- The bundled manifest and the provider revision match the lock.
- The asset plan holds only allowed dependencies and omission contracts.
- The build and
verify-staticpass on one exact input.
A Docara build does not need jsDelivr, Google Fonts or any other external
asset host: Inter, Material Symbols, Core, utilities and admitted Smart assets
are published into _docara/vendor and _docara/framework. Links to
external sites in the content itself stay ordinary links and are not a
runtime dependency.
Having a component name or a runtime file does not mean admission. Admission needs a full authoring contract, a manifest, dependencies, a host renderer, accessibility, tests and a consumer policy.
Look up the exact identity of the current site in
simai-framework.lock.json itself, in
build_<environment>.docara/resolved-page-plans.json and in
_docara/component-catalog.json. Do not copy commits, pair IDs and the
component list into a hand-written reference: generated artifacts reflect a
specific build without drift.
The Framework-owned surface includes not only Smart components but also the
behaviour components of Core. For example, sf-scrollbar provides the modes
overlay, persistent, standard and hidden; Docara chooses a preset
through layout.scrollbar.preset but does not copy the scrollbar
implementation.
File fields
docara init creates the file together with the project. You do not usually
edit it by hand: the build checks the pinned files by their hashes. The
tables below show what exactly is pinned.
SIMAI Framework version and build
| Field | What it does |
|---|---|
/nonclaimsrequired | No description yet.Technical detailsType: Validation: Schema: |
/nonclaims/* | No description yet.Technical detailsType: Validation: Schema: |
/runtimerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/bootrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/boot/cssrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/boot/javascriptrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/boot/smart_baserequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/boot/smart_base_pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/boot/ui_baserequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/bundle_idrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/componentsrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/* | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/attributesrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/attributes/* | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/core_css | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/cssrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/javascriptrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/pluginrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relationsrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relations/* | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relations/*/cssrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relations/*/javascriptrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relations/*/pluginrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/loader/relations/*/typerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/requires | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/requires/* | No description yet.Technical detailsType: Validation: Schema: |
/runtime/components/*/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registryrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/compatibility_idrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/documentation_source | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/documentation_source/file_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/documentation_source/relative_pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/documentation_source/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/file_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/profilerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/relative_pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/schema_idrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/commitrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/treerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/framework_registry/source/tree_oidrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/pair_idrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/publication_profilerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/runtimerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relationsrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relations/* | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relations/*/cssrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relations/*/javascriptrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relations/*/pluginrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/shell/relations/*/typerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/tagrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/uirequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/commitrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/tagrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui/treerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smartrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/commitrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/tagrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime/ui_smart/treerequired | smart: the separate simai/ui-smart repository (release lock v1); distr/smart: the ui release itself, same commit as ui (release lock v2).Technical detailsType: Validation: Schema: |
/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/version | No description yet.Technical detailsType: Validation: Schema: |
Files and resources
| Field | What it does |
|---|---|
/asset_projectionrequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/files/* | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/files/*/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/source/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/asset_projection/source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/files/* | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/files/*/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/source/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/dynamic_asset_projection/source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections | Product component packages served beside the Framework under their own mount, each taken by its package receipt; keyed by package name.Technical detailsType: Validation: Schema: |
/package_projections/* | A product component package taken by its package receipt (simai.framework.product-package-receipt version 1).Technical detailsType: Validation: Schema: |
/package_projections/*/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/files/* | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/files/*/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/mountrequired | _docara/framework-packages/<package>/<package source revision>.Technical detailsType: Validation: Schema: |
/package_projections/*/packagerequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receiptrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/archive_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/builderrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/builder/repositoryrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/builder/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/framework_sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/framework_source/repositoryrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/framework_source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/manifest_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/package_sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/package_source/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/package_source/repositoryrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/package_source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/package_source/treerequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/receipt/schema_versionrequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/requiresrequired | The free release the package was built against (the receipt's framework.release); equals runtime.pair_id.Technical detailsType: Validation: Schema: |
/package_projections/*/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/package_projections/*/schema_versionrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/icon_fontrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/manifestrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/manifest/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/manifest/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/manifest/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/mountrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/packet_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/source/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/runtime_projection/source/tree_sha256required | No description yet.Technical detailsType: Validation: Schema: |
Icons and fonts
| Field | What it does |
|---|---|
/icon_projection | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/licenserequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/license/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/license/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/license/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/outlinedrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/outlined/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/outlined/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/outlined/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/roundedrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/rounded/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/rounded/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/rounded/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/sharprequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/sharp/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/sharp/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/files/sharp/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/packet_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/source/licenserequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/source/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/icon_projection/source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/builderrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/builder/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/builder/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/candidaterequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/distributionrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/distribution/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/distribution/publishedrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/distribution/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/distribution/rollback_parentrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/filesrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/<key> | No description yet.Technical detailsPath: Type: Validation: Schema: |
/typography_projection/files/<key>/pathrequired | No description yet.Technical detailsPath: Type: Validation: Schema: |
/typography_projection/files/<key>/publicrequired | No description yet.Technical detailsPath: Type: Validation: Schema: |
/typography_projection/files/<key>/sha256required | No description yet.Technical detailsPath: Type: Validation: Schema: |
/typography_projection/files/contractrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/contract/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/contract/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/contract/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/corerequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/core/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/core/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/core/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/utilityrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/utility/pathrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/utility/publicrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/files/utility/sha256required | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/packet_sha256required | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/schemarequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/sourcerequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/source/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/source/revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/typography_projection/source/rollback_parentrequired | No description yet.Technical detailsType: Validation: Schema: |
Component descriptions
| Field | What it does |
|---|---|
/manifestsrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/* | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policyrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/blockedrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/blocked/* | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/blocked/*/coderequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/blocked/*/proprequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/blocked/*/valuerequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/excluded_statesrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/excluded_states/* | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/excluded_states/*/proprequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/excluded_states/*/valuerequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/managedrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/managed/* | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/omitted_assetsrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/consumer_policy/omitted_assets/* | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/providerrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/provider_revisionrequired | No description yet.Technical detailsType: Validation: Schema: |
/manifests/*/sha256required | No description yet.Technical detailsType: Validation: Schema: |
Checking Smart components
See the effective support with docara atlas --json and
docara inspect smart <id> --json. The neutral identity is
sf.smart_artifact_abi / 1.0.0 / sf-smart-artifact-abi-v1; the storage
compatibility alias, the provider adapter and the template ABI are shown
separately.
The accepted form wave is ui.input, ui.dropdown and ui.checkbox; a
populated dropdown depends on the exact-pinned text-only ui.list-item.
Related icons, avatars and tags remain nonclaims.
Before publication every Smart component passes checks of the schema, the delivery owner, the namespace, the template, the assets, hydration and the hashes.
Browser storage fallback
If the pinned Core uses browser storage, the integration layer may provide a bounded in-memory fallback for the current page only. Such a fallback is not persistent storage and does not create a separate implementation of SIMAI Framework.
The boundary
The Framework lock proves a bounded consumer contract of a specific build. It does not admit an arbitrary raw Framework component only because its file is in the local package, and it does not prove the readiness of the whole ecosystem, production, a public release or the right to distribute other upstream bytes.
See also
- JSON schemas
- Updating Docara — how the pinned version changes
- Smart components — admitting a component through the lock