Skip to content

fix: constructor property promotion follow-up - #161

Merged
skjnldsv merged 3 commits into
mainfrom
fix/complete-property-promotion
Jul 2, 2026
Merged

skjnldsv merged 3 commits into
mainfrom
fix/complete-property-promotion

Conversation

@skjnldsv

@skjnldsv skjnldsv commented Jul 1, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #158, addresses Carl's review comment: the constructor property promotion was only half done in the two background job classes.
Also fixed the multiple app id consts 🤷


Developed with AI assistance (Claude Code, claude-opus-4-8), disclosed per the AI Contribution Policy. Reviewed and tested; I take authorship.

Finish the property modernization started in #158. Promote the remaining
IDBConnection and IConfig deps in NotifyUnsetPassword to readonly promoted
constructor params, drop the legacy @var docblocks and manual assignments,
and add readonly to the already-promoted props in ExpireUnverifiedAccounts
for consistency with the rest of the app.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
@skjnldsv skjnldsv added bug Something isn't working 3. to review labels Jul 1, 2026
Replace the 'preferred_providers' string literals scattered across the
background jobs, settings, controller and templates with the existing
Application::APP_ID constant, so the app id is hardcoded in a single place.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
@skjnldsv
skjnldsv requested a review from CarlSchwan July 1, 2026 17:06
@skjnldsv skjnldsv self-assigned this Jul 1, 2026
The trait referenced $this->appName, which no longer exists on
ExpireUnverifiedAccounts after dropping the property. Use the
Application::APP_ID constant directly instead.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
@skjnldsv
skjnldsv enabled auto-merge July 1, 2026 17:14
@skjnldsv skjnldsv changed the title fix(background-job): complete constructor property promotion fix: constructor property promotion follow-up Jul 1, 2026
@skjnldsv
skjnldsv disabled auto-merge July 2, 2026 08:32
@skjnldsv
skjnldsv merged commit de59099 into main Jul 2, 2026
36 checks passed
@skjnldsv
skjnldsv deleted the fix/complete-property-promotion branch July 2, 2026 08:32
skjnldsv added a commit that referenced this pull request Jul 2, 2026
The property-promotion cleanup (#161) migrated ExpireUserTrait and
ExpireUnverifiedAccounts off the removed $appName property to
Application::APP_ID, but missed the pp_disabled line added by the reactivation
feature. Left as $this->appName it referenced an undefined property, so the
expire background job fatally errored at runtime (and psalm/phpunit flagged it).

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
@skjnldsv skjnldsv mentioned this pull request Jul 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant