Marmot-TS
    Preparing search index...

    Function collectAppDataUpdateOps

    • Turns a commit's Proposal[] into the AppDataUpdateOp[] shape every seam feeds to validateAppComponentIntegrity (and, later, the shared seam adapter). This is the single adapter every seam uses so the proposal → op mapping is never re-implemented seam-locally.

      Preserves commit order and does not deduplicate. Note that a legal commit never carries more than one AppDataUpdate op for the same component id — validatePreApplyProposals (src/engine/admin-policy.ts) rejects a duplicate id before apply, matching MDK's seen set in validate_app_data_update_batch_against. This adapter stays duplicate-tolerant anyway because it is a pure mapping run on the already-admitted batch, and because rule 3 of validateAppComponentIntegrity must stay well-defined even for a batch that reached it without pre-apply admission.

      Parameters

      Returns AppDataUpdateOp[]