@circuitwall/jarela 1.4.0 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/v1/builtin-tools/route.js +10 -1
- package/.next/standalone/.next/server/app/api/v1/builtin-tools/route.js.map +1 -1
- package/.next/standalone/.next/server/app/api/v1/dashboard/currency/route.js +10 -5
- package/.next/standalone/.next/server/app/api/v1/dashboard/currency/route.js.map +1 -1
- package/.next/standalone/.next/server/app/api/v1/providers/[provider]/probe/route.js +9 -1
- package/.next/standalone/.next/server/app/api/v1/providers/[provider]/probe/route.js.map +1 -1
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/run/route.js +33 -8
- package/.next/standalone/.next/server/app/api/v1/threads/[thread_id]/run/route.js.map +1 -1
- package/.next/standalone/.next/server/app/page.js +63 -202
- package/.next/standalone/.next/server/app/page.js.map +1 -1
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/setup/page.js +1 -1
- package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/1718.js +159 -0
- package/.next/standalone/.next/server/chunks/1718.js.map +1 -0
- package/.next/standalone/.next/server/chunks/2082.js +6 -3
- package/.next/standalone/.next/server/chunks/2082.js.map +1 -1
- package/.next/standalone/.next/server/chunks/210.js +28 -0
- package/.next/standalone/.next/server/chunks/210.js.map +1 -1
- package/.next/standalone/.next/server/chunks/423.js +6 -3
- package/.next/standalone/.next/server/chunks/423.js.map +1 -1
- package/.next/standalone/.next/server/chunks/4631.js +37 -5
- package/.next/standalone/.next/server/chunks/4631.js.map +1 -1
- package/.next/standalone/.next/server/chunks/8167.js +255 -204
- package/.next/standalone/.next/server/chunks/8167.js.map +1 -1
- package/.next/standalone/.next/server/chunks/8866.js +38 -5
- package/.next/standalone/.next/server/chunks/8866.js.map +1 -1
- package/.next/standalone/.next/server/chunks/9032.js +8 -0
- package/.next/standalone/.next/server/chunks/9032.js.map +1 -1
- package/.next/standalone/.next/server/chunks/{7883.js → 9557.js} +15 -3
- package/.next/standalone/.next/server/chunks/9557.js.map +1 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/middleware.js +6 -3
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/proxy.js.map +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{2351-68d8987bbe17ba2d.js → 2351-1ab119fb3b48f4c9.js} +258 -205
- package/.next/standalone/.next/static/chunks/2351-1ab119fb3b48f4c9.js.map +1 -0
- package/.next/standalone/.next/static/chunks/{9209-0d46118e502f8bf5.js → 4097-64691f9110cf167c.js} +14 -2
- package/.next/standalone/.next/static/chunks/4097-64691f9110cf167c.js.map +1 -0
- package/.next/standalone/.next/static/chunks/app/{page-74846c864241b96d.js → page-145150e0468544e7.js} +64 -203
- package/.next/standalone/.next/static/chunks/app/page-145150e0468544e7.js.map +1 -0
- package/.next/standalone/.next/static/chunks/app/setup/{page-9a465b5fa755b3c3.js → page-a1463a9ace439ff7.js} +2 -2
- package/.next/standalone/.next/static/chunks/app/setup/{page-9a465b5fa755b3c3.js.map → page-a1463a9ace439ff7.js.map} +1 -1
- package/.next/standalone/.next/static/chunks/{webpack-ff5627013a5e3842.js → webpack-f4ac5c5f92cfd1c1.js} +13 -1
- package/.next/standalone/.next/static/chunks/webpack-f4ac5c5f92cfd1c1.js.map +1 -0
- package/.next/standalone/package.json +1 -1
- package/CHANGELOG.md +60 -0
- package/README.md +1 -1
- package/api/client.ts +10 -9
- package/app/api/v1/dashboard/currency/route.ts +7 -2
- package/app/api/v1/providers/[provider]/probe/route.ts +12 -1
- package/app/api/v1/threads/[thread_id]/run/route.ts +22 -8
- package/components/layout/AppShell.tsx +53 -17
- package/components/setup/PinKeypad.tsx +238 -0
- package/components/setup/ScreenLock.tsx +8 -173
- package/components/setup/UnlockScreen.tsx +25 -192
- package/lib/documents/remote/github.ts +16 -2
- package/lib/documents/remote/mail.ts +11 -2
- package/lib/lifecycle/shutdown.ts +9 -0
- package/lib/providers/github-copilot-auth.ts +2 -0
- package/lib/providers/github-copilot.ts +1 -0
- package/lib/tools/async-results.ts +11 -0
- package/package.json +1 -1
- package/scripts/install-to-system.ps1 +2 -2
- package/scripts/installed-launcher.ps1 +81 -17
- package/.next/standalone/.next/server/chunks/7883.js.map +0 -1
- package/.next/standalone/.next/static/chunks/2351-68d8987bbe17ba2d.js.map +0 -1
- package/.next/standalone/.next/static/chunks/9209-0d46118e502f8bf5.js.map +0 -1
- package/.next/standalone/.next/static/chunks/app/page-74846c864241b96d.js.map +0 -1
- package/.next/standalone/.next/static/chunks/webpack-ff5627013a5e3842.js.map +0 -1
- /package/.next/standalone/.next/static/{AV5AO0yTRABo-NgwxhDe7 → WQdcnm9NyqpeNc0Z8_woo}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{AV5AO0yTRABo-NgwxhDe7 → WQdcnm9NyqpeNc0Z8_woo}/_ssgManifest.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.id = 8866;
|
|
3
|
-
exports.ids = [2151,3608,8866];
|
|
3
|
+
exports.ids = [1718,2151,3608,8866];
|
|
4
4
|
exports.modules = {
|
|
5
5
|
|
|
6
6
|
/***/ 3464:
|
|
@@ -2915,7 +2915,10 @@ async function indexGmailMail(row) {
|
|
|
2915
2915
|
if (list.error) throw new Error(list.error);
|
|
2916
2916
|
const batch = list.messages ?? [];
|
|
2917
2917
|
if (batch.length === 0) break;
|
|
2918
|
-
|
|
2918
|
+
// Use allSettled so a single 404/transient 5xx on one message
|
|
2919
|
+
// doesn't bin the whole page (and stall the cursor on the next
|
|
2920
|
+
// run). Failures get counted into stats.errors instead.
|
|
2921
|
+
const settled = await Promise.allSettled(batch.slice(0, limit).map(async (entry)=>{
|
|
2919
2922
|
const msg = await (0,gmail_oauth/* googleFetch */.sI)(auth, "Gmail", "https://gmail.googleapis.com/gmail/v1/users/me", `/messages/${encodeURIComponent(entry.id)}?format=full`);
|
|
2920
2923
|
if (msg.error) throw new Error(msg.error);
|
|
2921
2924
|
const title = msg.payload ? header(msg.payload.headers, "Subject") ?? entry.id : entry.id;
|
|
@@ -2937,10 +2940,16 @@ async function indexGmailMail(row) {
|
|
|
2937
2940
|
text
|
|
2938
2941
|
});
|
|
2939
2942
|
}));
|
|
2940
|
-
for (const [index,
|
|
2943
|
+
for (const [index, outcome] of settled.entries()){
|
|
2941
2944
|
const id = batch[index]?.id ?? "";
|
|
2942
2945
|
if (id) keep.add(`gmail://${id}`);
|
|
2943
2946
|
stats.scanned++;
|
|
2947
|
+
if (outcome.status === "rejected") {
|
|
2948
|
+
stats.errors++;
|
|
2949
|
+
console.warn(`[mail-indexer] message ${id} failed:`, outcome.reason);
|
|
2950
|
+
continue;
|
|
2951
|
+
}
|
|
2952
|
+
const item = outcome.value;
|
|
2944
2953
|
stats.added += item.status === "added" ? 1 : 0;
|
|
2945
2954
|
stats.updated += item.status === "updated" ? 1 : 0;
|
|
2946
2955
|
stats.unchanged += item.status === "unchanged" ? 1 : 0;
|
|
@@ -3281,10 +3290,23 @@ async function runGithubPullsIndexer(source) {
|
|
|
3281
3290
|
if (cutoffMs !== null && Number.isFinite(updatedMs) && updatedMs < cutoffMs) break outer;
|
|
3282
3291
|
if (Number.isFinite(sinceMs) && Number.isFinite(updatedMs) && updatedMs <= sinceMs) break outer;
|
|
3283
3292
|
try {
|
|
3284
|
-
|
|
3293
|
+
// allSettled so a failed comments fetch doesn't also discard
|
|
3294
|
+
// the reviews (and vice versa); we still index what we have and
|
|
3295
|
+
// count the partial as an error.
|
|
3296
|
+
const [commentsRes, reviewsRes] = await Promise.allSettled([
|
|
3285
3297
|
listIssueComments(auth, cfg.owner, cfg.repo, pr.number),
|
|
3286
3298
|
listReviews(auth, cfg.owner, cfg.repo, pr.number)
|
|
3287
3299
|
]);
|
|
3300
|
+
const comments = commentsRes.status === "fulfilled" ? commentsRes.value : [];
|
|
3301
|
+
const reviews = reviewsRes.status === "fulfilled" ? reviewsRes.value : [];
|
|
3302
|
+
if (commentsRes.status === "rejected") {
|
|
3303
|
+
stats.errors++;
|
|
3304
|
+
console.warn(`[github-indexer] pr#${pr.number} comments failed:`, commentsRes.reason);
|
|
3305
|
+
}
|
|
3306
|
+
if (reviewsRes.status === "rejected") {
|
|
3307
|
+
stats.errors++;
|
|
3308
|
+
console.warn(`[github-indexer] pr#${pr.number} reviews failed:`, reviewsRes.reason);
|
|
3309
|
+
}
|
|
3288
3310
|
const text = flattenPull(pr, comments, reviews);
|
|
3289
3311
|
const res = await upsertRemoteDocument(source.id, {
|
|
3290
3312
|
path: `github-pull://${cfg.owner}/${cfg.repo}/${pr.number}`,
|
|
@@ -3294,8 +3316,9 @@ async function runGithubPullsIndexer(source) {
|
|
|
3294
3316
|
});
|
|
3295
3317
|
applyUpsert(stats, res);
|
|
3296
3318
|
if (updated && (!highWater || updated > highWater)) highWater = updated;
|
|
3297
|
-
} catch
|
|
3319
|
+
} catch (err) {
|
|
3298
3320
|
stats.errors++;
|
|
3321
|
+
console.warn(`[github-indexer] pr#${pr.number} upsert failed:`, err);
|
|
3299
3322
|
}
|
|
3300
3323
|
}
|
|
3301
3324
|
if (pulls.length < PR_PAGE_LIMIT) break;
|
|
@@ -3609,6 +3632,7 @@ function getOrCreateOnDemandSource() {
|
|
|
3609
3632
|
/* harmony export */ eN: () => (/* binding */ completeAsyncCall),
|
|
3610
3633
|
/* harmony export */ f3: () => (/* binding */ startAsyncCall),
|
|
3611
3634
|
/* harmony export */ m3: () => (/* binding */ consumeAsyncResult),
|
|
3635
|
+
/* harmony export */ stopAsyncResults: () => (/* binding */ stopAsyncResults),
|
|
3612
3636
|
/* harmony export */ zc: () => (/* binding */ failAsyncCall)
|
|
3613
3637
|
/* harmony export */ });
|
|
3614
3638
|
/* unused harmony exports DEFAULT_TTL_MS, MAX_ENTRIES, sweepExpired, __resetStore, __backdateFinished */
|
|
@@ -3648,6 +3672,15 @@ function ensureSweeper() {
|
|
|
3648
3672
|
}, SWEEP_INTERVAL_MS);
|
|
3649
3673
|
sweeper.unref?.();
|
|
3650
3674
|
}
|
|
3675
|
+
/**
|
|
3676
|
+
* Tear down the sweeper. Called from the shutdown drain so the timer
|
|
3677
|
+
* isn't keeping the event loop alive past close-time. Idempotent.
|
|
3678
|
+
*/ function stopAsyncResults() {
|
|
3679
|
+
if (sweeper) {
|
|
3680
|
+
clearInterval(sweeper);
|
|
3681
|
+
sweeper = null;
|
|
3682
|
+
}
|
|
3683
|
+
}
|
|
3651
3684
|
/**
|
|
3652
3685
|
* Carve out a slot for a new async tool call and return its key.
|
|
3653
3686
|
* The key is opaque and URL-safe — the agent treats it as a token.
|