fix(foundation): 🔧 resolve typing and preserve runtime guards - #90
Merged
Merged
Conversation
Resolve source modules for strict analysis and make validated types explicit. Replace production assertions with failure results, and reject malformed JSON objects and override IDs without overwriting existing output. Refs #89 Roadmap-Step: EMP-Q04
Pull Request Summary by devActivityMetricsAchievements
|
This was referenced Sep 18, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The full-profile scan after #88 finds typing/import-resolution errors and production assertions in the foundation tooling, even though its behavior tests and fast PR lint pass. This PR fixes those foundation findings and two malformed-input paths that previously produced tracebacks.
Closes #89. Follows #82 and #88. Parent: egohygiene/.github#32.
Roadmap-Step: EMP-Q04 (validation evidence; roadmap completion unchanged).
Changes:
python -Oexecution. Rejected inputs preserve existing output and produce no traceback.The accepted foundation
1.1.0catalog, schemas, ignore sources, manifest, active root, and generated outputs are unchanged. No lint configuration changes or production finding suppressions are introduced. The test subprocess annotations follow the existing call-specific pattern for test-controlled arguments without a shell.Validation at head
87d09583edfad13156d124f262ff7563f23ad736:Core reproduction commands from the repository root:
All six PR workflows completed at head
87d09583edfad13156d124f262ff7563f23ad736:Mypy/Bandit results above are the scoped local full-profile checks; the fast GitHub job does not run them. No all-green repository or full-profile claim.
Remaining boundaries:
This is scoped foundation validation, not a claim that the full repository is green. The existing EgoLint workflow/catalog pin mismatch, MegaLinter pre-command syntax diagnostic, wider full-profile findings, OSV severity gate, imported nested-ignore exceptions, and Cargo fixture wiring remain follow-up work in the epic. Filament adoption follows the remaining acceptance reconciliation. #82 stays closed.
The iteration checkpoint records the next review/merge/sync step. Stop for maintainer review; no self-merge.