-
bfcadda63e
Merge
6e33f7942b into 2cca291773
Víctor Falcón
2026-07-19 13:06:39 +0000
-
-
6e33f7942b
test(transactions): update shared-flags and query-count baselines for splits
split-transactions
Víctor Falcón
2026-07-19 15:06:35 +0200
-
18d61b8e77
test(transactions): rename split test helper to avoid a global collision
Víctor Falcón
2026-07-19 14:59:55 +0200
-
49fb62d94d
fix(transactions): address split feature review findings
Víctor Falcón
2026-07-19 14:49:18 +0200
-
0b46fff3c2
feat(transactions): split a transaction across multiple categories
Víctor Falcón
2026-07-19 14:28:10 +0200
-
7de05c8064
Merge
0e4501adbc into 2cca291773
Víctor Falcón
2026-07-18 17:38:09 +0000
-
-
-
0e4501adbc
perf(subscriptions): batch the price-experiment feature resolution
price-experiment
Víctor Falcón
2026-07-18 19:38:04 +0200
-
2cca291773
fix(pwa): keep mobile OAuth consent from being swallowed by the installed app (#701)
main
Víctor Falcón
2026-07-18 19:37:04 +0200
-
d3fd824a6a
fix(pwa): keep mobile OAuth consent from being swallowed by the installed app
Víctor Falcón
2026-07-18 19:30:36 +0200
-
-
-
2dd89e609b
fix(stats): drop redundant null-coalesce on a guaranteed array key
Víctor Falcón
2026-07-18 19:29:27 +0200
-
78545d314a
fix(stats): withhold the Welch verdict below a small-sample floor
Víctor Falcón
2026-07-18 19:25:19 +0200
-
f082e691fb
feat(stats): surface revenue-map gaps in the price experiment report
Víctor Falcón
2026-07-18 19:23:32 +0200
-
5686617cf8
feat(stats): add an SRM check to the price experiment report
Víctor Falcón
2026-07-18 19:19:03 +0200
-
327e9b1d8b
refactor(stats): fix PHPDoc placement and naming in the price funnel
Víctor Falcón
2026-07-18 19:16:07 +0200
-
f7cee87a2a
feat(stats): measure the price experiment funnel with a CM/user decision test
Víctor Falcón
2026-07-18 18:40:37 +0200
-
44c368120b
feat(subscriptions): add A/B price experiment assignment and per-variant pricing
Víctor Falcón
2026-07-18 18:34:26 +0200
-
-
4c83cb8b33
feat(import): persist per-account import configuration on the backend (#698)
Víctor Falcón
2026-07-18 16:10:40 +0200
-
2b2e4c4a87
feat: reuse the upgrade modal at more upsell points and attribute revenue (#699)
Víctor Falcón
2026-07-18 14:53:20 +0200
-
d008427c22
refactor: drop dead planKey prop, cross-link the upsell enum mirror
Víctor Falcón
2026-07-18 13:32:02 +0200
-
041b2147de
feat: reuse the upgrade modal at more upsell points and attribute revenue
Víctor Falcón
2026-07-18 13:23:54 +0200
-
-
-
52aae3fd67
feat: prompt free users to subscribe when enabling AI categorization (#696)
Víctor Falcón
2026-07-18 14:45:56 +0200
-
-
89174af4e6
feat(transactions): add delete button to the transaction edit modal (#697)
Víctor Falcón
2026-07-18 13:03:09 +0200
-
ceef9cf26f
refactor(import): merge storage helpers, keep file preview off the network path
Víctor Falcón
2026-07-18 13:00:33 +0200
-
f422bb4ce4
feat: prompt free users to subscribe when enabling AI categorization
Víctor Falcón
2026-07-18 12:53:56 +0200
-
1bac7b16a7
style(transactions): add dark-mode hover for modal delete button
Víctor Falcón
2026-07-18 12:49:41 +0200
-
b6c759cfd6
feat(import): persist per-account import config on the backend
Víctor Falcón
2026-07-18 12:49:17 +0200
-
-
51c9784a27
feat(transactions): add delete button to the edit modal
Víctor Falcón
2026-07-18 12:45:00 +0200
-
-
-
7a100554a1
Merge
72dff20e16 into 2d7e905ddd
elnuage
2026-07-18 11:40:40 +0100
-
-
-
2d7e905ddd
feat(mcp): lead with Claude Desktop/ChatGPT connect steps, collapse tokens (#695)
Víctor Falcón
2026-07-18 11:49:32 +0200
-
-
6d45e01c3f
feat(mcp): lead with Claude Desktop/ChatGPT connect steps, collapse tokens
Víctor Falcón
2026-07-18 11:43:21 +0200
-
-
-
5621e90879
feat: streamline the subscription paywall and add a support escape hatch (#694)
Víctor Falcón
2026-07-18 11:13:14 +0200
-
83f915d725
Add a support button to the paywall when it can't be skipped
Víctor Falcón
2026-07-18 08:35:22 +0200
-
eec0acfd63
Give the mobile paywall X a legible backing and dedup free-plan action
Víctor Falcón
2026-07-18 08:13:58 +0200
-
64f6a90d44
Update copies
Víctor Falcón
2026-07-18 08:11:17 +0200
-
57e61fdf9e
Replace paywall free-plan button with a top-right X on mobile
Víctor Falcón
2026-07-18 08:07:25 +0200
-
f4b5cfa2e9
Remove balance stat from subscription paywall
Víctor Falcón
2026-07-18 08:02:42 +0200
-
-
-
41ac3e90e1
fix(mcp): keep Passport signing keys at 600 in production (#693)
Víctor Falcón
2026-07-17 21:20:00 +0200
-
804cf90954
fix(mcp): keep Passport signing keys at 600 in production
Víctor Falcón
2026-07-17 21:08:46 +0200
-
-
-
6d5f440727
feat(mcp): add OAuth 2.1 for Claude Desktop & ChatGPT connectors (Phase 3) (#691)
Víctor Falcón
2026-07-17 19:10:48 +0200
-
5fa2f69c40
feat(mcp): allow write tools over OAuth connections
Víctor Falcón
2026-07-17 18:56:48 +0200
-
57de4e4063
Merge
2472260ec8 into 5d7b655111
Víctor Falcón
2026-07-17 16:53:30 +0000
-
-
-
2472260ec8
feat(ai): make AI categorization confidence threshold configurable
ai-confidence-config
Víctor Falcón
2026-07-17 18:43:58 +0200
-
-
-
e226d362ec
polish(mcp): honest consent copy, a11y and settings wording
Víctor Falcón
2026-07-17 18:26:05 +0200
-
aa6a604be0
chore(mcp): provision Passport signing keys everywhere
Víctor Falcón
2026-07-17 18:26:05 +0200
-
5fa59e61d3
harden(mcp): enforce OAuth read-only server-side, not via scope
Víctor Falcón
2026-07-17 18:26:05 +0200
-
15d70d2db9
fix(mcp): return a Response from the consent view closure
Víctor Falcón
2026-07-17 18:03:28 +0200
-
fb877faa0e
test(mcp): cover the OAuth 2.1 auth boundary
Víctor Falcón
2026-07-17 18:01:03 +0200
-
5e06569615
fix(mcp): use UUID columns for Passport user references
Víctor Falcón
2026-07-17 18:01:03 +0200
-
a1b730f335
feat(mcp): show OAuth connect instructions in settings
Víctor Falcón
2026-07-17 17:51:58 +0200
-
2330fdf98c
feat(mcp): on-brand OAuth consent screen
Víctor Falcón
2026-07-17 17:50:46 +0200
-
2627ec26fa
feat(mcp): expose an OAuth-authenticated /mcp/oauth endpoint
Víctor Falcón
2026-07-17 17:46:40 +0200
-
b0e90dc271
feat(mcp): install Passport 13 and add the api guard
Víctor Falcón
2026-07-17 17:45:36 +0200
-
-
-
5d7b655111
feat(mcp): add write tools (Phase 2) (#690)
Víctor Falcón
2026-07-17 17:25:03 +0200
-
96a7ad157e
fix(mcp): align the token scope select with the name input and button
Víctor Falcón
2026-07-17 17:18:31 +0200
-
8fed5851bc
test(mcp): cover write tools, guardrails and token scope
Víctor Falcón
2026-07-17 16:36:45 +0200
-
575e7a148d
feat(mcp): re-add the read/read-write token scope selector
Víctor Falcón
2026-07-17 16:30:24 +0200
-
be4f363e9e
feat(mcp): add write tools behind the mcp:write ability
Víctor Falcón
2026-07-17 16:28:29 +0200
-
-
-
fb1adfc484
feat(mcp): read-only MCP server for Pro accounts (#689)
Víctor Falcón
2026-07-17 16:54:15 +0200
-
1f4fa123c5
fix: include mcp feature flag in InertiaSharedDataTest shared-props assertion
Víctor Falcón
2026-07-17 16:47:01 +0200
-
5eafc52994
feat(mcp): gate the AI Connector behind a feature flag; polish UI and copy
Víctor Falcón
2026-07-17 16:40:25 +0200
-
bf40ecb708
fix(mcp): prettier formatting and numeric token id type on the settings page
Víctor Falcón
2026-07-17 15:44:35 +0200
-
4e6be10885
fix(mcp): satisfy larastan (level 5)
Víctor Falcón
2026-07-17 15:42:18 +0200
-
de5fc229d5
test(mcp): cover the HTTP endpoint auth boundary
Víctor Falcón
2026-07-17 15:35:13 +0200
-
fcf5e6e46f
refactor(mcp): address review feedback
Víctor Falcón
2026-07-17 15:32:10 +0200
-
14ab73dcfb
feat(mcp): add read-only MCP server for Pro accounts
Víctor Falcón
2026-07-17 15:17:40 +0200
-
782ec2f2e9
feat(currencies): add Hong Kong Dollar (HKD) (#688)
Víctor Falcón
2026-07-17 13:46:21 +0200
-
b233155f0e
feat(currencies): add Hong Kong Dollar (HKD)
Víctor Falcón
2026-07-17 13:34:14 +0200
-
-
-
4cd7619791
feat(encryption): report count of users still holding encrypted data (#687)
Víctor Falcón
2026-07-17 11:29:33 +0200
-
afd09eab87
feat(encryption): always report count of non-deleted users with encrypted data
Víctor Falcón
2026-07-17 11:23:32 +0200
-
-
-
17ddbbf821
test(encryption): cover trialing, past_due and grace branches for notify-removal
fix/delete-accounts-billing-guard-flag-independent
Víctor Falcón
2026-07-17 11:08:27 +0200
-
09076684a4
refactor(billing): single source of truth for the billed-user check
Víctor Falcón
2026-07-17 10:34:39 +0200
-
f140f5c785
fix(encryption): guard billed users independently of the subscriptions flag
Víctor Falcón
2026-07-17 10:25:31 +0200
-
-
-
808d41eee2
feat(currencies): add Guatemalan Quetzal (GTQ) (#685)
Víctor Falcón
2026-07-16 17:23:37 +0200
-
e115822033
feat(currencies): add Guatemalan Quetzal (GTQ)
Víctor Falcón
2026-07-16 17:12:01 +0200
-
-
-
7aa32dab0f
feat(currencies): add Swedish Krona (SEK) (#684)
Víctor Falcón
2026-07-16 16:25:33 +0200
-
198d0262e2
feat(currencies): add Swedish Krona (SEK)
Víctor Falcón
2026-07-16 16:19:31 +0200
-
-
-
74b6e4817f
Merge
d76b98c837 into a873582191
Víctor Falcón
2026-07-16 14:43:09 +0200
-
-
-
a873582191
feat(transactions): allow editing all fields of manual transactions (#683)
Víctor Falcón
2026-07-16 08:59:10 +0200
-
957ad76594
fix(transactions): annotate Transaction::$source enum type for static analysis
Víctor Falcón
2026-07-16 08:51:00 +0200
-
e40c09d2b9
Merge remote-tracking branch 'origin/main' into edit-manual-transactions
Víctor Falcón
2026-07-16 08:48:03 +0200
-
-
-
-
148aee0b63
feat(transactions): allow editing all fields of manual transactions
Víctor Falcón
2026-07-16 08:38:56 +0200
-
9312d24f93
fix(balances): propagate retroactive transaction changes to later balances (#682)
Víctor Falcón
2026-07-16 08:38:02 +0200
-
-
-
ec509676ed
fix(accounts): vertically center rows in the balance history modal
Víctor Falcón
2026-07-16 08:28:15 +0200
-
5ee2892db4
fix(balances): propagate retroactive transaction changes to later balances
Víctor Falcón
2026-07-16 08:02:29 +0200
-
-
-
c7719fe5ad
docs: document adding a new currency (#681)
Víctor Falcón
2026-07-15 14:32:18 +0200
-
1c36691253
docs: document adding a new currency
Víctor Falcón
2026-07-15 14:26:29 +0200
-
-
-
6490729fcc
refactor: extract duplicated money formatter into App\Support\Money (#680)
Víctor Falcón
2026-07-15 09:47:53 +0200
-
5a14d1e606
refactor: extract duplicated money formatter into App\Support\Money
Víctor Falcón
2026-07-15 09:21:09 +0200
-
-
-
3db03de86d
fix(stats): correct the trial/pricing experiment funnel report (#679)
Víctor Falcón
2026-07-15 09:17:32 +0200
-
013a237242
refactor(stats): extract statistical inference into a Services/Stats service
Víctor Falcón
2026-07-15 09:04:50 +0200
-
d763a5b476
fix(stats): decide significance with Fisher exact, not the normal-approx z
Víctor Falcón
2026-07-15 08:48:47 +0200
-
d7963736d1
fix(banking): treat EnableBanking upstream 5xx as transient, not reportable (#678)
Víctor Falcón
2026-07-15 08:40:55 +0200
-
d35bc07c05
fix(banking): treat EnableBanking upstream 5xx as transient, not reportable
Víctor Falcón
2026-07-15 08:35:02 +0200
-
-
-
f7a83788ea
test(stats): assert full command output and keep rates as float
Víctor Falcón
2026-07-15 08:08:03 +0200
-
c00069f208
feat(stats): add confidence intervals and a significance verdict
Víctor Falcón
2026-07-15 08:00:57 +0200
-
a0a07090c3
fix(stats): measure conversion as ever-charged, not active-now
Víctor Falcón
2026-07-15 07:52:48 +0200
-
a6024d35ee
fix(stats): count only revenue-less users as connection burn
Víctor Falcón
2026-07-15 07:46:13 +0200
-
af03a179af
fix(stats): attribute the funnel by deterministic bucket, not resolved flag
Víctor Falcón
2026-07-15 07:44:31 +0200
-
2eab6f2a76
fix(stats): resolve MRR for subscriptions on rotated Stripe price ids
Víctor Falcón
2026-07-15 07:42:35 +0200
-
b8e1f9c2d8
fix(stats): count soft-deleted users in the experiment funnel
Víctor Falcón
2026-07-15 07:40:18 +0200
A Fortis Scientia site