---
id: JNY-ACC-CLS-003
title: A controller corrects the latest closed month
feature: FEAT-ACC-CLS-03
product_area: accounting
module: close
revision: 1
status: draft
product_intent: proposed
implementation_evidence: observed
supersedes:
  - ACT-ACC-0614 (react-console acceptance journey)
  - ACT-ACC-0615 (react-console acceptance journey)
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-accounting: f47cb263875bbc0c5640fba7dae6785ec32695f8
actor: ACT-ACC-015
goal: >-
  Reopen the eligible month, post the correction and retain both closing
  records.
capabilities:
  - CAP-ACC-CLS-002
  - CAP-ACC-CLS-011
  - CAP-ACC-CLS-009
  - CAP-ACC-CLS-008
  - CAP-ACC-CLS-014
screens:
  - '/console/{tenantId}/accounting/close/history'
  - '/console/{tenantId}/accounting/close/runs/{runId}'
  - '/console/{tenantId}/accounting/close'
steps:
  - 'n': 1
    surface: '/console/{tenantId}/accounting/close/history'
    action: Find the latest closed month in history.
    capability: CAP-ACC-CLS-002
    expected: The eligible reopen action appears for that month.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - 'n': 2
    surface: reopenFiscalPeriod
    action: 'Try a short reason, then a valid reason with month-label confirmation.'
    capability: CAP-ACC-CLS-011
    expected: >-
      The dialog blocks the short reason and submits the valid correction
      request.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - 'n': 3
    surface: '/console/{tenantId}/accounting/close/runs/{runId}'
    action: Follow reopen execution.
    capability: CAP-ACC-CLS-009
    expected: >-
      Reversal completes or is skipped with its reason, and finalization opens
      the month and counts the reopen.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - 'n': 4
    surface: '/console/{tenantId}/accounting/close'
    action: Post the correction and evaluate the period.
    capability: CAP-ACC-CLS-008
    expected: The corrected fixture is ready after its posting work completes.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - 'n': 5
    surface: closeFiscalPeriod
    action: Close the corrected month.
    capability: CAP-ACC-CLS-009
    expected: A new run recognizes applicable revenue and completes closing again.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0615.spec.ts#ACT-ACC-0615
  - 'n': 6
    surface: getFiscalCloseRecord
    action: Review the first close’s retained evidence.
    capability: CAP-ACC-CLS-014
    expected: >-
      Its original snapshot remains and linked history includes the correction
      reason.
    provenance: test
    source: >-
      services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-runs.e2e.spec.js#lists
      the reopen in the close’s record
alternates: []
failures:
  - from_step: 1
    condition: A later month remains closed.
    path: >-
      Sequence validation refuses the earlier reopen and identifies the later
      period.
    outcome: The period stays protected.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - from_step: 2
    condition: The caller lacks reopening authority.
    path: >-
      The request is denied and the available-action response explains
      authority.
    outcome: The closed period is unchanged.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
rules_in_play:
  - BR-CAP-ACC-CLS-002-02
  - BR-CAP-ACC-CLS-011-01
  - BR-CAP-ACC-CLS-011-02
  - BR-CAP-ACC-CLS-011-06
  - BR-CAP-ACC-CLS-011-07
  - BR-CAP-ACC-CLS-009-05
  - BR-CAP-ACC-CLS-009-06
assertions:
  - id: AS-JNY-ACC-CLS-003-01
    statement: >-
      Reopening is restricted to an eligible latest close with authority and a
      valid reason.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - id: AS-JNY-ACC-CLS-003-02
    statement: Successful correction execution increments the period’s reopen count.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0614.spec.ts#ACT-ACC-0614
  - id: AS-JNY-ACC-CLS-003-03
    statement: >-
      Recognition is reversed by reopen and performed again on the subsequent
      close.
    provenance: test
    source: >-
      react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0615.spec.ts#ACT-ACC-0615
  - id: AS-JNY-ACC-CLS-003-04
    statement: The original snapshot remains with its linked correction request.
    provenance: test
    source: >-
      services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-runs.e2e.spec.js#lists
      the reopen in the close’s record
e2e_policy: required
e2e_reason: >-
  The outcome crosses console decisions and service effects, so browser coverage
  is required.
proved_by: []
---

# A controller corrects the latest closed month

## Story

The controller finds the eligible latest close, explains the correction and confirms its month. Reopen execution reverses the close-owned work and makes the period writable. After posting the correction, the controller closes again and reviews the original record to see both its retained evaluation and the linked reopen.
