Skip to content

Commit b63b6ff

Browse files
csharpfritzCopilot
andcommitted
docs(ai-team): ContosoUniversity onboarding session log and decisions
Session: 2026-03-08-contoso-onboarding-complete Requested by: Jeff Fritz Changes: - Logged session to .ai-team/log/2026-03-08-contoso-onboarding-complete.md - Merged 2 decision(s) from inbox (Rogue, Colossus) - Propagated updates to affected agent histories (Cyclops, Colossus, Rogue, Forge) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 4065cc5 commit b63b6ff

6 files changed

Lines changed: 39 additions & 25 deletions

File tree

.ai-team/agents/colossus/history.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,4 +132,5 @@ Set up the ContosoUniversity ASP.NET Web Forms sample project for local developm
132132

133133
- Screenshots: `dev-docs/contoso-screenshots/` (5 PNG files)
134134
- Setup guide: `dev-docs/contoso-university-setup.md`
135-
- Commit: `ce2e90fc` on `squad/audit-docs-perf`
135+
- Commit: `ce2e90fc` on `squad/audit-docs-perf`
136+
Team update (2026-03-08): ContosoUniversity acceptance test patterns partial ID selectors, cascading fallbacks, CONTOSO_BASE_URL env var decided by Rogue

.ai-team/agents/cyclops/history.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,4 +121,7 @@ The `-TestMode` switch redirected all output to a `Layer2Output/` subdirectory i
121121
**Key learning:** When CheckBox and RadioButton are in the same family, their HTML structure should match. RadioButton already had the span wrapper — CheckBox was the inconsistency.
122122

123123

124-
Team update (2026-03-08): Second sample project will be purpose-built 'EventManager' Control Gallery targeting ~12-15 pages with controls WingtipToys doesn't cover decided by Forge
124+
Team update (2026-03-08): Second sample project will be purpose-built 'EventManager' Control Gallery targeting ~12-15 pages with controls WingtipToys doesn't cover decided by Forge
125+
Team update (2026-03-08): ContosoUniversity acceptance test patterns partial ID selectors, cascading fallbacks, CONTOSO_BASE_URL env var decided by Rogue
126+
127+
Team update (2026-03-08): ContosoUniversity local setup LocalDB connection strings, AjaxControlToolkit HintPath fix, NBGV block — decided by Colossus

.ai-team/agents/forge/history.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,4 +119,7 @@ Key learning: The Web Forms sample ecosystem is effectively dead — WingtipToys
119119
Key learning: `Microsoft.AspNetCore.Rewrite` regex rules operate on path only, not query string — this means query string preservation is automatic and free.
120120

121121

122-
Team update (2026-03-08): P0 HTML fidelity fixes complete CheckBox span wrapper, BaseValidator id/class, FormView CssClass. 1488 tests pass. decided by Cyclops, Forge
122+
Team update (2026-03-08): P0 HTML fidelity fixes complete CheckBox span wrapper, BaseValidator id/class, FormView CssClass. 1488 tests pass. decided by Cyclops, Forge
123+
Team update (2026-03-08): ContosoUniversity acceptance test patterns partial ID selectors, cascading fallbacks, CONTOSO_BASE_URL env var decided by Rogue
124+
125+
Team update (2026-03-08): ContosoUniversity local setup LocalDB connection strings, AjaxControlToolkit HintPath fix, NBGV block — decided by Colossus

.ai-team/agents/rogue/history.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,22 @@ Key patterns: Response event interception for network-level asset checks. `Evalu
9797

9898
Team update (2026-03-08): Migration-test reports use standalone `{project-name}-runNN.md` files (zero-padded). Old run folders are read-only archives. decided by Beast
9999

100+
### ContosoUniversity Acceptance Tests (2026-03-08)
101+
102+
**40 Playwright acceptance tests for ContosoUniversity Web Forms app:** Mirrors the WingtipToys.AcceptanceTests pattern exactly — same csproj structure, PlaywrightFixture, TestConfiguration, xUnit collection. 6 test classes covering all 5 pages + master page navigation.
103+
104+
- **NavigationTests (11):** Master page nav links present, each nav link navigates correctly (×5 Theory), all pages return HTTP 200 (×5 Theory).
105+
- **HomePageTests (4):** Page loads, welcome text, site branding, footer.
106+
- **AboutPageTests (5):** Page loads, title text, GridView renders as table, expected columns (Date + Count), data rows present.
107+
- **StudentsPageTests (9):** Full CRUD coverage — page load, GridView display, column headers, search by name, DetailsView details, add new student, edit student, delete student, clear button.
108+
- **CoursesPageTests (6):** Page load, department dropdown options, department filter, course columns, search with DetailsView, pagination.
109+
- **InstructorsPageTests (5):** Page load, GridView display, column headers, sort by click, sort toggle direction.
110+
111+
Key patterns: `[id*='...']` partial attribute selectors for Web Forms naming container resilience. `WaitForLoadStateAsync(LoadState.NetworkIdle)` for UpdatePanel AJAX. Fallback selectors (ID → container → generic table) for robustness. Dialog handler for delete confirmations. `CONTOSO_BASE_URL` env var (default `http://localhost:44380`).
112+
113+
Tests written proactively from page inventory — selectors may need minor tuning once app is running live. File: `src/ContosoUniversity.AcceptanceTests/`.
114+
100115

101116
Team update (2026-03-08): P0 HTML fidelity fixes complete CheckBox span wrapper, BaseValidator id/class, FormView CssClass. 1488 tests pass. decided by Cyclops, Forge
102-
Team update (2026-03-08): ASPX URL rewriting goes in migration-toolkit docs (RewriteOptions.AddRedirect snippet), not BWFC NuGet decided by Forge
117+
Team update (2026-03-08): ASPX URL rewriting goes in migration-toolkit docs (RewriteOptions.AddRedirect snippet), not BWFC NuGet decided by Forge
118+
Team update (2026-03-08): ContosoUniversity local setup LocalDB connection strings, AjaxControlToolkit HintPath fix, NBGV block — decided by Colossus

.ai-team/decisions.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6883,3 +6883,15 @@ The Layer 2 script (`bwfc-migrate-layer2.ps1`) introduced in Run 16 creates a ne
68836883
**By:** Forge
68846884
**What:** ASPX URL preservation should be a documented `RewriteOptions.AddRedirect` snippet in `migration-toolkit/METHODOLOGY.md` and `migration-toolkit/CHECKLIST.md`, not a NuGet-installable middleware in the BWFC library. Recommended code: `new RewriteOptions().AddRedirect(@"^(.+)\.aspx$", "$1", statusCode: 301)` placed before `app.UseRouting()`. Includes `Default.aspx → /` special case. Query strings are automatically preserved. 301 redirect preferred over transparent rewrite for SEO.
68856885
**Why:** URL rewriting is a migration infrastructure concern (~20 lines of code), not a Blazor component. It belongs in the migration toolkit as guidance developers understand, apply, and eventually remove. The BWFC NuGet package should remain focused on components. No existing NuGet package targets this use case. All five approaches were evaluated (RewriteOptions, custom middleware, IRule, @page directive, catch-all route) — RewriteOptions with AddRedirect is the simplest and most correct.
6886+
6887+
### 2026-03-08: ContosoUniversity Acceptance Test Patterns
6888+
6889+
**By:** Rogue
6890+
**What:** Created `src/ContosoUniversity.AcceptanceTests/` with 40 Playwright acceptance tests covering all 5 ContosoUniversity pages. Patterns: partial ID selectors (`[id*='...']`) for naming container resilience, cascading fallback selectors (specific container generic), `CONTOSO_BASE_URL` env var defaulting to `http://localhost:44380`, proactive test authoring from .aspx source analysis before live app.
6891+
**Why:** ContosoUniversity is the second sample app for migration validation. Acceptance tests for the original Web Forms app establish the quality baseline before Blazor migration begins.
6892+
6893+
### 2026-03-08: ContosoUniversity Local Setup Configuration
6894+
6895+
**By:** Colossus
6896+
**What:** Configured ContosoUniversity Web Forms sample for local development using IIS Express + LocalDB. Three source-level fixes: (1) connection strings changed from `.\SQLEXPRESS` to `(localdb)\MSSQLLocalDB` in Web.config, (2) AjaxControlToolkit HintPath updated to NuGet packages folder in .csproj, (3) empty `Directory.Build.props` at `samples/ContosoUniversity/` to block NBGV inheritance. All 5 pages verified with screenshots in `dev-docs/contoso-screenshots/`. Setup documented in `dev-docs/contoso-university-setup.md`.
6897+
**Why:** Sample project ships with assumptions about original developer's environment. These fixes make it reproducible on any machine with LocalDB and compatible MSBuild.

.ai-team/decisions/inbox/colossus-contoso-setup.md

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)