Skip to content

fix: support legacy v18-v20 ACD layouts - #39

Merged
hutcheb merged 2 commits into
hutcheb:mainfrom
Bobby-Miller:fix/legacy-comps-layout
Aug 4, 2026
Merged

fix: support legacy v18-v20 ACD layouts#39
hutcheb merged 2 commits into
hutcheb:mainfrom
Bobby-Miller:fix/legacy-comps-layout

Conversation

@Bobby-Miller

Copy link
Copy Markdown
Contributor

Summary

  • parse the four-byte-short legacy FAFA/FDFD Comps headers and legacy Rx envelope without changing generated modern parsers
  • recover legacy Region Maps, data-type graphs, arrays, motion/message tags, aliases, Produced/Consumed connection metadata, and task schedules
  • preserve modern Rx/Region Map detection, including header-only empty maps, and add the observed 1769-L33ERM catalog mapping
  • reject malformed legacy lengths, aliases, connection descriptors, and task program counts instead of silently returning partial data

Validation

  • 94 passed, 2 skipped on Python 3.8
  • 94 passed, 2 skipped on the current Python interpreter
  • repository CI flake8 error gate: 0 findings
  • synthetic coverage for modern/legacy Comps, Rx, Region Map collision handling, scalar/array/UDT/motion/message tags, aliases, Produced/Consumed links, and task schedules
  • validated five private v18/v20 projects against Studio-generated v37 L5X references: exact tag scope/type/data type/dimensions/radix/access, aliases, ProduceInfo/ConsumeInfo, and task schedules; all generated L5X files are well-formed

The proprietary validation projects are not included in this PR.

@hutcheb
hutcheb merged commit 07fc5ac into hutcheb:main Aug 4, 2026
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