fleetlens 1.0.13 → 1.0.14
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/app/apps/web/.next/BUILD_ID +1 -1
- package/app/apps/web/.next/build-manifest.json +3 -3
- package/app/apps/web/.next/prerender-manifest.json +3 -3
- package/app/apps/web/.next/server/app/_global-error.html +1 -1
- package/app/apps/web/.next/server/app/_global-error.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/agent/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/changelog/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/day/[date]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/day/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/digest/[date]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/digest/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/insights/[key]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/insights/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/parallelism/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/print/[key]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/runs/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/team/onboarding/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/team/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/usage/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/chunks/[root-of-the-server]__02.51sr._.js +1 -1
- package/app/apps/web/.next/server/chunks/[root-of-the-server]__0zyh554._.js +1 -1
- package/app/apps/web/.next/server/chunks/packages_parser_dist_06d9se1._.js +1 -1
- package/app/apps/web/.next/server/chunks/packages_parser_dist_10ihc3~._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0s~wd1k._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/_0k8yioi._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web_0epqfet._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web_components_0x014hn._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web_lib_changelog_ts_0n7_p1d._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web_lib_changelog_ts_0nb5_-s._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/packages_parser_dist_0mx_509._.js +1 -1
- package/app/apps/web/.next/server/middleware-build-manifest.js +3 -3
- package/app/apps/web/.next/server/middleware-manifest.json +5 -5
- package/app/apps/web/.next/server/pages/500.html +1 -1
- package/app/apps/web/.next/server/server-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/app/apps/web/.next/static/chunks/00_9zw_tjem-o.js +14 -0
- package/app/apps/web/.next/static/chunks/{0r~~~j3kmv7s_.js → 08os0c_3cdpqn.js} +1 -1
- package/app/apps/web/.next/static/chunks/0f9bdjq4n1ykp.js +1 -0
- package/app/apps/web/app/usage/page.tsx +264 -1
- package/app/apps/web/lib/changelog-data.generated.ts +1 -1
- package/app/apps/web/lib/usage-data.ts +1 -1
- package/app/apps/web/lib/usage-display.test.ts +15 -0
- package/app/apps/web/lib/usage-display.ts +22 -3
- package/app/apps/web/package.json +1 -1
- package/app/apps/web/tsconfig.tsbuildinfo +1 -1
- package/dist/daemon-worker.js +358 -92
- package/dist/index.js +564 -155
- package/menubar/Fleetlens.app/Contents/Info.plist +2 -2
- package/menubar/Fleetlens.app/Contents/MacOS/FleetlensMenubar +0 -0
- package/menubar/Fleetlens.app/Contents/Resources/command-code.svg +4 -0
- package/menubar/Fleetlens.app/Contents/_CodeSignature/CodeResources +11 -0
- package/package.json +1 -1
- package/app/apps/web/.next/static/chunks/0lcq6isl3n79m.js +0 -1
- package/app/apps/web/.next/static/chunks/0livk1wjx5m4o.js +0 -14
- /package/app/apps/web/.next/static/{h9pB-Efqh5oayfi0_lGfY → FOCI6RnIt_wZ2j2ZEqW5_}/_buildManifest.js +0 -0
- /package/app/apps/web/.next/static/{h9pB-Efqh5oayfi0_lGfY → FOCI6RnIt_wZ2j2ZEqW5_}/_clientMiddlewareManifest.js +0 -0
- /package/app/apps/web/.next/static/{h9pB-Efqh5oayfi0_lGfY → FOCI6RnIt_wZ2j2ZEqW5_}/_ssgManifest.js +0 -0
|
@@ -28,7 +28,7 @@ export type UsageSnapshot = {
|
|
|
28
28
|
used: number | null;
|
|
29
29
|
limit: number | null;
|
|
30
30
|
remaining: number | null;
|
|
31
|
-
unit: "ai-credits" | "premium-requests";
|
|
31
|
+
unit: "ai-credits" | "premium-requests" | "credits";
|
|
32
32
|
/** Raw Copilot SDK entitlement flag. It can mean no personal ceiling was
|
|
33
33
|
* disclosed for an organization pool, not that use is unbounded. */
|
|
34
34
|
unlimited: boolean;
|
|
@@ -21,6 +21,10 @@ describe("visibleUsageAgents", () => {
|
|
|
21
21
|
"grok",
|
|
22
22
|
"claude-code",
|
|
23
23
|
]);
|
|
24
|
+
expect(visibleUsageAgents([{ agent: "command-code" }])).toEqual([
|
|
25
|
+
"command-code",
|
|
26
|
+
"claude-code",
|
|
27
|
+
]);
|
|
24
28
|
});
|
|
25
29
|
|
|
26
30
|
it("treats legacy snapshots without an agent as Claude Code", () => {
|
|
@@ -72,6 +76,16 @@ describe("sidebarUsageRows", () => {
|
|
|
72
76
|
).toEqual(["7d"]);
|
|
73
77
|
});
|
|
74
78
|
|
|
79
|
+
it("shows monthly + 5h + weekly for Command Code", () => {
|
|
80
|
+
expect(
|
|
81
|
+
sidebarUsageRows("command-code", {
|
|
82
|
+
monthly: win(59.6),
|
|
83
|
+
five_hour: win(0.3),
|
|
84
|
+
seven_day: win(99.5),
|
|
85
|
+
}).map((r) => r.label),
|
|
86
|
+
).toEqual(["5h", "wk", "Monthly"]);
|
|
87
|
+
});
|
|
88
|
+
|
|
75
89
|
it("derives Copilot monthly windowMs from the calendar month of resets_at", () => {
|
|
76
90
|
// resets_at = Mar 1 00:00 UTC → previous month is February (non-leap 2026)
|
|
77
91
|
const febMs =
|
|
@@ -134,5 +148,6 @@ describe("copilotQuotaPresentation", () => {
|
|
|
134
148
|
it("uses one unit mapping for headings and quota details", () => {
|
|
135
149
|
expect(copilotUnitLabel("ai-credits")).toBe("AI credits");
|
|
136
150
|
expect(copilotUnitLabel("premium-requests")).toBe("premium requests");
|
|
151
|
+
expect(copilotUnitLabel("credits")).toBe("credits");
|
|
137
152
|
});
|
|
138
153
|
});
|
|
@@ -65,6 +65,23 @@ export function sidebarUsageRows(
|
|
|
65
65
|
if (agent === "grok") {
|
|
66
66
|
return [{ label: "7d", window: snapshot.seven_day ?? null, windowMs: SEVEN_DAYS_MS }];
|
|
67
67
|
}
|
|
68
|
+
if (agent === "command-code") {
|
|
69
|
+
const monthly = snapshot.monthly ?? null;
|
|
70
|
+
let monthlyMs = MONTHLY_MS;
|
|
71
|
+
if (monthly?.resets_at) {
|
|
72
|
+
const endMs = new Date(monthly.resets_at).getTime();
|
|
73
|
+
if (Number.isFinite(endMs)) {
|
|
74
|
+
const reset = new Date(endMs);
|
|
75
|
+
const startMs = Date.UTC(reset.getUTCFullYear(), reset.getUTCMonth() - 1, 1);
|
|
76
|
+
monthlyMs = Math.max(HOUR, endMs - startMs);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return [
|
|
80
|
+
{ label: "5h", window: snapshot.five_hour ?? null, windowMs: FIVE_HOURS_MS },
|
|
81
|
+
{ label: "wk", window: snapshot.seven_day ?? null, windowMs: SEVEN_DAYS_MS },
|
|
82
|
+
{ label: "Monthly", window: monthly, windowMs: monthlyMs },
|
|
83
|
+
];
|
|
84
|
+
}
|
|
68
85
|
// Codex accounts that dropped the 5h limit only report 7d.
|
|
69
86
|
if (agent === "codex" && snapshot.five_hour?.utilization == null) {
|
|
70
87
|
return [{ label: "7d", window: snapshot.seven_day ?? null, windowMs: SEVEN_DAYS_MS }];
|
|
@@ -88,14 +105,16 @@ export type CopilotMonthlyQuota = {
|
|
|
88
105
|
used: number | null;
|
|
89
106
|
limit: number | null;
|
|
90
107
|
remaining: number | null;
|
|
91
|
-
unit: "ai-credits" | "premium-requests";
|
|
108
|
+
unit: "ai-credits" | "premium-requests" | "credits";
|
|
92
109
|
unlimited: boolean;
|
|
93
110
|
};
|
|
94
111
|
|
|
95
112
|
export function copilotUnitLabel(
|
|
96
113
|
unit?: CopilotMonthlyQuota["unit"],
|
|
97
|
-
): "AI credits" | "premium requests" {
|
|
98
|
-
|
|
114
|
+
): "AI credits" | "premium requests" | "credits" {
|
|
115
|
+
if (unit === "premium-requests") return "premium requests";
|
|
116
|
+
if (unit === "credits") return "credits";
|
|
117
|
+
return "AI credits";
|
|
99
118
|
}
|
|
100
119
|
|
|
101
120
|
export function copilotQuotaPresentation(
|