feat(10-03): export loadClientForUser and triggerTargetedResync from outboxWorker
- Add export keyword to loadClientForUser (line 271) - Add export keyword to triggerTargetedResync (line 302) - Function bodies unchanged (no behavior change, no node-cron reintroduced) - Enables credentialSync.ts shared helper to call post-credential full-member sync
This commit is contained in:
@@ -268,7 +268,7 @@ const RESYNC_TIMEOUT_MS = 10_000;
|
|||||||
*
|
*
|
||||||
* T-03-13: decrypted password is never logged.
|
* T-03-13: decrypted password is never logged.
|
||||||
*/
|
*/
|
||||||
async function loadClientForUser(userId: number): Promise<FastmailClient> {
|
export async function loadClientForUser(userId: number): Promise<FastmailClient> {
|
||||||
const rows = await db
|
const rows = await db
|
||||||
.select()
|
.select()
|
||||||
.from(memberCredentials)
|
.from(memberCredentials)
|
||||||
@@ -299,7 +299,7 @@ async function loadClientForUser(userId: number): Promise<FastmailClient> {
|
|||||||
* widening the window the decrypted app password lives in memory (T-03-13). When a cache
|
* widening the window the decrypted app password lives in memory (T-03-13). When a cache
|
||||||
* is supplied, the decrypted client is built at most once per userId per drain cycle.
|
* is supplied, the decrypted client is built at most once per userId per drain cycle.
|
||||||
*/
|
*/
|
||||||
async function triggerTargetedResync(
|
export async function triggerTargetedResync(
|
||||||
calendarUrl: string,
|
calendarUrl: string,
|
||||||
userId: number,
|
userId: number,
|
||||||
clientCache?: Map<number, FastmailClient>,
|
clientCache?: Map<number, FastmailClient>,
|
||||||
|
|||||||
Reference in New Issue
Block a user