Skip to content
Merged

Test #2205

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
340 commits
Select commit Hold shift + click to select a range
ed48260
AB#32297 move dev prompt view state out of components
jacobwillsmith Mar 12, 2026
17a0a2b
AB#31677 sonarQube cleanup
AndreGAot Mar 12, 2026
27fb63f
Merge branch 'dev' into feature/AB#32212-RegressionTestsApprovalFlow
Mar 12, 2026
f25da77
fixing the attachment
Mar 12, 2026
198f465
Merge pull request #2119 from bcgov/dev
JamesPasta Mar 12, 2026
bd9c3f0
AB#31677 codeQL fixes
AndreGAot Mar 12, 2026
9b3ca50
AB#32297 move prompt tooling into dedicated dev tab
jacobwillsmith Mar 12, 2026
20af7f2
AB#31677 more codeQL
AndreGAot Mar 12, 2026
4cc34a7
AB#32297 polish dev tab prompt actions and section order
jacobwillsmith Mar 12, 2026
30a2482
AB#32297 share prompt data payload shaping across AI flows
jacobwillsmith Mar 13, 2026
9441a67
AB#32297 tighten and consolidate v1 prompt rules
jacobwillsmith Mar 13, 2026
91d7442
AB#32297 polish dev prompt capture UI and actions
jacobwillsmith Mar 13, 2026
e28d148
AB#32297 Filter AI prompt data by form schema
jacobwillsmith Mar 13, 2026
290e4d3
AB#32297 Refine v1 AI prompt instructions
jacobwillsmith Mar 13, 2026
f6f6205
AB#32297 Fix AI button loading spacing
jacobwillsmith Mar 13, 2026
c68fa53
AB#32297 Update AI action labels and indicator color
jacobwillsmith Mar 13, 2026
72b8f49
AB#32297 Remove trailing blank lines
jacobwillsmith Mar 13, 2026
eb9fc9e
AB#32297 Reduce formatting-only diff noise
jacobwillsmith Mar 13, 2026
d3d56d9
AB#32297 Address Sonar cleanup findings
jacobwillsmith Mar 13, 2026
e160ba9
AB#28800 - portal payment info, and cleanup docs
AndreGAot Mar 13, 2026
fc1fef8
Merge pull request #2124 from bcgov/feature/AB#32297-DevPromptVersion…
JamesPasta Mar 13, 2026
1b0c5c4
Merge pull request #2123 from bcgov/feature/AB#31677-portal-mq-integr…
JamesPasta Mar 13, 2026
cfb58c5
Merge remote-tracking branch 'origin/dev' into feature/AB#28800-porta…
AndreGAot Mar 13, 2026
5fa79e1
AB#32297 Remove unused Sonar leftovers
jacobwillsmith Mar 13, 2026
4ae3b93
Merge pull request #2125 from bcgov/feature/AB#32297-DevPromptVersion…
JamesPasta Mar 13, 2026
da2d449
Added the setting from maskMoney's library of "allowZero" to the inpu…
DavidBrightBcGov Mar 13, 2026
541259b
AB#28800 reduce logging and inbox/outbox cleanup time
AndreGAot Mar 13, 2026
6102a54
AB#28800 codeQL suggestions
AndreGAot Mar 13, 2026
4c1d89c
fixing copilot reviews
Mar 13, 2026
e7b9258
Merge pull request #2126 from bcgov/feature/AB#28800-portal-payments
AndreGAot Mar 13, 2026
5bed15c
Merge pull request #2128 from bcgov/dev
JamesPasta Mar 13, 2026
4376a3d
AB#32338 support pptx attachment text extraction
jacobwillsmith Mar 16, 2026
80137cb
AB#32338 fix pptx extraction nullable warning
jacobwillsmith Mar 16, 2026
c21ab3e
AB#32339 align AI scoring flow and review actions
jacobwillsmith Mar 16, 2026
6d61eea
AB#32339 align AI auth and prompt capture controls
jacobwillsmith Mar 16, 2026
cd96d53
AB#32339 normalize AI prompt posture and guardrails
jacobwillsmith Mar 16, 2026
bc8e3c8
AB#32339 fix prompt capture permission checker wiring
jacobwillsmith Mar 16, 2026
4140b12
AB#32338 simplify bounded pdf and docx extraction loops
jacobwillsmith Mar 16, 2026
02bf6af
AB#32339 fix assessment scores widget test wiring
jacobwillsmith Mar 16, 2026
ab1ff1f
AB#32339 simplify AI gate flags on grant details page
jacobwillsmith Mar 16, 2026
40513d1
feature/AB#28656-ProjectDates
JamesPasta Mar 16, 2026
83fd4d6
AB#32339 simplify review list button group arrays
jacobwillsmith Mar 16, 2026
74a15e8
Merge pull request #2131 from bcgov/feature/AB#32338-pptx-attachment-…
JamesPasta Mar 16, 2026
6ae69cd
Merge pull request #2130 from bcgov/feature/AB#32339-align-ai-scoring…
JamesPasta Mar 16, 2026
7049f22
Merge pull request #2132 from bcgov/feature/AB#28656-ProjectDates
JamesPasta Mar 16, 2026
e6564df
feature/AB#28656-ProjectDates-sonar issues
JamesPasta Mar 16, 2026
8bd08d1
Merge pull request #2133 from bcgov/feature/AB#28656-ProjectDates
JamesPasta Mar 16, 2026
2d586c6
feature/AB#32037-AddInAgents
JamesPasta Mar 16, 2026
4ed340e
Merge pull request #2134 from bcgov/feature/AB#32037-AddInAgents
JamesPasta Mar 16, 2026
18a29ff
AB#32006 Add generic AI retry and output shape validation
jacobwillsmith Mar 16, 2026
4a843e0
AB#32006 Fix scoresheet retry validation for section object payload s…
jacobwillsmith Mar 7, 2026
82e3d83
AB#32006 Address Sonar loop/value and HashSet parameter suggestions
jacobwillsmith Mar 7, 2026
ee8db04
AB#32006 Refactor scoresheet value-kind validation to LINQ predicate
jacobwillsmith Mar 7, 2026
7705947
AB#32006 extract AI response validation helpers
jacobwillsmith Mar 16, 2026
19e1be9
AB#32006 remove unused validator import
jacobwillsmith Mar 12, 2026
e0f7047
Merge pull request #2135 from bcgov/dev
JamesPasta Mar 16, 2026
3a6a750
AB#32006 refactor AI retry flow to typed outcomes
jacobwillsmith Mar 16, 2026
33c666b
AB#32006 make AI token limit parameter configurable
jacobwillsmith Mar 16, 2026
6198c05
AB#32006 capture AI provider responses and operation defaults
jacobwillsmith Mar 16, 2026
fa997fc
AB#32006 standardize reviewer-facing AI prompt wording
jacobwillsmith Mar 16, 2026
ad3176d
AB#32006 simplify prompt capture output and legacy config fallback
jacobwillsmith Mar 17, 2026
b96eab7
AB#32006 tighten prompt capture output formatting
jacobwillsmith Mar 17, 2026
c40f727
AB#32006 update development AI config template
jacobwillsmith Mar 17, 2026
a115502
AB#32006 clean up AI profile and URL resolution
jacobwillsmith Mar 17, 2026
d0e30a4
AB#32006 finalize AI config and reviewer prompt rules
jacobwillsmith Mar 17, 2026
b34ea96
AB#31482: Merge Duplicate Applicants Initial Draft
aurelio-aot Mar 17, 2026
00eee63
AB#31482: Flag IsDuplicated Applicant in Merge Modal Dialog Box
aurelio-aot Mar 17, 2026
ca4ac8f
Merge pull request #2121 from bcgov/feature/AB#32006-AIRetryAndOutput…
JamesPasta Mar 17, 2026
f657dae
Merge pull request #2139 from bcgov/dev
JamesPasta Mar 17, 2026
ed57e81
AB#31482: Summary Badge for Not/Partial/100% Matched Names
aurelio-aot Mar 17, 2026
34cd8ef
AB#31482: Fix sonarqube issue
aurelio-aot Mar 17, 2026
b089922
AB#29602
DavidBrightBcGov Mar 17, 2026
c801c39
Merge pull request #2140 from bcgov/bugfix/AB#32103-cannot-set-approv…
DavidBrightBcGov Mar 17, 2026
39b74c0
AB#31482: Fix sonarqube issues
aurelio-aot Mar 17, 2026
165a67f
AB#29602
DavidBrightBcGov Mar 17, 2026
6bf13fd
Merge pull request #2141 from bcgov/bugfix/AB#29602-currency-formatti…
DavidBrightBcGov Mar 17, 2026
32b1247
feature/AB#32325-BackgroundJobAuditing
JamesPasta Mar 18, 2026
724621c
Merge pull request #2138 from bcgov/feature/AB#31482-Applicant-Dedupl…
JamesPasta Mar 18, 2026
6f2bacb
AB#29259
DavidBrightBcGov Mar 18, 2026
d695998
AB#32012 move AI files into concern folders
jacobwillsmith Mar 18, 2026
1a48664
AB#32012 rename AI runtime and operation files
jacobwillsmith Mar 18, 2026
44891b4
AB#32012 extract attachment AI orchestration and align runtime types
jacobwillsmith Mar 18, 2026
7a0401f
AB#32012 align AI action gating across review surfaces
jacobwillsmith Mar 18, 2026
3dda503
AB#32012 detach AI generation into background jobs
jacobwillsmith Mar 18, 2026
926dfa0
AB#32012 restore attachment AI controls
jacobwillsmith Mar 18, 2026
d864f97
AB#32012 clarify queued AI action messaging
jacobwillsmith Mar 18, 2026
265e171
Merge branch 'dev' into feature/AB#32212-RegressionTestsApprovalFlow
Mar 18, 2026
dccef3d
fixing the bugs
Mar 18, 2026
211f317
feature/AB#32325-BackgroundJobAuditing
JamesPasta Mar 18, 2026
a053ada
AB#29259
DavidBrightBcGov Mar 18, 2026
f25015a
comment details
Mar 18, 2026
d2e7089
Merge pull request #2142 from bcgov/feature/AB#32325-AddInBacgroundJo…
JamesPasta Mar 18, 2026
eee5b4b
Merge branch 'dev' into bugfix/AB#29259-declining-requiring-amount
DavidBrightBcGov Mar 18, 2026
ef21219
feature/AB#32325-BackgroundJobAuditing-Sonar
JamesPasta Mar 18, 2026
3fbd725
Merge pull request #2144 from bcgov/feature/AB#32325-AddInBacgroundJo…
JamesPasta Mar 18, 2026
2805728
Merge pull request #2145 from bcgov/dev
JamesPasta Mar 18, 2026
54eabfa
feature/AB#32325-BackgroundJobAuditing-FixUsers
JamesPasta Mar 19, 2026
22cd108
Merge pull request #2146 from bcgov/feature/AB#32325-AddInBacgroundJo…
JamesPasta Mar 19, 2026
843af33
Merge pull request #2147 from bcgov/dev
JamesPasta Mar 19, 2026
c4cd544
AB#32012 remove AI prompt capture pipeline
jacobwillsmith Mar 19, 2026
2fa8376
AB#32012 add AI content orchestration endpoint
jacobwillsmith Mar 19, 2026
d4b1877
AB#32012 show persisted AI outputs in dev panel
jacobwillsmith Mar 19, 2026
0720d9d
AB#32012 rename AI operation files for standardized naming
jacobwillsmith Mar 19, 2026
ff30f9b
AB#32012 align AI backend naming with standardized operations
jacobwillsmith Mar 19, 2026
30a09b9
AB#32012 align AI action naming across web surfaces
jacobwillsmith Mar 19, 2026
36e7ca6
AB#32012 refine AI dev panel outputs
jacobwillsmith Mar 19, 2026
bd0f646
AB#32012 fix AI orchestration follow-up issues
jacobwillsmith Mar 19, 2026
4d40b5a
AB#28800 update payment number mapping
AndreGAot Mar 19, 2026
7e0a1c8
AB#28800 fix unit tests for updated mapping
AndreGAot Mar 19, 2026
fbaeaf4
AB#28800 codeQL suggestion
AndreGAot Mar 19, 2026
709dbd2
Merge pull request #2148 from bcgov/feature/AB#28800-portal-payments
AndreGAot Mar 19, 2026
59432a5
Adding conditional for PROD not to run approval flow
Mar 19, 2026
6251996
AB#31482: Make IsDuplicated of Applicant Non-Nullable
aurelio-aot Mar 19, 2026
4b7320a
AB#29602
DavidBrightBcGov Mar 19, 2026
39af4ac
AB#29602
DavidBrightBcGov Mar 19, 2026
4eaa0f0
Reloading value fix to adjust decimal issue
DavidBrightBcGov Mar 19, 2026
46b70a4
feature/AB#32212 - A fix for the CHEFS api call
Stephan-McColm Mar 19, 2026
8020bba
Applied sonarqube requirements
DavidBrightBcGov Mar 19, 2026
e472fa5
Merge pull request #2127 from bcgov/feature/AB#32212-RegressionTestsA…
DarylTodosichuk Mar 19, 2026
d3e6972
Merge pull request #2150 from bcgov/bugfix/AB#29602-payment-threshold…
DavidBrightBcGov Mar 20, 2026
ec45f07
AB#24672: Add Email Attachments Initial Draft
aurelio-aot Mar 20, 2026
6f34176
AB#24672: Cleanup code
aurelio-aot Mar 20, 2026
d2a9c7e
feature/AB#32325-BackgroundJobAuditing-FixUsers
JamesPasta Mar 20, 2026
3d2c2dd
Merge pull request #2153 from bcgov/feature/AB#32325-AddInBacgroundJo…
JamesPasta Mar 20, 2026
86d4677
Merge pull request #2154 from bcgov/dev
JamesPasta Mar 20, 2026
0d04c1e
AB#24672: Fix sonarqube issues
aurelio-aot Mar 20, 2026
f6695ca
AB#32012 align AI app service and DTO naming
jacobwillsmith Mar 20, 2026
1d5f5d7
AB#32012 align AI namespaces to folder structure
jacobwillsmith Mar 20, 2026
4aea07b
AB#32012 clean branch whitespace in AI changes
jacobwillsmith Mar 20, 2026
1bd3354
AB#24672: Scrollbar for email attachments table
aurelio-aot Mar 20, 2026
28a1a32
feature/AB#31226-LinkingSearch
JamesPasta Mar 20, 2026
0bf8e9b
AB#32012 restore attachment app service formatting
jacobwillsmith Mar 20, 2026
0f5ac53
AB#24672: Potential fix for code scanning alert no. 84: Exposure of …
aurelio-aot Mar 20, 2026
9d2f6e6
AB#24672: Potential fix for code scanning alert no. 85: Exposure of p…
aurelio-aot Mar 20, 2026
72fd3f7
AB#32012 improve AI background job failure handling
jacobwillsmith Mar 20, 2026
6ac63e4
AB#32012 move AI contract files into concern folders
jacobwillsmith Mar 20, 2026
fdd2ae0
AB#32012 align moved AI contract namespaces and imports
jacobwillsmith Mar 20, 2026
3094d8e
AB#32012 restore working AI application DTO contract
jacobwillsmith Mar 21, 2026
91bbbba
AB#30910 dynamic edit dg
AndreGAot Mar 23, 2026
bf26168
AB#30910 update for textarea and static field indicator
AndreGAot Mar 23, 2026
0038934
AB#30910 sonarQ cleanup
AndreGAot Mar 23, 2026
49c00ef
AB#30910 - more sq cleanup
AndreGAot Mar 23, 2026
06eae6d
AB#30910 codeQL feedback
AndreGAot Mar 23, 2026
ed7aeab
Adding l1 and l2 approval flow
Mar 24, 2026
3812541
AB#30910 sonarqube fix
AndreGAot Mar 24, 2026
f747c34
Merge pull request #2156 from bcgov/feature/AB#31226-LinkingSearch
JamesPasta Mar 24, 2026
dad6211
Merge pull request #2151 from bcgov/feature/AB#24672-add-email-attach…
JamesPasta Mar 24, 2026
727e99d
Merge pull request #2149 from bcgov/feature/AB#31482-Make-IsDuplicate…
JamesPasta Mar 24, 2026
353fbbf
Merge pull request #2143 from bcgov/bugfix/AB#29259-declining-requiri…
JamesPasta Mar 24, 2026
af6be00
AB#30910 sonarQube fix
AndreGAot Mar 24, 2026
1445669
Added SettingManagement.ConfigureAI permission.
hasanpour Mar 24, 2026
7a4e929
AB#31482: Transfer All Submissions to Principal Applicant Upon Merging
aurelio-aot Mar 24, 2026
450c406
Merge pull request #2155 from bcgov/feature/AB#30910-edit-dynamic-dg-…
JamesPasta Mar 24, 2026
52a7980
Merge pull request #2158 from bcgov/feature/AB#31482-Transfer-Submiss…
JamesPasta Mar 24, 2026
754c0fd
Merge branch 'dev' into feature/AB#32012-RefactorAIFlowOrchestration
jacobwillsmith Mar 24, 2026
3e2d4aa
AB#32012 clean AI review list UI and test follow-ups
jacobwillsmith Mar 24, 2026
e7cc729
Merge pull request #2157 from bcgov/dev
JamesPasta Mar 24, 2026
ab11cff
AB#32012 address AI sonar follow-ups and test feature toggles
jacobwillsmith Mar 24, 2026
de79d7a
AB#32012 remove unused chefs attachment variable
jacobwillsmith Mar 24, 2026
21b9845
AB#32012 update development AI config template
jacobwillsmith Mar 24, 2026
926824d
Seeded permission to ProgramManager and SystemAdmin roles
hasanpour Mar 25, 2026
5cb3a8f
Added AI setting backend
hasanpour Mar 25, 2026
ea2045f
Added AI setting UI
hasanpour Mar 25, 2026
8d539f4
AB#31470 radio button fixes for reporting
AndreGAot Mar 25, 2026
d6a5226
AB#32012 clean remaining AI sonar helpers
jacobwillsmith Mar 25, 2026
4379b2d
AB#32449 Remove secret like text from cypress README.md file
DarylTodosichuk Mar 25, 2026
81a6815
Merge pull request #2161 from bcgov/bugfix/AB#32449-github-detected-s…
DarylTodosichuk Mar 25, 2026
40ac9f6
Merge pull request #2159 from bcgov/feature/AB#32012-RefactorAIFlowOr…
jacobwillsmith Mar 25, 2026
32a0abb
Merge pull request #2160 from bcgov/bugfix/AB#31470-radio-btns-reporting
JamesPasta Mar 25, 2026
3c2da53
AB#32012 remove misleading AI dev output version label
jacobwillsmith Mar 25, 2026
4043af2
Merge pull request #2163 from bcgov/feature/AB#32012-RefactorAIFlowOr…
JamesPasta Mar 25, 2026
3707e27
Added AI Scoring setting check to existing handlers
hasanpour Mar 25, 2026
b080f86
AB#27730: Worksheet Deletion
aurelio-aot Mar 25, 2026
bb5efb1
feature/AB#32437-EditPrompts
JamesPasta Mar 25, 2026
b0af473
Merge branch 'dev' into feature/AB#32437-AIToDb
JamesPasta Mar 25, 2026
34822d9
AB#27730: Fix sonarqube issues
aurelio-aot Mar 25, 2026
939edc0
AB#27730: Fix sonarqube issue
aurelio-aot Mar 25, 2026
ede755b
Merge pull request #2166 from bcgov/feature/AB#32437-AIToDb
JamesPasta Mar 25, 2026
f3f78c9
feature/AB#32437-EditPrompts-Fixusing
JamesPasta Mar 25, 2026
ea4df76
Merge pull request #2167 from bcgov/feature/AB#32437-AIToDb
JamesPasta Mar 25, 2026
d85d6c0
Merge pull request #2165 from bcgov/feature/AB#27730-Worksheet-Deletion
JamesPasta Mar 25, 2026
858b034
AB#32012 fix review list AI scoring button gating
jacobwillsmith Mar 25, 2026
2326170
Merge pull request #2168 from bcgov/feature/AB#32012-RefactorAIFlowOr…
jacobwillsmith Mar 25, 2026
2904c24
[AB#32132] Merge dev and adapt setting checks to refactored AI pipeline
hasanpour Mar 25, 2026
80e2f39
feature/AB#32437-EditPrompts-FixDBMigration
JamesPasta Mar 25, 2026
6861f60
Merge pull request #2169 from bcgov/feature/AB#32437-AIToDb
JamesPasta Mar 25, 2026
be7d0de
Merge pull request #2162 from bcgov/dev
JamesPasta Mar 25, 2026
013e619
[AB#32132] Merge dev — resolve conflicts with AB#32437 (AI prompts to…
hasanpour Mar 26, 2026
1d91a95
AB#31159: Universal catch-all error page
aurelio-aot Mar 26, 2026
9ee17e0
AB#31159: Fix sonarqube issue
aurelio-aot Mar 26, 2026
4a0f8e9
AB#31159: Re-run sonarqube
aurelio-aot Mar 26, 2026
82dce4c
merge dev
Mar 26, 2026
c06cdfd
Adding support for l1 and l2
Mar 26, 2026
c213bee
Merge pull request #2171 from bcgov/feature/AB#32132-AI-Scoring-Assis…
JamesPasta Mar 26, 2026
d47d499
Merge pull request #2172 from bcgov/feature/AB#31159-Universal-Error-…
JamesPasta Mar 26, 2026
c2870a6
[AB#24939] Add filter buttons on file attachments
plavoie-BC Mar 26, 2026
3408366
adding co pilot review comments
Mar 26, 2026
7ffae30
Update applications/Unity.AutoUI/cypress/pages/ApplicationDetailsPage.ts
Stephan-McColm Mar 26, 2026
d1c7d6b
AB#32229 Log Token Counts for Scoring Assistant
hasanpour Mar 26, 2026
83b01c2
[AB#24939] Enable search for internal uploads
plavoie-BC Mar 26, 2026
f3267c7
fixing redundancy issue
Mar 26, 2026
3e0671d
AB#32012 increase AI token fallbacks
jacobwillsmith Mar 26, 2026
3922ffd
[AB#31673] Update payment action button states and reset logic
plavoie-BC Mar 26, 2026
816d7a2
[AB#31673] Add selection required constraint on check status action b…
plavoie-BC Mar 26, 2026
0c54ef8
Merge pull request #2173 from bcgov/feature/AB#32425-L1-L2ApprovalFlo…
DarylTodosichuk Mar 26, 2026
ed85d64
Merge pull request #2178 from bcgov/feature/AB#32012-RefactorAIFlowOr…
JamesPasta Mar 26, 2026
fa7fe43
Merge pull request #2176 from bcgov/feature/AB#32229-Log-Token-Counts…
JamesPasta Mar 26, 2026
2c0942f
[AB#32197] Implement RedStop restriction for application actions
plavoie-BC Mar 26, 2026
89fc31b
Merge remote-tracking branch 'origin/dev' into feature/AB#32197-redst…
plavoie-BC Mar 26, 2026
b7a07d9
AB#32445 submission fields provider updates
AndreGAot Mar 26, 2026
2cf6deb
[AB#32197] Add popover for Red-Stop restriction warning
plavoie-BC Mar 26, 2026
33f7bf5
[AB#32197] Rename IsApplicantRedStop to IsApplicantRedStopAsync
plavoie-BC Mar 26, 2026
6639218
Merge pull request #2180 from bcgov/feature/AB#32445-portal-submissio…
AndreGAot Mar 26, 2026
f4ecb51
AB#24672: Maximum attachment file size for single upload
aurelio-aot Mar 26, 2026
a3ebede
[AB#32197] Update RedStop warning message and tooltip logic
plavoie-BC Mar 26, 2026
65ffa8e
Merge pull request #2177 from bcgov/bugfix/AB#31673-payment-action-bu…
JamesPasta Mar 26, 2026
ee61e0f
[AB#32197] Refactor RedStop checks in application service and view
plavoie-BC Mar 26, 2026
d3b0b88
Merge remote-tracking branch 'origin/dev' into feature/AB#32197-redst…
plavoie-BC Mar 26, 2026
2ac26ae
AB#24672: File Upload Spinner and Progress Bar
aurelio-aot Mar 27, 2026
d51241c
[AB#32197] Update red-stop warning text
plavoie-BC Mar 27, 2026
7df06e8
AB#24672: Validation for total file sizes in email attachment
aurelio-aot Mar 27, 2026
3666da8
AB#24672: Environment variables for maximum email attachment file size
aurelio-aot Mar 27, 2026
cd60b73
AB#24672: Fix sonarqube issues
aurelio-aot Mar 27, 2026
12f1d47
Merge pull request #2181 from bcgov/feature/AB#24672-Email-Attachment…
JamesPasta Mar 27, 2026
ec60063
Merge pull request #2179 from bcgov/feature/AB#32197-redstop-restriction
JamesPasta Mar 27, 2026
bbd5481
Merge pull request #2174 from bcgov/feature/AB#24939-filter-attachments
JamesPasta Mar 27, 2026
3a7ab33
Merge pull request #2182 from bcgov/dev
JamesPasta Mar 27, 2026
98462ab
[AB#32347] Fix DataTable button default styling
plavoie-BC Mar 27, 2026
ff3a3fd
[AB#32347] Fix DataTable button default styling
plavoie-BC Mar 27, 2026
d3af6dd
[AB#31022] Fix email notification table x-overflow cutoff
plavoie-BC Mar 27, 2026
1fa8c81
[AB#32348] Fix datatables default classes
plavoie-BC Mar 27, 2026
40c50a8
[AB#28856] Reorder Additional Contact section in Applicant Info
plavoie-BC Mar 27, 2026
ab6cc54
Merge pull request #2183 from bcgov/bugfix/AB#32347-application-style…
JamesPasta Mar 27, 2026
8c8a593
[AB#32138] Ensure User Import grid is unique by UserGuid
plavoie-BC Mar 27, 2026
8ccde8e
Merge branch 'dev' into feature/AB#28856-group-contact-info
plavoie-BC Mar 27, 2026
ed16522
AB#32228 enrich AI token usage logging
jacobwillsmith Mar 27, 2026
df1a85b
AB#32228 simplify AI token usage log naming
jacobwillsmith Mar 27, 2026
35f1de4
AB#32228 rerun PR checks
jacobwillsmith Mar 27, 2026
0267a50
Merge pull request #2188 from bcgov/feature/AB#32228-LogTokenCountsFo…
JamesPasta Mar 27, 2026
2a15164
Merge pull request #2186 from bcgov/bugfix/AB#32138-user-import-dupli…
JamesPasta Mar 27, 2026
b25760f
Merge pull request #2185 from bcgov/feature/AB#28856-group-contact-info
JamesPasta Mar 27, 2026
03b48dc
Merge pull request #2189 from bcgov/dev
JamesPasta Mar 27, 2026
832eec2
feature/AB#32492-FundingYearIssueYearToText
JamesPasta Mar 30, 2026
e5ec916
Merge pull request #2196 from bcgov/feature/AB#32492-ApplicantInfoHis…
JamesPasta Mar 30, 2026
95b22de
Merge pull request #2197 from bcgov/dev
JamesPasta Mar 30, 2026
8e36dce
AB#32510: Hide Email Buttons When Email Form Is Not Visible
aurelio-aot Mar 30, 2026
5359709
Merge pull request #2198 from bcgov/bugfix/AB#32510-Email-buttons-Sho…
JamesPasta Mar 30, 2026
53a8e84
Merge pull request #2199 from bcgov/dev
JamesPasta Mar 30, 2026
a5e48ff
AB#32524: Funding History and Issue Tracking Bug
aurelio-aot Mar 31, 2026
fa1cbf4
Merge pull request #2203 from bcgov/hotfix/AB#32524-Funding-History-I…
JamesPasta Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
44 changes: 44 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Unity Portal – Copilot Instructions (Repository Root)

> This file is used by **Copilot on GitHub.com** (PR reviews, web chat). For local IDE instructions, see `applications/Unity.GrantManager/.github/copilot-instructions.md`.

## Project Summary

Unity is a **grant management portal** for the Province of British Columbia, built on **ABP Framework 9.1.3** with **.NET 9.0**, targeting **PostgreSQL 17**. The primary application code lives in `applications/Unity.GrantManager/`.

**Key stack:** .NET 9 · ABP 9.1.3 · EF Core 9.0 · PostgreSQL 17 · Redis · RabbitMQ · xUnit · Shouldly · NSubstitute · AutoMapper · Cypress (E2E)

## Repository Structure

```
applications/Unity.GrantManager/ ← Main .NET solution (developers open this)
applications/Unity.AutoUI/ ← Cypress E2E tests (TypeScript)
database/scripts/ ← SQL seed/migration scripts
documentation/ ← Technical docs
.github/workflows/ ← GitHub Actions CI/CD
```

## Key Conventions

- **ABP Framework** modular monolith with DDD layered architecture
- **AutoMapper** for DTO mapping (not Mapperly)
- **Razor Pages** UI with custom ABP theme (Unity.Theme.UX2)
- Multi-tenant architecture with separate host/tenant database contexts
- `dev` → `test` → `main` branch promotion flow
- PRs to `dev` from `feature/*`, `hotfix/*`, `bugfix/*`; PRs to `main` from `test` or `hotfix/*` only

## Build & Test (from `applications/Unity.GrantManager/`)

```bash
dotnet restore Unity.GrantManager.sln
dotnet build Unity.GrantManager.sln --no-restore
dotnet test Unity.GrantManager.sln --no-build
```

All PRs must pass `dotnet build` and `dotnet test` before merge. The CI runs all `*Tests.csproj` in a parallel matrix.

## Do NOT

- Use Mapperly patterns — this project uses AutoMapper
- Create repositories for child entities — only aggregate roots get repositories
- Put business logic in application services — use domain entities/services
6 changes: 3 additions & 3 deletions .github/workflows/docker-build-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
environment: dev
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Get short commitId
Expand Down Expand Up @@ -93,7 +93,7 @@ jobs:
actions: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Set repository version variables
Expand All @@ -112,7 +112,7 @@ jobs:
runs-on: ubuntu-latest
environment: dev
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Build Docker images
run: |
rm -f ./docker-compose.override.yml
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/docker-build-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
environment: main
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Get short commitId
Expand Down Expand Up @@ -93,7 +93,7 @@ jobs:
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Generate Next Git Tag
Expand Down Expand Up @@ -146,7 +146,7 @@ jobs:
actions: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Set repository version variables
Expand All @@ -169,7 +169,7 @@ jobs:
runs-on: ubuntu-latest
environment: main
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Build Docker images
run: |
rm -f ./docker-compose.override.yml
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/docker-build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
environment: test
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Get short commitId
Expand Down Expand Up @@ -91,7 +91,7 @@ jobs:
environment: test
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Generate Next Git Tag
Expand All @@ -118,7 +118,7 @@ jobs:
environment: test
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Set repository version variables
Expand All @@ -145,7 +145,7 @@ jobs:
runs-on: ubuntu-latest
environment: test
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Build Docker images
run: |
rm -f ./docker-compose.override.yml
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/manual-trigger.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
environment: ${{ inputs.name }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Get short commitId
Expand Down Expand Up @@ -88,7 +88,7 @@ jobs:
actions: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: '1'
- name: Set repository version variables
Expand All @@ -107,7 +107,7 @@ jobs:
runs-on: ubuntu-latest
environment: ${{ inputs.name }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Build Docker images
run: |
rm -f ./docker-compose.override.yml
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pr-check-dev-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
outputs:
matrix: ${{ steps.discover.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- id: discover
run: |
Expand All @@ -67,7 +67,7 @@ jobs:
project: ${{ fromJson(needs.discover-test-projects.outputs.matrix) }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- uses: actions/setup-dotnet@v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pr-check-main-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
outputs:
matrix: ${{ steps.discover.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- id: discover
run: |
Expand All @@ -63,7 +63,7 @@ jobs:
project: ${{ fromJson(needs.discover-test-projects.outputs.matrix) }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- uses: actions/setup-dotnet@v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pr-check-test-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
outputs:
matrix: ${{ steps.discover.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- id: discover
run: |
Expand All @@ -65,7 +65,7 @@ jobs:
project: ${{ fromJson(needs.discover-test-projects.outputs.matrix) }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- uses: actions/setup-dotnet@v4
with:
Expand Down
90 changes: 75 additions & 15 deletions applications/Unity.AutoUI/cypress.config.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,82 @@
import { defineConfig } from 'cypress';
import { defineConfig } from "cypress";
import FormData from "form-data";
import fs from "fs";
import path from "path";

// https://docs.cypress.io/guides/references/configuration
export default defineConfig({
e2e: {
setupNodeEvents(on, config) {
// implement node event listeners here
setupNodeEvents(on) {
on("task", {
readJsonIfExists(filePath: string): Record<string, unknown> | null {
try {
// path.resolve handles both forward and back slashes on Windows
const content = fs.readFileSync(path.resolve(filePath), "utf-8");
return JSON.parse(content);
} catch {
return null;
}
},

async uploadChefsFile({
baseURL,
authToken,
filePath,
}: {
baseURL: string;
authToken: string;
filePath: string;
}) {
const fileBuffer = fs.readFileSync(filePath);
const fileName = path.basename(filePath);

const form = new FormData();
form.append("files", fileBuffer, {
filename: fileName,
contentType: "text/plain",
});

// Use getBuffer() so fetch receives a complete binary buffer
// rather than a piped stream (which causes "Unexpected end of form")
const formBuffer = form.getBuffer();
const formHeaders = form.getHeaders();

const response = await fetch(`${baseURL}/app/api/v1/files`, {
method: "POST",
headers: {
Authorization: `Bearer ${authToken}`,
...formHeaders,
},
body: formBuffer as unknown as BodyInit,
});

if (!response.ok) {
throw new Error(
`File upload failed: ${response.status} ${await response.text()}`,
);
}

return response.json();
},
});
},
baseUrl: 'https://developer.gov.bc.ca/',
specPattern: [
"cypress/e2e/**/*.cy.{js,jsx,ts,tsx}",
"cypress/scripts/**/*.cy.{js,jsx,ts,tsx}",
"cypress/regression/**/*.cy.{js,jsx,ts,tsx}",
],
baseUrl: "https://dev-unity.apps.silver.devops.gov.bc.ca/",
defaultCommandTimeout: 20000, // Time, in milliseconds, to wait until most DOM based commands are considered timed out.
viewportWidth: 1440, // Default width in pixels.
viewportHeight: 900, // Default height in pixels.
viewportWidth: 1440, // Default width in pixels.
viewportHeight: 900, // Default height in pixels.
chromeWebSecurity: false, // Chromium-based browser's Web Security for same-origin policy and insecure mixed content.
testIsolation: false, // Set true to ensure a clean browser context between test cases.
retries: // The number of times to retry a failing test.
{
"runMode": 3,
"openMode": 0
},
testIsolation: false, // Set true to ensure a clean browser context between test cases.
// The number of times to retry a failing test.
retries: {
runMode: 3,
openMode: 0,
},
experimentalMemoryManagement: true,
numTestsKeptInMemory: 3
}
});
numTestsKeptInMemory: 3,
},
});
15 changes: 9 additions & 6 deletions applications/Unity.AutoUI/cypress/e2e/basicEmail.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -306,20 +306,23 @@ describe("Send an email", () => {
});

it("Select Email Template", () => {
cy.intercept("GET", "/api/app/template/*/template-by-id").as(
"loadTemplate",
);

cy.get("#template", { timeout: STANDARD_TIMEOUT })
.should("exist")
.should("be.visible")
.select(TEMPLATE_NAME);

cy.wait("@loadTemplate", { timeout: STANDARD_TIMEOUT });

cy.get("#template")
.find("option:selected")
.should("have.text", TEMPLATE_NAME);

// #EmailBody is a hidden textarea backing the rich-text editor.
// Template selection populates the visible RTE but does not auto-sync
// the backing field — trigger the change manually if still empty.
cy.get("#EmailBody", { timeout: STANDARD_TIMEOUT }).then(($el) => {
if (($el.val() as string).trim() === "") {
cy.wrap($el).invoke("val", "Test email body").trigger("change");
}
});
});

it("Set Email To address", () => {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Maple Ridge Community Resource Development Initiative
Test Attachment - Automated Regression Submission
Generated by Cypress automation script.
Loading
Loading