Skip to content

🚀 Release P2-3049 + P2-3053: empty Center cell + dynamic ToC reporting-phase year#709

Merged
Cristian45 merged 7 commits into
masterfrom
staging
Jun 23, 2026
Merged

🚀 Release P2-3049 + P2-3053: empty Center cell + dynamic ToC reporting-phase year#709
Cristian45 merged 7 commits into
masterfrom
staging

Conversation

@yecksin

@yecksin yecksin commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Release to production (staging → master). Bundles two independent, already-QA-validated fixes. Reviewer: @Cristian45


P2-3049 — Results list: empty Center cell instead of "Undefined"

  • The Center column rendered the literal text "Undefined" when a result had no lead center (led by an external partner).
  • Fallback || 'Undefined'|| '' so the cell is blank. In-code NOTE documents the future fallback-to-partner intent.
  • No backend/API change. IPSR list has no lead_center column (no duplicated path).
  • QA: validated by Santiago Sánchez on prtest (ticket moved to To Be Deployed).

P2-3053 — ToC report views: dynamic reporting-phase year

  • ToC / Area-of-Work views showed a hardcoded 2025 phase while 2026 is active.
  • The active reporting-phase year is now resolved dynamically (entity-aow.service) across entity-details, entity-aow, aow-hlo-table; confirmed ToC nomenclature applied.

Why this approach is correct

  • Both remove misleading hardcoded values (a fallback literal and a fixed year) in favor of the real data/state, with minimal, well-scoped diffs.
  • Specs tracked under openspec/changes/ for both tickets.

Verification

  • P2-3049: center name shows for results with a center; blank cell (no "Undefined") for partner-led results — confirmed local + prtest.
  • P2-3053: ToC report views show the active reporting-phase year (2026) dynamically — confirmed on dev.

🤖 Generated with Claude Code

yecksin and others added 7 commits June 22, 2026 09:44
…ly in ToC report views

The Reporting-by-ToC views hardcoded the literal "2025" so they kept showing
"Reporting Phase 2025" / "Expected target 2025" after the 2026 phase opened.
Bind these to the active reporting phase year instead.

- Add EntityAowService.reportingPhaseYear getter (active phase year, '' until
  loaded so the UI never renders "null").
- entity-aow-aow + entity-aow-2030: phase header now "Reporting Phase {year}".
- aow-hlo-table: "Expected target {year}" column built via computed from the
  active phase year (shared by High-Level Outputs, Intermediate Outcomes and
  2030 Outcomes — one change covers all three).
- aow-hlo-create-modal: the 3 hardcoded "2025" mentions in the target
  description now use the dynamic year.
- Update aow-hlo-table.component.spec.ts accordingly.

Scope: report-result views only. Previously-reported/historical data is left
untouched (indicator-details "achieved by end of 2024" / achieved_in_2024 field
and the 2022-2024 baseline). Frontend-only. Remaining nomenclature items from
the ticket are tracked in a Jira comment tagged to Santiago Sanchez + Angel.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CyLZHACEnyTLf3xAEsZUbS
…efined"

When a result has no lead center (it is led by an external partner), the
Center column rendered the literal text "Undefined". Replace the hardcoded
fallback `|| 'Undefined'` with an empty string so the cell stays blank.

Added a TODO (P2-3049) note documenting that a future change should fall
back to displaying the lead partner when no lead center exists.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…l validation

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…menclature

Per Santiago Sánchez's clarification (2026-06-22) for the Reporting-by-ToC interface:

- Entry-point cards (entity-details): "Reporting by Theory of Change" → "Results
  planned in your {year} ToC" with a question-circle tooltip ("Report results as
  planned theory of change"); "Reporting by Result Category" → "Report Emerging
  results" with a question-circle info note explaining results that emerged
  outside the {year} Theory of Change. Year is the dynamic active phase.
- HLO / Outcomes / 2030 Outcomes table headers (aow-hlo-table): Indicator name →
  "KPI statement", Type → "Indicator typology", "Expected target {year}" →
  "{year} target" (dynamic), Actual achieved → "Achieved target".
- Add TooltipModule to entity-details; update aow-hlo-table spec assertions.

Frontend-only, report-views only. Historical/previously-reported data untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CyLZHACEnyTLf3xAEsZUbS
…ctive' into P2-3049 (bundle for staging validation)
…arCloud code smell

The "TODO" keyword triggered a SonarCloud maintainability code smell. The
future scope (fall back to lead partner) is already tracked in Jira, so the
in-code comment is reworded as a NOTE without changing its meaning.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…nter-displays-center-as-undefined

🔧 fix P2-3049 + P2-3053: empty Center cell + dynamic ToC reporting-phase year (staging bundle)
@yecksin yecksin requested a review from Cristian45 June 23, 2026 13:50
@Cristian45 Cristian45 merged commit 062dc57 into master Jun 23, 2026
10 checks passed
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants