Restore EfcViewer folder lineage and segment navigation - #605
Merged
drmoisan merged 12 commits intoAug 25, 2026
Merged
Conversation
- Promote issue documentation into the active feature lifecycle`n- Record root-cause analysis, acceptance criteria, and validation strategy`n`nRefs: #439
- Define path normalization, lineage rendering, and ancestor navigation`n- Add scoped acceptance criteria and regression coverage requirements`n`nRefs: #439
- Add C# baseline, regression, and QA evidence requirements`n- Specify archive-relative lineage and typed segment navigation scope`n- Require automated acceptance, review, and publishing gates`n`nRefs: #439
Resolve archive-relative folders into stable breadcrumb segments Retain row identity and filing targets through typed navigation Add headless regression coverage and QA evidence Refs: #439
- Add code, feature, and policy audits that classify the branch as needing revision - Define remediation for file-size violations and EfcForm coverage - Reopen the final QA acceptance criterion pending remediation Refs: #439
- Establish baseline and feasibility gates for size and coverage findings - Plan router, test-file, and controller remediation tasks - Require headless tests, coverage thresholds, and review handoff Refs: #439
- Record Phase 0 policy, repository state, and file-size baselines - Capture the rejected legacy formatter invocation without source changes - Update baseline and final QA steps to use the required format subcommand Refs: #439
- Capture formatter, analyzer, nullable, and 6,474-test coverage evidence - Add normalized Cobertura data for repository and changed-file comparison - Revise remediation audit checks to use Windows-compatible commands Refs: #439
- Document the passing headless static audit across 18 relevant test sources - Establish a 24.41% maximum narrow-seam controller coverage projection - Mark feasibility tasks complete and stop before out-of-scope Phase 1 work Refs: #439
drmoisan
added a commit
that referenced
this pull request
Aug 25, 2026
drmoisan
added a commit
that referenced
this pull request
Aug 25, 2026
drmoisan
deleted the
bug/efcviewer-missing-lineage-and-segment-navigation-439
branch
August 28, 2026 11:56
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.
Summary
Trash to Delete, keyboard, and ItemViewer boundaries.NEEDS REVISION, and the unresolved findings below remain open.Why
EfcViewer presents archive-relative filing targets, while the hierarchy provider requires exact full Outlook paths. This mismatch caused ordinary folder rows to fall back to a single segment. The change creates an explicit presentation boundary that resolves hierarchy paths without changing the filing target used by existing selection and probability behavior.
What Changed
Core behavior
ArchiveRootPaththrough the Efc binding boundary and expand only targets that are not already archive-rooted.FilingTargetseparately from its resolved hierarchy path.→separator between adjacent segments.Tests
Documentation and evidence
Architecture / How It Fits Together
EfcFormControllersupplies the archive root toBreadcrumbBridgeRouter. The router derives a hierarchy-only full path when needed, resolves that path throughIFolderHierarchyProvider, and retains the original archive-relative filing target inBreadcrumbRow. The generated document emits typed activation messages, which the codec and router validate before selecting an ancestor or child target or requesting immediate children.Verification
Completed
dotnet tool run csharpier format .exited 0 with no final tracked changes.NEEDS REVISION: 13 of 14 acceptance criteria passed, while the final QA-and-coverage criterion remains unchecked.Recommended
EfcFormController.dotnet tool run csharpier format .msbuild TaskMaster.sln /t:Build /p:Configuration=Debug /p:Platform='Any CPU' /p:EnableNETAnalyzers=true /p:EnforceCodeStyleInBuild=truemsbuild TaskMaster.sln /t:Build /p:Configuration=Debug /p:Platform='Any CPU' /p:Nullable=enable /p:TreatWarningsAsErrors=truepwsh -NoProfile -File scripts/vscode/Invoke-MSTestWithCoverage.ps1 -SearchRoot . -Configuration Debug -CoverageOutput docs/features/active/2026-08-07-efcviewer-missing-lineage-and-segment-navigation-439/evidence/qa-gates/issue-439-final.normalized.cobertura.xmlBackward Compatibility / Migration Notes
FolderBreadcrumb.htmlbehavior changes are included.Risks and Mitigations
BreadcrumbBridgeRouter.csis a modified 596-line production file andBreadcrumbBridgeRouterIssue439Tests.csis a new 531-line test file, exceeding the repository's 500-line limit. Split both into cohesive units and repeat QA and review.EfcFormController.cshas 81/721 covered lines (11.234397%), below the mandatory 80% modified-file coverage floor. Add headless seams and coverage before requesting review approval.REMEDIATION_REQUIREDreview result. It does not represent a passing review, resolved findings, or merge authorization.Review Guide
Follow-ups
EfcFormController.cscoverage to the required floor with headless tests or seams.GitHub Auto-close
Related issues / PRs