Skip to content

Flatten output line numbering to a single 1..N sequence (HPE, HP, Lenovo)#6

Merged
regalen merged 3 commits into
mainfrom
testing
Jul 1, 2026
Merged

Flatten output line numbering to a single 1..N sequence (HPE, HP, Lenovo)#6
regalen merged 3 commits into
mainfrom
testing

Conversation

@regalen

@regalen regalen commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

Flattens the output Item column (line_sequence) so every emitted line takes the next number in a single running sequence (1, 2, 3, …) instead of sub-numbering bundle/config components as parent.NN (1.01, 1.02, …). Applied across all parsers that previously nested:

  • HPE Bid (XLSX) — BundleDetails flatten under the running counter.
  • HP Bid (XLSX) — Bundle Detail rows flatten.
  • HP OneConfig (XLSX) — components flatten to 2, 3, … after the parent 1.
  • Lenovo BRDA DCG (PDF + XLS) — child/component rows flatten.

Zebra was already flat and is unchanged.

Notes

  • Comment placement is unchangedMax Qty still appears only on Part Number/Bundle lines.
  • Because the sequence no longer encodes hierarchy, parent vs child is now distinguished by cost (parents priced > 0; children dropped to 0, exported as the 0.0001 sentinel). Lenovo tests were reworked accordingly.
  • Downstream consumers that relied on the dotted Item numbers to identify child lines should now use cost instead.

Verification

  • Updated all affected parser tests and regenerated the affected goldens.
  • Full parsing suite passes: dotnet test → 178 passed.
  • Docs refreshed: per-format specs, output_mapping.md, project_memory.md.

regalen added 3 commits July 1, 2026 19:25
BundleDetails rows are no longer sub-numbered under their parent bundle
(1.01, 1.02, ...); every emitted line now takes the next number in one
running sequence. Comment placement is unchanged (Max Qty only on Bundle/
Part Number lines). Updated File1 tests, regenerated its goldens, and
refreshed the HPE format spec + output mapping docs.
…quence

Bundle Detail rows (HP Bid) and component rows (OneConfig) are no longer
sub-numbered under their parent (1.01, 1.02, ...); every emitted line now
takes the next number in one running sequence. Comment placement is
unchanged (Max Qty only on Part Number/Bundle lines). Updated parser tests,
regenerated the affected goldens, and refreshed the HP format specs +
output mapping docs.
…sequence

Child/component rows are no longer sub-numbered under their parent
(1.01, 1.02, ...); every emitted line now takes the next number in one
running sequence. Since the sequence no longer encodes the hierarchy,
tests now distinguish parent from child by cost (parents priced > 0,
children dropped to 0). Updated parser tests, regenerated the three
Lenovo goldens, and refreshed the Lenovo format specs.
@regalen regalen merged commit 2e45727 into main Jul 1, 2026
8 checks passed
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