Skip to content

fix: preserve review section state and align shared UI contracts - #1825

Draft
Jacky-Pham wants to merge 2 commits into
mainfrom
Jacky/strr-shared-contracts-20260915
Draft

Jacky-Pham wants to merge 2 commits into
mainfrom
Jacky/strr-shared-contracts-20260915

Conversation

@Jacky-Pham

@Jacky-Pham Jacky-Pham commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

Review sections allow items without titles, but their Vue keys previously became NaN. A validation re-render discarded slotted input state and duplicated rendered content. Use a defined title fallback in the key; the new regression exercises both untitled sections and the titled control with the real section and info-box components.

Align the remaining shared contracts with existing behavior: retain literal address keys, give the STRR help URL its documented default, accept API payment-status strings in the pending-state check, remove an unused TypeScript suppression, and read the date duration as a scalar without changing invalid-date behavior.

Patch Nuxt UI 2.22.3's alert declaration to accept closeButton: null, which the runtime already supports for non-dismissible alerts. Each independently installed frontend includes the same declaration-only patch. All resolved dependency versions and the alert runtime file are unchanged. Pin the base package to the same pnpm 10.21.0 used by the other apps; its previous pnpm 9 CI default rejects the patch metadata.

Validation on Node 24/pnpm 10.21:

  • Regression baseline: untitled sections fail; titled control passes. Both pass after the repair.
  • All five unit suites and lint pass: base 22, Host 339, Platform 47, Strata 61, Examiner 249 (718 tests).
  • Paired strict checks using the local shared layer improve from 654 to 581 overlapping diagnostics. All 11 remaining shared/base contracts targeted here are resolved. Strict checks still fail elsewhere; an existing dependency SystemBanner error now reports its unsupported class field after accepting null.
  • All 12 date behavior probes match the parent, including invalid dates; missing/empty/custom help-URL configuration checks pass.

Combined-source CI passes all five frontend lint/test/build jobs and 1,044 tests with the earlier fixes applied. Combined strict checks improve from 362 to 289 diagnostics (base 39, Host 78, Platform 48, Strata 61, Examiner 63); the base package's own source is clean, but dependency and consumer errors remain. This run used pnpm 10.21.0 explicitly; the sole subsequent change is the base package-manager pin to that same version.

The initial standard base CI failed because pnpm 9 rejected the patch metadata. The frozen base install passes with the corrected package-manager pin. All final checks on 9016aadf are complete: the five standard frontend lint/test/build workflows pass (718 tests), as do CodeQL and all four Cloud Build checks. The unused npm jobs are intentionally skipped; the unused base Cloud Build check is neutral.

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-strata-hotel-dev--pr-1825-cqa00sgu.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-platform-dev--pr-1825-71ujlufk.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-examiner-dev--pr-1825-tjn9olcx.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-hosts-dev--pr-1825-fp1tqsdk.web.app

@sonarqubecloud

Copy link
Copy Markdown

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-strata-hotel-dev--pr-1825-cqa00sgu.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-examiner-dev--pr-1825-tjn9olcx.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-platform-dev--pr-1825-71ujlufk.web.app

@bcregistry-sre

Copy link
Copy Markdown
Collaborator

Temporary Url for review: https://strr-hosts-dev--pr-1825-fp1tqsdk.web.app

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