Skip to content

fix(V2): keep primary worksheet first in xlsx exports#1560

Merged
TheLastCicada merged 1 commit into
v2-rc2from
fix-v2-projects-sheet-first
Mar 30, 2026
Merged

fix(V2): keep primary worksheet first in xlsx exports#1560
TheLastCicada merged 1 commit into
v2-rc2from
fix-v2-projects-sheet-first

Conversation

@TheLastCicada

@TheLastCicada TheLastCicada commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • preserve the main V2 worksheet as the first worksheet in generated XLSX exports
  • avoid object key reordering side effects when renaming the model sheet to xlsSheetName
  • add integration assertions to verify projects and units are first tabs

Test plan

  • eval "$(fnm env)" && fnm use && bash tests/run-tests.sh npx cross-env NODE_ENV=test USE_SIMULATOR=true CW_PORT=31311 mocha --loader node_modules/extensionless/src/register.js tests/v2/integration/v2-xls.spec.js --reporter spec --exit --timeout 300000

Note

Low Risk
Low risk: changes only worksheet ordering during XLSX build and adds assertions in integration tests. No changes to parsing, staging, or data transformation logic.

Overview
V2 XLSX exports now preserve a deterministic sheet order by explicitly building the workbook with the main sheet (e.g. projects/units) first, avoiding object key reordering side effects after renaming the model sheet.

Integration tests for createV2Xls are updated to assert the main worksheet is the first tab for both ProjectV2 and UnitV2 exports.

Written by Cursor Bugbot for commit c8a57c5. This will update automatically on new commits. Configure here.

Ensure the renamed main V2 worksheet is always emitted first in generated
XLSX files so the primary entity tab opens first for users.
@TheLastCicada TheLastCicada merged commit 87acdfc into v2-rc2 Mar 30, 2026
27 checks passed
@TheLastCicada TheLastCicada deleted the fix-v2-projects-sheet-first branch March 30, 2026 20:31
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.

1 participant