Aaron Po
fbede956e9
Fix seed pipeline crash and make seeding failures fail CI ( #309 )
2026-09-12 17:11:02 -04:00
Aaron Po
3793fca65e
Features/exceptions pipeline integration ( #308 )
2026-09-12 16:24:14 -04:00
Aaron Po
78d0eaa739
Move Infrastructure.Configuration into Configuration ( #291 )
2026-09-12 15:59:37 -04:00
Aaron Po
180ed41e68
Move Infrastructure.FileUpload into Features.PhotoUpload ( #290 )
2026-09-12 00:22:19 -04:00
Aaron Po
de63e9f216
Move Infrastructure.Email into Features.Emails ( #288 )
2026-09-11 23:46:04 -04:00
Aaron Po
7187631ebc
Move Infrastructure.Jwt into Features.Users ( #287 )
2026-09-11 23:14:30 -04:00
Aaron Po
5fa78fbdf6
Move Infrastructure.PasswordHashing into Features.Users ( #286 )
2026-09-11 22:21:22 -04:00
Aaron Po
f85ff79a2c
Move email templates into Features.Emails ( #283 )
2026-09-11 02:11:50 -04:00
Aaron Po
a3ec7d63f2
Add validator tests for brewery and user commands ( #282 )
2026-09-06 17:48:03 -04:00
Aaron Po
9d5a463d93
Rename auth feature to Features.Users ( #281 )
2026-09-06 01:23:51 -04:00
Aaron Po
d958933250
Replace shared email commands with MediatR notifications ( #280 )
2026-09-05 22:37:00 -04:00
Aaron Po
4aa7ba5d9b
Update doc comments in Features.Breweries source ( #279 )
2026-09-05 14:57:39 -04:00
Aaron Po
d9411eb00e
refactor(database): update seed pipeline to use dapper ( #277 )
2026-09-05 00:37:14 -04:00
Aaron Po
78ad32e93a
refactor(api-core): move service registration ( #275 )
2026-09-03 05:19:20 -04:00
Aaron Po
d6e176bcd9
Split dbo schema into per-domain SQL schemas ( #274 )
2026-09-02 22:23:30 -04:00
Aaron Po
cd0f33f603
Ci cd/test runner ( #268 )
2026-08-31 14:16:33 -04:00
Aaron Po
8b429be857
Enforce brewery ownership on update and delete ( #267 )
2026-08-31 13:37:17 -04:00
Aaron Po
49d7f860de
Fix RZ10012 razor warnings in email templates ( #266 )
2026-08-31 03:32:52 -04:00
Aaron Po
39c5a89ca7
Add user avatar and profile feature, consolidate Auth and UserManagement features ( #257 )
2026-08-31 00:11:48 -04:00
Aaron Po
ade2128a73
Switch Argon2 hashes to PHC string format ( #256 )
2026-08-30 03:53:54 -04:00
Aaron Po
be672b6ca9
Integrate SeaweedFS for S3-compatible file storage and photo upload ( #254 )
2026-08-29 23:37:11 -04:00
Aaron Po
a580314583
Add brewery discovery & detail pages with location-based search ( #253 )
2026-08-29 00:44:33 -04:00
fcee0f9213
Organise ddl statements into separate files per create table ( #251 )
2026-08-26 22:16:56 -04:00
4ca35de7ef
Integrate NetTopologySuite and create CoordinateData mapping ( #250 )
2026-08-26 01:10:09 -04:00
ad1c09f139
Move brewery reverse geocoding from C# seeding to C++ pipeline ( #249 )
2026-08-25 22:24:11 -04:00
2b82d1918b
Extract shared configuration helpers into Infrastructure.Configuration library ( #248 )
2026-08-25 14:16:57 -04:00
8a047e8d9f
Update database handling code ( #247 )
2026-08-25 13:42:51 -04:00
Aaron Po
b64c42ebde
formatting
2026-08-24 01:09:48 -04:00
c825d99b0a
Refactor comments and update documentation for backend and pipeline ( #246 )
...
* Remove restating comments in backend
* Remove restating comments in frontend stories
* Remove restating comments in pipeline
* Remove restating comments in pipeline scripts
* Restore location-clear comment in BreweryRepository
* Remove stale/restating comments found in second pass
* Restore mock curated-data branch comment in main.cc
* Remove more restating/filler comments in backend
* Document account-management endpoints, compose files, and env generator
* Squashed commit of the following:
commit a8a5b8abd9969859c695092fae6990d03b2135ed
Author: Aaron Po <aaron.po97@gmail.com >
Date: Sun Aug 23 23:53:56 2026 -0400
Add reverse geocoding for brewery street addresses (#245 )
* Add geocoding to seed application, remove postal codes from generator
Update comments
* Update pipeline class diagram for OpenAI generator
* Update pipeline activity diagram for brewery coordinates and OpenAI backend
* Add mailpit, production, db-only, and minimal environments to deployment diagram
* Fix authentication flow diagram for Identity migration
* Add account-management flows to authentication diagram
* Fix database schema diagram note referencing removed AuthRepository
2026-08-24 01:09:48 -04:00
cd5fd2d998
Add reverse geocoding for brewery street addresses ( #245 )
...
* Add geocoding to seed application, remove postal codes from generator
Update comments
2026-08-24 01:09:48 -04:00
e738fe484a
Update generate pipeline to add OpenAI api as an additional backend (for comparison testing), add brewery coordinates ( #244 )
...
* add brewery coordinates
* Add openai mode
* Add coordinates to schema
* Fix C++ review findings in pipeline: k-prefixed enum values, include ordering, populated validation error messages, conventional const notation, and endl replaced with newline
2026-08-24 01:09:48 -04:00
31da1d557c
Handle fetch fail in client app, fix data binding in location data ( #243 )
...
* Improve error handling for server rendered routes
* Fix data binding issue for country/state codes (use alias in sql)
2026-08-24 01:09:48 -04:00
bfd45842fe
Refactor authentication and account management with modular UI components ( #242 )
2026-08-24 01:09:48 -04:00
Aaron Po
6a44afd6b6
Replace raw environment variable reads with IConfiguration in backend
2026-08-24 01:09:48 -04:00
Aaron Po
c380bebdd6
Add self-service account management commands (delete, update username/email/password/profile)
2026-08-24 01:09:48 -04:00
Aaron Po
93e0d089f9
Remove obsolete AuthRepository/IAuthRepository
2026-08-24 01:09:47 -04:00
Aaron Po
77c3407792
Migrate Database.Seed to UserManager<ApplicationUser>
2026-08-24 01:09:47 -04:00
Aaron Po
fe83c47e37
Migrate TokenService.RefreshTokenAsync to UserManager
...
Last remaining IAuthRepository call site; RefreshTokenResult now
carries a plain (Guid, string) instead of UserAccount.
2026-08-24 01:09:47 -04:00
Aaron Po
63d195ddf7
Migrate handlers to UserManager<>
2026-08-24 01:09:47 -04:00
Aaron Po
f06f4bf3a9
Wire ASP.NET Core Identity DI alongside existing AuthRepository
...
Both stacks coexist until handlers are migrated one by one.
2026-08-24 01:09:47 -04:00
Aaron Po
3c0ca485b8
Decouple ITokenService from UserAccount entity
...
Token generation only ever needed the id/username, not the full UserAccount.
2026-08-24 01:09:47 -04:00
Aaron Po
1a7267ca4a
Add ApplicationUser, DapperUserStore, Argon2PasswordHasher scaffolding
...
Unwired Identity store/hasher adapters, ahead of wiring them into DI.
2026-08-24 01:09:47 -04:00
Aaron Po
b61a440994
Delete report.sarif
2026-08-24 01:09:47 -04:00
Aaron Po
f433b21bc1
Fix code analysis warnings
2026-08-24 01:09:47 -04:00
1031a76099
Create launchSettings.json ( #239 )
2026-08-24 01:09:47 -04:00
df160f1f72
Web/backend/solution rename ( #238 )
...
* Rename solution
* Remove unused item group in API.Core
2026-08-24 01:09:47 -04:00
de1e9ac02b
Migrate Auth/Brewery/Location repositories to pure Dapper; rename Timer to RowVersion ( #237 )
...
* Integrate Spectre.Console into seed application, use async data loading
* Replace stored-procedure repositories with Dapper-based repositories
Removes the USP_* stored procedures for Auth, Location, and Brewery
data access in favour of services built with Dapper.
Adds a new Features.Locations slice and optimistic concurrency support
for the Brewery slice.
* Add new documentation for Dapper migration/database schema
* Update FluentAssertions to most recent open source ver
* Update XML doc comment in backend projects
* Modify brewery location dto to include denormalized data
* - Updated column names from 'Timer' to 'RowVersion' in schema.sql for
- Introduced new BeerPost entity and updated BreweryPost and BreweryPostLocation entities to use 'RowVersion' for concurrency.
- Modified UserAccount, UserCredential, UserVerification, City, StateProvince, and Country entities to use 'RowVersion' instead of 'Timer'.
- Updated tests and command handlers to reflect changes in concurrency token from 'Timer' to 'RowVersion'.
- Adjusted BreweryDto and BreweryDtoMapper to include 'RowVersion' and updated mapping logic accordingly.
- Ensured all repository methods and interfaces are aligned with the new concurrency handling approach.
* updates
* Add BeerStyle entity and related properties; refactor BreweryDto to remove BeerPosts
* Fix Api.Specs test failures: stale Timer column refs and missing test.user fixture
* Remove repository tests, usages of registration dto used in repo
* archive old stored procs/functions
* update stale docs
* Add instructions for generating cryptographically secure base64 secrets on macOS/Linux and Windows
2026-08-24 01:09:47 -04:00
Aaron Po
30cdb48491
remove comment
2026-08-24 01:09:47 -04:00
Aaron Po
37667db2f6
Format
2026-08-24 01:09:47 -04:00
Aaron Po
f665df578c
update backend/shared docs
2026-08-24 01:09:47 -04:00