Marmot-TS
    Preparing search index...

    Function validateAppComponentIntegrity

    • Ported from validate_app_component_integrity_for_staged_commit: rejects a commit whose resulting GroupContext strips or rewrites Marmot component state outside the validated AppDataUpdate channel.

      Enforced rules, in order (mirrors the MDK rustdoc numbering):

      1. the app_data_dictionary extension itself may never be dropped if it was present before;
      2. the app_components id (0x0001) and every id in the CURRENT epoch's required-component-id list may never be dropped;
      3. every dictionary entry that changes relative to the current epoch — added, rewritten, or removed — must match one of this commit's own AppDataUpdate operations.

      Parameters

      • args: {
            appDataUpdateOps: readonly AppDataUpdateOp[];
            currentExtensions: GroupContextExtension[];
            requiredIds: readonly number[];
            resultingExtensions: GroupContextExtension[];
        }

      Returns CommitIntegrityViolation | undefined

      • refs/mdk/crates/cgka-engine/src/app_components.rs validate_app_component_integrity_for_staged_commit
      • Marmot v2 spec: app-components/README.md "Update Processing", "Unknown Data"