Commit f1fc9fa
Feature branch: copilot/feature-20260610-114410 (FritzAndFriends#562)
* Add 39 tests for FormShim dual-mode and WebFormsForm component (FritzAndFriends#533)
- FormShimTests.cs: 27 tests covering SSR (IFormCollection) and interactive
(Dictionary<string, StringValues>) modes for indexer, GetValues, AllKeys,
Count, ContainsKey, and SetFormData mutation
- WebFormsFormTests.razor: 12 bUnit tests for form rendering, Method/Action
parameters, ChildContent, HtmlAttributes, and default POST method
- Fix WebFormsForm.razor: add @inherits ComponentBase to prevent duplicate
CaptureUnmatchedValues from BaseWebFormsComponent via _Imports.razor
- Fix RequestShim.cs: disambiguate FormShim(null) constructor call
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore: cleanup v0.20 — remove .ai-team, diagnostic.csx, planning-docs, and old dev-docs artifacts
Preparing repository for v0.20 freeze and BlazorShift fork:
- Delete .ai-team (replaced by .squad/)
- Remove diagnostic.csx (one-off dev script)
- Remove planning-docs (old milestone tracking)
- Slim dev-docs/ by removing old PRDs, proposals, research notes
- Keep architecture/, audits/, component-specs/, migration-tests/, reports/
(these prove component capabilities and provide baseline for BlazorShift)
This cleanup reduces repository noise and makes v0.20 a clean baseline
for the commercial BlazorShift fork.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* chore: cleanup root-level files and consolidate documentation
Remove root-level clutter:
- ACT_EXTENDER_COVERAGE_ANALYSIS.md (tactical analysis artifact)
- status.md (redundant component tracking)
- AGENTS.md (moved to CONTRIBUTING.md)
- .playwright-mcp/ (test cache artifacts)
Enhanced CONTRIBUTING.md with detailed repository structure from AGENTS.md
to give new contributors clear project layout on setup.
This further reduces noise and improves onboarding clarity for v0.20.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* docs(ai-team): Merge decision inbox, consolidate memory
Session: 2026-06-10-scribe-consolidation
Requested by: Copilot
Changes:
- Merged 2 inbox decisions into canonical decisions.md (Bishop FritzAndFriends#557/FritzAndFriends#549/FritzAndFriends#550, Rogue FritzAndFriends#533)
- Deleted .squad/decisions/inbox/ files (2 processed)
- Added Bishop orchestration log for work completion
- Updated Bishop agent history with team update notification
- decisions.md: 50055 → 54498 bytes (no archival — all entries within 30-day cutoff)
All .squad/ logs written but committed only canonical team memory files per policy.
* test(FritzAndFriends#548): add enhanced-nav acceptance tests and fix AfterWingtipToys build
- Add ProductDetails_DirectUrl_RendersAllDataFields: control-case test that
verifies FormView SelectMethod data renders correctly via full-page direct URL
navigation. Passes now (workaround active) and after FritzAndFriends#548 fix.
- Add Body_DataEnhanceNavFalse_IsAbsent [SKIP TODO(FritzAndFriends#548)]: regression guard that
asserts <body data-enhance-nav="false"> is absent once the workaround in
ProjectScaffolder.cs line 321 is removed.
- Add EnhancedNavigation_ProductDetails_SelectMethodDataRendersAfterLinkClick
[SKIP TODO(FritzAndFriends#548)]: combined test — verifies Blazor enhancedload event fires
AND FormView SelectMethod data (name, description, price) is non-empty after
link-click enhanced navigation. This is the precise regression test for FritzAndFriends#548.
- Fix AfterWingtipToys build: ExceptionUtility.LogException used non-static
_httpContextAccessor in a static method (migration error). Replace with
Path.Combine(AppContext.BaseDirectory, ...) to resolve CS0120.
Results: 30 passed / 3 skipped (all TODO FritzAndFriends#548) / 0 failed
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* feat: implement FritzAndFriends#557 prescan+runtime parser, FritzAndFriends#549 code-only scaffolder, FritzAndFriends#550 namespace-prefix transform
FritzAndFriends#557 - Web.config Custom Control Registry Parser (complete)
- WebConfigAssemblyParser: parses <assemblies> + namespace-level <controls> sections
- RuntimeDetector: integrates WebConfigAssemblyParser and CodeOnlyServerControlAnalyzer
- RuntimeProfile.CustomControlRegistrations + CustomControlPrefixToNamespaceMap exposed
- PrescanAnalyzer: adds CodeOnlyServerControls section (the 'Custom Controls Found' output)
- PrescanResult.CodeOnlyServerControls populated via CodeOnlyServerControlAnalyzer
- Tests: WebConfigAssemblyParserTests (6), RuntimeDetectorTests (2), PrescanAnalyzerTests updated
FritzAndFriends#549 - Code-only server control scaffolder (complete)
- CodeOnlyServerControlAnalyzer: Roslyn-based property/event extraction added
- Extracts public settable properties, skipping BWFC-inherited names
- Extracts public events (EventHandler -> EventCallback mapping)
- CodeOnlyPropertyDescriptor + CodeOnlyEventDescriptor added to descriptor
- CodeOnlyControlScaffolder: proper BWFC base class mapping + property/event emission
- MapBwfcBaseClass: WebControl->BaseStyledComponent, Composite/DataBound/Control->BaseWebFormsComponent
- MapEventCallback: EventHandler->EventCallback, EventHandler<T>->EventCallback<T>
- BuildCodeBehind emits [Parameter] for each extracted property and event
- Pipeline wiring: EmitCodeOnlyControlSkeletonsAsync in MigrationPipeline
- Tests: CodeOnlyControlScaffoldingIssue549Tests (7 tests, 2 previously skipped now passing)
FritzAndFriends#550 - Namespace-level tag prefix registrations (skeleton complete)
- LocalTagNamespaceResolutionTransform: new IMarkupTransform (Order=595)
- Strips namespace-bound prefixes (local:, uc: from namespace=) to bare component names
- Skips asp: and ajaxToolkit: (handled by dedicated transforms)
- Self-closing and block element forms both handled
- MigrationContext.CustomControlPrefixToNamespace: populated from WebConfigAssemblyParser
- FileMetadata.CustomControlPrefixToNamespace: passed through to transforms
- Registered in Program.cs (DI) and TestHelpers.cs (CreateDefaultPipeline)
- Tests: LocalTagNamespaceResolutionTransformTests (7 tests)
Test results: 905 passed, 1 skipped (pre-existing), 0 failed (up from 890 baseline)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Scribe: Merge Beast doc remediation decisions + log session completion
- Merged 7 inbox decision files (Beast, Bishop, Colossus, Cyclops, Forge, Rogue)
- Cleared decisions/inbox/ after merge
- Created session log: .squad/log/2026-06-12-beast-doc-remediation.md
- decisions.md now includes all pending team decisions on:
* Dashboard scope alignment (52 → 61)
* Test coverage gaps and prioritization
* .aspx URL redirect pattern
* Component health scoring strategy
* WebFormsForm inheritance fix (FritzAndFriends#533)
* Gap execution roadmap
No co-author used per Scribe protocol (background agent, no user-facing commits).
* feat: Branch cleanup and PR preparation
- Discard untracked audit/remediation files
- Include new test components (StringSelectMethodPageCascade, BaseCompareValidatorPropertyTests, LegacyAspxUrlTests)
- Update Squad agent histories and decisions
- Update sample apps and acceptance tests
All tests passing: 3,038 unit tests + 329 Playwright acceptance tests.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 5ea0905 commit f1fc9fa
160 files changed
Lines changed: 3402 additions & 16158 deletions
File tree
- .ai-team
- agents
- bishop
- forge
- rogue
- .squad
- agents
- beast
- bishop
- colossus
- cyclops
- rogue
- dev-docs
- contoso-screenshots
- control-migration
- html-samples
- migration-tests/wingtiptoys/run93
- images
- milestones
- proposals
- proposed-issues
- screenshots
- docs
- planning-docs
- samples
- AfterBlazorServerSide.Tests
- AfterBlazorServerSide
- AfterContosoUniversity
- Components
- AfterWingtipToys
- Components
- Logic
- src
- BlazorWebFormsComponents.Cli
- Analysis
- Config
- Pipeline
- Scaffolding
- Transforms/Markup
- BlazorWebFormsComponents.Test
- DataBoundComponent
- Validations
- BlazorWebFormsComponents
- ContosoUniversity.AcceptanceTests
- WingtipToys.AcceptanceTests
- tests/BlazorWebFormsComponents.Cli.Tests
- Analysis
- Config
- Pipeline
- Scaffolding
- Transforms/Markup
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
0 commit comments