## Release review posts

This directory contains concise release-review posts for merged PR releases.

| Date | Title | Tags |
|------|-------|------|
| 2026-09-14 | [Rename squad-lint workflows to drop squad- prefix](2026-09-14-pr-218-rename-squad-lint-workflows-to-drop-squad-prefix.md) | release,automation |
| 2026-09-14 | [Bump outdated CodeQL and yamllint action pins](2026-09-14-pr-216-bump-outdated-codeql-and-yamllint-action-pins.md) | release,automation |
| 2026-09-08 | [chore(deps): bump github/codeql-action from 4.37.7 to 4.37.9 in the all-actions group](2026-09-08-pr-213-chore-deps-bump-github-codeql-action-from-4-37-7-to-4-37-9-in-the-all-actions-group.md) | release,automation |
| 2026-08-27 | [docs: document Auth0 factory thread-safety; remove superseded UserManagement tests](2026-08-27-pr-211-docs-document-auth0-factory-thread-safety-remove-superseded-usermanagement-tests.md) | release,automation |
| 2026-08-26 | [refactor: consolidate UserManagement request records into ManageRoles module](2026-08-26-pr-209-refactor-consolidate-usermanagement-request-records-into-manageroles-module.md) | release,automation |
| 2026-08-26 | [refactor: extract concurrency-bounded Auth0 role fan-out into its own module](2026-08-26-pr-207-refactor-extract-concurrency-bounded-auth0-role-fan-out-into-its-own-module.md) | release,automation |
| 2026-08-26 | [fix: UserManagement caching invalidation gap and N+1 Auth0 role calls](2026-08-26-pr-205-fix-usermanagement-caching-invalidation-gap-and-n-1-auth0-role-calls.md) | release,automation |
| 2026-08-26 | [docs: reconcile conflicting testing directive docs](2026-08-26-pr-203-docs-reconcile-conflicting-testing-directive-docs.md) | release,automation |
| 2026-08-26 | [feat: implement User role E2E smoke tests](2026-08-26-pr-192-feat-implement-user-role-e2e-smoke-tests.md) | release,automation |
| 2026-08-26 | [feat: implement Author role E2E smoke tests](2026-08-26-pr-190-feat-implement-author-role-e2e-smoke-tests.md) | release,automation |
| 2026-08-26 | [fix: close each E2E test's browser context to stop CI flake](2026-08-26-pr-188-fix-close-each-e2e-test-s-browser-context-to-stop-ci-flake.md) | release,automation |
| 2026-08-26 | [feat: implement Admin role E2E smoke tests](2026-08-26-pr-186-feat-implement-admin-role-e2e-smoke-tests.md) | release,automation |
| 2026-08-26 | [Add routed NotAuthorized/RedirectToLogin pages](2026-08-26-pr-184-add-routed-notauthorized-redirecttologin-pages.md) | release,automation |
| 2026-08-26 | [fix: compare GraphQL mergeable as string enum in auto-merge workflow](2026-08-26-pr-181-fix-compare-graphql-mergeable-as-string-enum-in-auto-merge-workflow.md) | release,automation |
| 2026-08-26 | [docs: document local Auth0 test-user setup for E2E tests](2026-08-26-pr-178-docs-document-local-auth0-test-user-setup-for-e2e-tests.md) | release,automation |
| 2026-08-25 | [Prototype authenticated Admin E2E login (wayfinder #159)](2026-08-25-pr-176-prototype-authenticated-admin-e2e-login-wayfinder-159.md) | release,automation |
| 2026-08-25 | [chore: add UserSecretsId to Web.E2E.Tests](2026-08-25-pr-174-chore-add-usersecretsid-to-web-e2e-tests.md) | release,automation |
| 2026-08-25 | [fix: harden Auth0 missing-config test against real env vars leaking through](2026-08-25-pr-171-fix-harden-auth0-missing-config-test-against-real-env-vars-leaking-through.md) | release,automation |
| 2026-08-25 | [ci: wire Auth0 role test-user secrets into squad-ci.yml](2026-08-25-pr-169-ci-wire-auth0-role-test-user-secrets-into-squad-ci-yml.md) | release,automation |
| 2026-08-25 | [docs: research Auth0 bot-detection risk for scripted E2E logins](2026-08-25-pr-166-docs-research-auth0-bot-detection-risk-for-scripted-e2e-logins.md) | release,automation |
| 2026-08-25 | [feat: raise article Content max length to 50000 and add dev chronicle doc](2026-08-25-pr-154-feat-raise-article-content-max-length-to-50000-and-add-dev-chronicle-doc.md) | release,automation |
| 2026-08-25 | [docs: add ManageRoles cache + background-refresh implementation plan](2026-08-25-pr-152-docs-add-manageroles-cache-background-refresh-implementation-plan.md) | release,automation |
| 2026-08-25 | [fix: image-upload content race and SignalR message size limit](2026-08-25-pr-146-fix-image-upload-content-race-and-signalr-message-size-limit.md) | release,automation |
| 2026-08-24 | [Backfill migration: populate ArticleImage for existing articles](2026-08-24-pr-144-backfill-migration-populate-articleimage-for-existing-articles.md) | release,automation |
| 2026-08-24 | [Parse Content into ArticleImage array on save, replace regex orphan detection](2026-08-24-pr-142-parse-content-into-articleimage-array-on-save-replace-regex-orphan-detection.md) | release,automation |
| 2026-08-24 | [feat: add ArticleImage array field to Article with Mongo OwnsMany mapping](2026-08-24-pr-140-feat-add-articleimage-array-field-to-article-with-mongo-ownsmany-mapping.md) | release,automation |
| 2026-08-24 | [docs: record ArticleImage array decision (ADR-0003)](2026-08-24-pr-138-docs-record-articleimage-array-decision-adr-0003.md) | release,automation |
| 2026-08-24 | [feat: add a dedicated article create page with image upload, optimization, and cleanup](2026-08-24-pr-132-feat-add-a-dedicated-article-create-page-with-image-upload-optimization-and-cleanup.md) | release,automation |
| 2026-08-24 | [test: add shared Web.TestData builders for Article/Category/Author test data](2026-08-24-pr-130-test-add-shared-web-testdata-builders-for-article-category-author-test-data.md) | release,automation |
| 2026-08-23 | [test: add UserManagementHandler integration tests against the real mediator pipeline](2026-08-23-pr-126-test-add-usermanagementhandler-integration-tests-against-the-real-mediator-pipeline.md) | release,automation |
| 2026-08-23 | [test: add CategoryFeatureHandler integration tests against the real mediator pipeline](2026-08-23-pr-124-test-add-categoryfeaturehandler-integration-tests-against-the-real-mediator-pipeline.md) | release,automation |
| 2026-08-23 | [test: add ArticleFeatureHandler integration tests against the real mediator pipeline](2026-08-23-pr-122-test-add-articlefeaturehandler-integration-tests-against-the-real-mediator-pipeline.md) | release,automation |
| 2026-08-23 | [test: add CategoryRepository integration tests against real MongoDB](2026-08-23-pr-120-test-add-categoryrepository-integration-tests-against-real-mongodb.md) | release,automation |
| 2026-08-23 | [test: add ArticleRepository integration tests against real MongoDB](2026-08-23-pr-118-test-add-articlerepository-integration-tests-against-real-mongodb.md) | release,automation |
| 2026-08-23 | [test: scaffold Web.Integration.Tests project with MongoDB TestContainers fixture](2026-08-23-pr-116-test-scaffold-web-integration-tests-project-with-mongodb-testcontainers-fixture.md) | release,automation |
| 2026-08-23 | [chore: closed-PR orphan detection, CA2007 suppression, CONTRIBUTING fix](2026-08-23-pr-107-chore-closed-pr-orphan-detection-ca2007-suppression-contributing-fix.md) | release,automation |
| 2026-08-23 | [fix: treat closed-unmerged PRs as immediate orphan-branch signal](2026-08-23-pr-105-fix-treat-closed-unmerged-prs-as-immediate-orphan-branch-signal.md) | release,automation |
| 2026-08-23 | [fix: enable PR auto-merge for all same-repo branches, not just squad/*](2026-08-23-pr-103-fix-enable-pr-auto-merge-for-all-same-repo-branches-not-just-squad.md) | release,automation |
| 2026-08-23 | [chore: add squad promote workflow and casting/identity scaffolding](2026-08-23-pr-101-chore-add-squad-promote-workflow-and-casting-identity-scaffolding.md) | release,automation |
| 2026-08-23 | [Add Articles/UserManagement features, mediator wiring, and squad workflow updates](2026-08-23-pr-99-add-articles-usermanagement-features-mediator-wiring-and-squad-workflow-updates.md) | release,automation |
| 2026-08-23 | [fix: add missing squad branch cleanup script, apply nightly automatically](2026-08-23-pr-97-fix-add-missing-squad-branch-cleanup-script-apply-nightly-automatically.md) | release,automation |
| 2026-08-22 | [test: add auth wiring coverage (closes #76)](2026-08-22-pr-95-test-add-auth-wiring-coverage-closes-76.md) | release,automation |
| 2026-08-22 | [test: add UserManagementCacheService coverage (closes #77)](2026-08-22-pr-93-test-add-usermanagementcacheservice-coverage-closes-77.md) | release,automation |
| 2026-08-22 | [test: add MyMediator.Unit coverage (closes #78)](2026-08-22-pr-91-test-add-mymediator-unit-coverage-closes-78.md) | release,automation |
| 2026-08-22 | [test: add Category.Empty regression coverage (closes #79)](2026-08-22-pr-89-test-add-category-empty-regression-coverage-closes-79.md) | release,automation |
| 2026-08-22 | [test: deepen Profile coverage (closes #81)](2026-08-22-pr-87-test-deepen-profile-coverage-closes-81.md) | release,automation |
| 2026-08-22 | [test: deepen RedirectToLogin coverage (closes #82)](2026-08-22-pr-85-test-deepen-redirecttologin-coverage-closes-82.md) | release,automation |
| 2026-08-22 | [test: expand ManageRoles coverage (closes #80)](2026-08-22-pr-83-test-expand-manageroles-coverage-closes-80.md) | release,automation |
| 2026-08-22 | [style: pill-shaped buttons and inputs on Articles/Categories pages](2026-08-22-pr-73-style-pill-shaped-buttons-and-inputs-on-articles-categories-pages.md) | release,automation |
| 2026-08-22 | [Redesign CategoriesPage to match ArticlesPage](2026-08-22-pr-71-redesign-categoriespage-to-match-articlespage.md) | release,automation |
| 2026-08-22 | [fix: authenticate release-notes PR creation with a PAT instead of GITHUB_TOKEN](2026-08-22-pr-69-fix-authenticate-release-notes-pr-creation-with-a-pat-instead-of-github-token.md) | release,automation |
| 2026-08-22 | [Delete .github/workflows/squad-release-blog.yml](2026-08-22-pr-67-delete-github-workflows-squad-release-blog-yml.md) | release,automation |
| 2026-08-22 | [Delete .github/workflows/squad-milestone-release.yml](2026-08-22-pr-64-delete-github-workflows-squad-milestone-release-yml.md) | release,automation |
| 2026-08-22 | [Delete .github/workflows/squad-milestone-release-decision.yml](2026-08-22-pr-62-delete-github-workflows-squad-milestone-release-decision-yml.md) | release,automation |
| 2026-08-22 | [Delete .github/workflows/squad-milestone-blog.yml](2026-08-22-pr-61-delete-github-workflows-squad-milestone-blog-yml.md) | release,automation |
| 2026-08-22 | [Delete .github/workflows/squad-blog-readme-sync.yml](2026-08-22-pr-59-delete-github-workflows-squad-blog-readme-sync-yml.md) | release,automation |
| 2026-08-22 | [Switch article routes to slugs, replace category delete with archive](2026-08-22-pr-57-switch-article-routes-to-slugs-replace-category-delete-with-archive.md) | release,automation |
| 2026-08-22 | [Slug-based article routes, category archive, and E2E test scaffolding](2026-08-22-pr-55-slug-based-article-routes-category-archive-and-e2e-test-scaffolding.md) | release,automation |
| 2026-08-21 | [fix: repair release workflow's validation dispatch loop](2026-08-21-pr-53-fix-repair-release-workflow-s-validation-dispatch-loop.md) | release,automation |
| 2026-08-21 | [fix: finish issue #32 - real QuickGrid, glossary, idempotency tests, seed data](2026-08-21-pr-51-fix-finish-issue-32-real-quickgrid-glossary-idempotency-tests-seed-data.md) | release,automation |
| 2026-08-21 | [feat: add archiving, search, and column filters to Articles list (#38)](2026-08-21-pr-49-feat-add-archiving-search-and-column-filters-to-articles-list-38.md) | release,automation |
| 2026-08-21 | [feat: add Articles list header, create panel, and core grid](2026-08-21-pr-47-feat-add-articles-list-header-create-panel-and-core-grid.md) | release,automation |
| 2026-08-21 | [feat: add Article edit page (#36)](2026-08-21-pr-44-feat-add-article-edit-page-36.md) | release,automation |
| 2026-08-21 | [feat: extract shared ArticleForm component (#33)](2026-08-21-pr-43-feat-extract-shared-articleform-component-33.md) | release,automation |
| 2026-08-21 | [feat: add Article archiving domain, commands, and authorization](2026-08-21-pr-39-feat-add-article-archiving-domain-commands-and-authorization.md) | release,automation |
| 2026-08-21 | [fix: run required Build Solution check on docs-only PRs](2026-08-21-pr-29-fix-run-required-build-solution-check-on-docs-only-prs.md) | release,automation |
| 2026-08-21 | [docs: backfill v0.1.9 release blog](2026-08-21-pr-25-docs-backfill-v0-1-9-release-blog.md) | release,automation |
| 2026-08-21 | [Articles v0.1.9: Release Blog Backfill and Branch-Protected Docs Automation](2026-08-21-v0.1.9-release-docs-branch-protection.md) | release-notes, github-actions, branch-protection, automation, changelog |
| 2026-08-20 | [Articles v0.1.8: Test Coverage Expansion and Build Cleanup](2026-08-20-v0.1.8-test-coverage-expansion.md) | unit-tests, coverage, file-storage, text-editor, mediator, build-warnings |
| 2026-08-20 | [Articles v0.1.7: Code Coverage Tooling and Analysis Cleanup](2026-08-20-v0.1.7-code-coverage-analysis-warnings.md) | code-coverage, dotcover, static-analysis, code-quality, warnings |
| 2026-08-20 | [Articles v0.1.6: Populate Article Author from Logged-In User](2026-08-20-v0.1.6-author-from-logged-in-user.md) | auth0, authorization, user-context, security |
| 2026-08-20 | [Articles v0.1.5: Custom Mediator Pipeline and Navigation Links](2026-08-20-v0.1.5-custom-mediator-navigation.md) | mediator, pipeline, navigation, blazor, middleware |
| 2026-08-20 | [Articles v0.1.4: Article and Category Management Features](2026-08-20-v0.1.4-article-category-management.md) | crud, blazor, mediator, cqrs, management-ui |
| 2026-08-20 | [Articles v0.1.3: UI Test Reorganization and Demo Cleanup](2026-08-20-v0.1.3-ui-test-reorganization.md) | bunit, ui-tests, test-organization, cleanup, refactoring |
| 2026-08-19 | [Articles v0.1.2: Blog Post Documentation](2026-08-19-v0.1.2-blog-post-documentation.md) | blog, documentation, release-notes, changelog |
| 2026-08-19 | [Articles v0.1.1: MongoDB Data Layer Implementation](2026-08-19-v0.1.1-mongodb-data-layer.md) | mongodb, data-access, repository-pattern, entity-framework, tdd |
| 2026-08-19 | [Articles v0.1.0: Domain Refactoring Complete](2026-08-19-v0.1.0-domain-refactoring.md) | domain-driven-design, refactoring, vertical-slices, clean-architecture, testing |
| 2026-08-19 | [Articles v0.0.6: Domain Refactoring Preparation](2026-08-19-v0.0.6-domain-refactoring-prep.md) | architecture, domain-design, refactoring, redis, aspire |
| 2026-08-18 | [Articles v0.0.5: Auth0 Integration and Stability](2026-08-18-v0.0.5-auth0-integration.md) | auth0, authentication, security, testing, stability |
| 2026-08-17 | [Articles v0.0.4: Theme Management Testing](2026-08-17-v0.0.4-testing-expansion.md) | unit-tests, blazor, theme-management, web-testing |
| 2026-08-16 | [Articles v0.0.3: CI Coverage Report Discovery](2026-08-16-v0.0.3-ci-improvements.md) | ci-cd, code-coverage, codecov, testing |
| 2026-08-16 | [Articles v0.0.2: Enhanced Project Validation](2026-08-16-v0.0.2-project-validation.md) | validation, ci-cd, quality-gates |
| 2026-08-16 | [Articles v0.0.1: Initial Setup and Foundation](2026-08-16-v0.0.1-initial-setup.md) | initial-release, codeql, dependabot, project-setup |
