---
id: RESP-SUB
title: Submissions Responsibilities
product_area: submissions
revision: 2
status: draft
design_intent: proposed
source_sha:
  services-submissions: 64236c19be89579ef5897aad7de3925ed3ce03bf
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
modules:
  - module: MOD-SUB-SUB
    owns:
      - DOM-SUB-SUB-001
      - DOM-SUB-SUB-002
      - DOM-SUB-SUB-003
      - DOM-SUB-SUB-004
      - DOM-SUB-SUB-005
    exposes:
      operations:
        - getDefinitionsHealth
        - listSubjectKinds
        - listSubmissionDefinitions
        - createSubmissionDefinition
        - listOpenSubmissionDefinitions
        - getSubmissionDefinition
        - updateSubmissionDefinition
        - removeSubmissionDefinition
        - cloneSubmissionDefinition
        - listSubmissionDefinitionVersions
        - createSubmissionDefinitionVersion
        - getSubmissionDefinitionVersion
        - updateSubmissionDefinitionVersion
        - publishSubmissionDefinitionVersion
        - listWorkflowStages
        - replaceWorkflowStages
        - dryRunSubmissionDefinitionVersionActions
        - listReviewRubrics
        - createReviewRubric
        - getReviewRubric
        - updateReviewRubric
        - archiveReviewRubric
        - copyReviewRubric
        - listRubricVersions
        - createRubricVersion
        - getRubricVersion
        - updateRubricVersion
        - publishRubricVersion
        - listReviewerRules
        - createReviewerRule
        - getReviewerRule
        - updateReviewerRule
        - removeReviewerRule
        - listReviewTeams
        - createReviewTeam
        - getReviewTeam
        - updateReviewTeam
        - archiveReviewTeam
        - copyReviewTeam
        - replaceReviewTeamMembers
        - listStatusReasons
        - createStatusReason
        - getStatusReason
        - updateStatusReason
        - removeStatusReason
        - listDeclineReasons
        - createDeclineReason
        - getDeclineReason
        - updateDeclineReason
        - removeDeclineReason
        - getSubmissionDefinitionProgress
        - getIntakeHealth
        - startSubmission
        - listSubmissions
        - listOwnSubmissions
        - getSubmission
        - saveSubmissionPayload
        - addSubmissionAttachment
        - removeSubmissionAttachment
        - inviteSubmissionParticipant
        - submitSubmission
        - withdrawSubmission
        - closeSubmission
        - reopenSubmission
        - correctSubmissionPayload
        - getSubmissionRevision
        - downloadSubmissionAttachment
        - listOwnInformationRequests
        - respondToInformationRequest
        - requestInformationForReview
        - listSubmissionActionRuns
        - listSubmissionTimers
        - retrySubmissionActionRun
        - skipSubmissionActionRun
        - retrySubmissionTimer
        - listSubmissionConflicts
        - declareSubmissionConflict
        - listContributionRequirements
        - createContributionRequest
        - listContributionRequests
        - listOwnContributionRequests
        - getContributionRequest
        - resendContributionRequest
        - remindContributor
        - replaceContributor
        - cancelContributionRequest
        - revokeContributionRequest
        - getContributionResponse
        - readContributionSignedIn
        - saveContributionDraftSignedIn
        - addContributionFileSignedIn
        - removeContributionFileSignedIn
        - submitContributionSignedIn
        - declineContributionSignedIn
        - withdrawContributionSignedIn
        - amendContributionSignedIn
        - readContributionReceiptSignedIn
        - readContributionByToken
        - saveContributionDraftByToken
        - addContributionFileByToken
        - removeContributionFileByToken
        - submitContributionByToken
        - declineContributionByToken
        - withdrawContributionByToken
        - amendContributionByToken
        - readContributionReceiptByToken
        - getReviewHealth
        - listReviewAssignments
        - listReviewerWorkload
        - listMyReviewAssignments
        - getReviewAssignment
        - acceptReviewAssignment
        - declineReviewAssignment
        - recuseReviewAssignment
        - delegateReviewAssignment
        - reassignReviewAssignment
        - revokeReviewAssignment
        - saveReviewResponse
        - submitReviewResponse
        - amendReviewResponse
        - declareReviewConflict
        - clearReviewConflict
        - waiveReviewConflict
        - listStageRuns
        - getStageRun
        - getReviewAssignmentForStaff
        - listSubmissionReviewResponses
        - assignStageRunReviewers
        - reResolveStageRun
        - closeStageRun
        - waiveStageRunRequirement
        - completeStageRunRequirement
        - listSubmissionEvents
        - getOutcomesHealth
        - listSubmissionDecisions
        - recordSubmissionDecision
        - supersedeSubmissionDecision
        - acknowledgeSubmissionDecision
        - listSubmissionDecisionDeliveries
      events:
        - SubmissionDecisionDelivered v1 (to owning applications)
        - submissions.* action-log entries
        - >-
          trigger points stage.entered, stage.exited,
          information_request.opened, information_request.answered,
          decision.recorded, submission.submitted, submission.withdrawn,
          submission.closed, submission.reopened
    delegates:
      - concern: Keep extensions on owner records; engine records have no custom fields
        to: MOD-PFM-MTD (R2-ARCH-001)
      - concern: >-
          Provide identity, permission evaluation, licensing and policy
          registration
        to: MOD-PFM-SEC
      - concern: Host staff navigation and the console application surfaces
        to: MOD-PFM-CSH
      - concern: 'Supply contact, organization and person-search records'
        to: MOD-CRM-ENT
      - concern: Own task creation and completion requested by follow-up execution
        to: MOD-CRM-ACT
      - concern: Deliver requested contributor and applicant-side communications
        to: MOD-PFM-NOT
      - concern: Store operational attention and resolve responsibility recipients
        to: MOD-PFM-ELG
      - concern: >-
          Provide shared action execution primitives, type registration and
          business calendars
        to: MOD-PFM-INT
      - concern: Execute governed datasets and Explorer queries
        to: MOD-PFM-QRY
      - concern: Prepare and store assets and allocate application numbers
        to: Platform
      - concern: 'Manage workspace lifecycle, exports and deletion'
        to: MOD-PFM-TNL
      - concern: >-
          Keep row-change history outside this integration; expose local
          application events instead
        to: Platform (not used)
      - concern: Apply decision effects to owner records and report handling
        to: >-
          Owning applications (MOD-CMT-CMT first; MOD-MBR-MEM, MOD-COM-ORD and
          others as they register)
      - concern: Provide the approved future homes for form collection and review
        to: Platform’s submissions and reviews modules (PLAT-M30)
    guarantees:
      - INV-DOM-SUB-SUB-001-01
      - INV-DOM-SUB-SUB-001-02
      - INV-DOM-SUB-SUB-001-03
      - INV-DOM-SUB-SUB-001-04
      - INV-DOM-SUB-SUB-001-05
      - INV-DOM-SUB-SUB-001-06
      - INV-DOM-SUB-SUB-001-07
      - INV-DOM-SUB-SUB-001-08
      - INV-DOM-SUB-SUB-001-09
      - INV-DOM-SUB-SUB-001-10
      - INV-DOM-SUB-SUB-001-11
      - INV-DOM-SUB-SUB-001-12
      - INV-DOM-SUB-SUB-001-13
      - INV-DOM-SUB-SUB-002-01
      - INV-DOM-SUB-SUB-002-02
      - INV-DOM-SUB-SUB-002-03
      - INV-DOM-SUB-SUB-002-04
      - INV-DOM-SUB-SUB-002-05
      - INV-DOM-SUB-SUB-002-06
      - INV-DOM-SUB-SUB-002-07
      - INV-DOM-SUB-SUB-002-08
      - INV-DOM-SUB-SUB-002-09
      - INV-DOM-SUB-SUB-002-10
      - INV-DOM-SUB-SUB-002-11
      - INV-DOM-SUB-SUB-002-12
      - INV-DOM-SUB-SUB-003-01
      - INV-DOM-SUB-SUB-003-02
      - INV-DOM-SUB-SUB-003-03
      - INV-DOM-SUB-SUB-003-04
      - INV-DOM-SUB-SUB-003-05
      - INV-DOM-SUB-SUB-003-06
      - INV-DOM-SUB-SUB-003-07
      - INV-DOM-SUB-SUB-003-08
      - INV-DOM-SUB-SUB-003-09
      - INV-DOM-SUB-SUB-003-10
      - INV-DOM-SUB-SUB-003-11
      - INV-DOM-SUB-SUB-003-12
      - INV-DOM-SUB-SUB-004-01
      - INV-DOM-SUB-SUB-004-02
      - INV-DOM-SUB-SUB-004-03
      - INV-DOM-SUB-SUB-004-04
      - INV-DOM-SUB-SUB-004-05
      - INV-DOM-SUB-SUB-004-06
      - INV-DOM-SUB-SUB-004-07
      - INV-DOM-SUB-SUB-004-08
      - INV-DOM-SUB-SUB-004-09
      - INV-DOM-SUB-SUB-004-10
      - INV-DOM-SUB-SUB-005-01
      - INV-DOM-SUB-SUB-005-02
      - INV-DOM-SUB-SUB-005-03
      - INV-DOM-SUB-SUB-005-04
      - INV-DOM-SUB-SUB-005-05
      - INV-DOM-SUB-SUB-005-06
      - INV-DOM-SUB-SUB-005-07
      - INV-DOM-SUB-SUB-005-08
      - INV-DOM-SUB-SUB-005-09
      - INV-DOM-SUB-SUB-005-10
evidence:
  - >-
    services-submissions at 64236c19: aws/api/submissions.routes.ts;
    aws/submissions.service.ts; aws/submissions.attention.ts,
    submissions.responsibilities.ts, submissions.queries.ts;
    modules/*/README.md.
  - >-
    services-platform at ad3f6a65: docs/standards/custom-field-capability.md;
    docs/standards/submission-compatible-operations.md;
    docs/proposals/reviews/10-decisions.md.
---

# Submissions Responsibilities

## How the Product Area Is Divided

The product area currently contains a standalone application and review engine. Its definitions, intake, review, outcomes and reporting parts share a schema, allowing a lifecycle command to commit the local application, review and decision changes together. The recorded migration places review in Platform and separates form collection into its own Platform module.

## Submissions, Intake, Review and Outcomes

Definitions owns process configuration and its published versions. Intake owns application content, participation, revisions, files, clarification requests and outside contributions. Review owns runs, reviewer pools, assessments, conflicts and configured follow-up state. Outcomes owns decisions, delivery pointers and application events; reporting supplies reads over these owned records.

The engine freezes published configuration, pins applications and serializes completing commands with database uniqueness as a second safeguard. Blind review withholds marked identifying content through server projection; unmarked content can still identify an applicant. Event history covers the events implemented by each command. Externally owned decisions use duplicate-tolerant delivery and acknowledgement reconciliation rather than a promise that the owner has already performed its effect.

Staff operations, applicant-side APIs and contributor links expose different authority boundaries. Trusted functions support owner intake and status reads. None of the engine operations is published as an owning-domain Submission Form binding. The operation inventory and object ownership agree with the service contracts.

## What Is Delegated to Platform and Other Areas

Platform supplies identity and authorization, console hosting, communication delivery, prepared files, number allocation, query execution, business calendars and the shared action library. CRM retains person and organization records and owns tasks affected by follow-ups. The registered subject owner applies decision effects and reports their handling.

Attention publishing is disabled by default, and the scanner currently substitutes a clean result without inspecting content. Unexpected inline follow-up errors can abort their triggering transaction. These implementation limitations remain findings rather than approved product guarantees. Engine records have no custom fields, and the current history surface uses application events rather than Platform row-change history.
