Skip to content

Add additional organization billing information to the Svelte billing settings - #2275

Draft
niemyjski with Copilot wants to merge 22 commits into
mainfrom
copilot/add-billing-information-support
Draft

niemyjski with Copilot wants to merge 22 commits into
mainfrom
copilot/add-billing-information-support

Conversation

Copilot AI commented May 31, 2026 •

Copy link
Copy Markdown
Contributor

Organizations can save a billing name, address, VAT ID, and VAT number from billing settings. Clearing a field removes its stored key. Sequential autosaves preserve edits during saves; navigation protects pending changes, and failures retain input for retry. Invoice and plan requests remain independent of billing writes.

Validation: 1,161 unit tests, formatting/lint, Svelte checks (zero errors/warnings), and production build passed on 49453cefc. Latest main (1326f7463) is included through a normal merge; billing imports and environment mocks now follow its frontend conventions.

Remaining gates: final-head CI completed with two flaky browser scenarios (saved environment view and invitation signup), rejected by the flaky-test gate, the Copilot CLA signature remains pending, and live backend billing persistence has not been verified locally. This PR remains draft.

Verification and implementation details
  • Existing organization keys and API endpoints are preserved. Sequential key writes protect whole-document backend updates; failed saves retain input for retry.
  • Main integration required resolving two import/environment conflicts and migrating billing-specific imports to package subpaths. The billing page tests now supply the environment exports required by current authentication and shared configuration modules.
  • All 136 unit-test files passed. The three billing page cases passed after the integration fixes.
  • Final-head API shards, client, Docker, website, and five browser shards passed. Both billing browser scenarios passed. Browser shard 1 failed because the saved-environment-view and invitation-signup scenarios passed only on retry; these failures remain unresolved.
  • Existing browser coverage mocks API responses; it does not establish backend persistence. No shared runtime services were started without an exclusive grant.
  • Feedback review found zero submitted reviews and zero review threads; the CLA notice remains an external gate.

Copilot AI linked an issue May 31, 2026 that may be closed by this pull request
@CLAassistant

CLAassistant commented May 31, 2026 •

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
2 out of 3 committers have signed the CLA.

✅ ejsmith
✅ niemyjski
❌ Copilot
You have signed the CLA already but the status is still pending? Let us recheck it.

Copilot AI changed the title [WIP] Add support for additional billing information Add additional organization billing information to the Svelte billing settings Jun 1, 2026
Copilot AI requested a review from niemyjski June 1, 2026 00:23
@ejsmith
ejsmith force-pushed the copilot/add-billing-information-support branch from a5bb43a to 9916b93 Compare June 28, 2026 01:24
@niemyjski

Copy link
Copy Markdown
Member

Follow-up reviewer-feedback and thermo-nuclear audit completed against live head e93c6879c3d0309d7024b4d8d510e42eaa654eb3 and origin/main dc940dd15c8d222d9764080622fdf4583d4546b8.

Feedback inventory and classification:

  • GraphQL review threads: 0 total / 0 unresolved.
  • Inline review comments: 0.
  • Submitted reviews: 0.
  • Top-level comments: the coverage report is informational and green; the CLA Assistant notice is an external gate because the Copilot committer cannot sign the CLA. There is no human, Codex, or Copilot code-review finding outstanding at the current live head.

Thermo-nuclear findings:

  • No remaining structural blocker or justified code change was found in the complete branch-vs-main diff.
  • The invoice table is isolated in an 89-line presentational component with populated/empty/loading/error Storybook states; the billing route is 301 lines and no changed file crosses 1,000 lines.
  • Serialized autosaves prevent older responses from overwriting newer input.
  • Per-key writes intentionally remain sequential: the backend handlers load and save the whole organization document per request, so parallel sibling-key writes can lose updates. This is correctness orchestration, not incidental serialization.
  • Missing/malformed legacy data normalizes safely, cleared values delete their stable keys, generic API access remains organization-scoped, and no API contract changed.
  • The PR description’s stale test filenames and unsupported backend-test claim were corrected.

Verification:

  • Focused Vitest: 3 files / 11 tests passed.
  • npm run check: 0 errors / 0 warnings.
  • npm run build: passed.
  • npm run build-storybook: passed.
  • git diff --check origin/main...HEAD: passed.
  • Build workflow 30205531546: API, client, E2E, Docker, and version passed.
  • Website workflow 30205531465: passed.

No commit was needed for this follow-up audit. The PR is code-ready and GitHub reports it mergeable; the remaining gates are the existing draft state and pending Copilot CLA.

@niemyjski
niemyjski force-pushed the copilot/add-billing-information-support branch from 87ba6f8 to 356c79f Compare September 16, 2026 00:39
@github-actions

Copy link
Copy Markdown

Code Coverage

Package Line Rate Branch Rate Complexity Health
Exceptionless.AppHost 23% 22% 130 ❌
Exceptionless.Core 78% 70% 10988 ✔
Exceptionless.Insulation 51% 43% 370 ➖
Exceptionless.Web 86% 72% 9427 ✔
Summary 81% (28616 / 35495) 70% (14323 / 20504) 20915 ✔

This branch has not been deployed

No deployments
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.

Add support for additional billing information

4 participants