Skip to content

feat: discover referenced quantities and prove package interoperability - #22

Merged
ScottishTapWater merged 1 commit into
feat/discovery-type-namesfrom
feat/discovery-metadata
Oct 24, 2026
Merged

ScottishTapWater merged 1 commit into
feat/discovery-type-namesfrom
feat/discovery-metadata

Conversation

@ScottishTapWater

Copy link
Copy Markdown
Contributor

Summary

Stack 6 of 6, based on #21.

  • Discover quantity dimensions from referenced values, including fields, properties, method results and nested collection types.
  • Generate consumer-local helpers even when no arithmetic or explicit quantity name requests them.
  • Use the existing type reader and planning pipeline; avoid scanning entire referenced assemblies.
  • Respect existing aliases, types and namespaces, and defer encoded-type symbol resolution until a possible quantity is found.
  • Add an ephemeral A/B/C NuGet test: independently build and pack A and B, consume both from C, verify quantity type identity and conversions, and generate further arithmetic in C.

Verification

  • Solution build: no warnings or errors.
  • Core: 471 passed; Roslyn: 436 passed; package integration: 2 passed.
  • Format verification and git diff --check pass.
  • Independent C# production and test reviews; fixes independently reviewed again.

No fixture projects or package artifacts are committed. This completes the six discovery slices; diagnostics and IDE polish remain separate follow-up work.

@ScottishTapWater
ScottishTapWater enabled stacked auto-merge (squash) October 24, 2026 18:04
stacked auto-merge was automatically disabled October 24, 2026 18:06

Auto-merge was disabled for another pull request in the stack

@ScottishTapWater
ScottishTapWater merged commit 6db8052 into main Oct 24, 2026
2 checks passed
@ScottishTapWater
ScottishTapWater deleted the feat/discovery-metadata branch October 24, 2026 18:07
ScottishTapWater added a commit that referenced this pull request Oct 24, 2026
## Summary

README follow-up stacked on #22.

- Describe powers, roots, rational exponents and dimensionless
arithmetic results.
- Document discovery through locals, branches, members, method returns
and type-only declarations.
- Explain referenced-package interoperability and per-compilation
aliases.
- Replace the outdated limitations paragraph with the current discovery
boundaries.

## Verification

- All six README C# examples compiled together in an isolated C# 14
consumer using the current runtime and generator: zero warnings or
errors.
- Independent technical documentation review completed; wording
corrected and reviewed again.
- `git diff --check` passed.

Only README.md changes.
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