@cartanova/qgrid-cli 2.4.5 → 2.4.7
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/bundle/dist/application/monit/log-buffer.js +76 -0
- package/bundle/dist/application/monit/monit.frame.js +86 -0
- package/bundle/dist/application/monit/monit.types.js +42 -0
- package/bundle/dist/application/qgrid/oauth.js +1 -1
- package/bundle/dist/application/qgrid/qgrid.dispatcher.js +3 -3
- package/bundle/dist/application/qgrid/qgrid.frame.js +9 -9
- package/bundle/dist/application/queries.generated.js +7 -2
- package/bundle/dist/application/request-log/request-log.model.js +1 -1
- package/bundle/dist/sonamu.config.js +14 -10
- package/bundle/dist/utils/providers/anthropic/anthropic-dispatcher.js +5 -2
- package/bundle/dist/utils/providers/anthropic/claude-session.js +3 -3
- package/bundle/dist/utils/providers/openai/codex-worker.js +3 -3
- package/bundle/dist/utils/providers/openai/openai-dispatcher.js +8 -2
- package/bundle/src/application/monit/log-buffer.test.ts +121 -0
- package/bundle/src/application/monit/log-buffer.ts +121 -0
- package/bundle/src/application/monit/monit.frame.test.ts +176 -0
- package/bundle/src/application/monit/monit.frame.ts +77 -0
- package/bundle/src/application/monit/monit.types.ts +54 -0
- package/bundle/src/application/queries.generated.ts +8 -0
- package/bundle/src/application/sonamu.generated.http +12 -0
- package/bundle/src/sonamu.config.ts +5 -2
- package/bundle/src/utils/providers/anthropic/anthropic-dispatcher.ts +5 -0
- package/bundle/src/utils/providers/openai/openai-dispatcher.test.ts +16 -0
- package/bundle/src/utils/providers/openai/openai-dispatcher.ts +11 -0
- package/bundle/web-dist/client/assets/index-CYnw2kNG.js +78 -0
- package/bundle/web-dist/client/assets/index-yZcjDoV0.css +1 -0
- package/bundle/web-dist/client/assets/{logs-BMzzMMRA.js → logs-CnXIN-jp.js} +1 -1
- package/bundle/web-dist/client/assets/monit-DRuDGJj4.js +1 -0
- package/bundle/web-dist/client/assets/{routes-XqQHRGxI.js → routes-CuyNd-ya.js} +1 -1
- package/bundle/web-dist/client/assets/{sd.generated-WA5SGJYZ.js → sd.generated-D2Y9QeiN.js} +1 -1
- package/bundle/web-dist/client/assets/{services.generated-DzZLnb7S.js → services.generated-CmxXl220.js} +1 -1
- package/bundle/web-dist/client/assets/{show-63BsotX6.js → show-EleAOzJv.js} +3 -3
- package/bundle/web-dist/client/assets/{tokens-C416mWQ-.js → tokens-DxFeKC8Q.js} +1 -1
- package/bundle/web-dist/client/assets/use-update-token-mutation-6J1T9U2-.js +1 -0
- package/bundle/web-dist/client/index.html +3 -3
- package/bundle/web-dist/server/assets/{lazyRouteComponent-BrPAFtBA.js → lazyRouteComponent-BlfOh9S3.js} +1 -1
- package/bundle/web-dist/server/assets/{logs-CKM6W3W6.js → logs-DYly4ipQ.js} +3 -3
- package/bundle/web-dist/server/assets/monit-CYyY2S2f.js +1577 -0
- package/bundle/web-dist/server/assets/{routes-VY2um2KO.js → routes-Dqu3osXt.js} +4 -4
- package/bundle/web-dist/server/assets/{sd.generated-Cwg2f53z.js → sd.generated-CE6D5clm.js} +1 -1
- package/bundle/web-dist/server/assets/{services.generated-CsotZP44.js → services.generated-DyZUzXiq.js} +39 -2
- package/bundle/web-dist/server/assets/{show-CV2UFjaH.js → show-BDul8xLb.js} +3 -3
- package/bundle/web-dist/server/assets/{tokens-DfGj1y2v.js → tokens-fzMW4G74.js} +4 -4
- package/bundle/web-dist/server/assets/{use-update-token-mutation-BL96w-Pg.js → use-update-token-mutation-BejUW5sw.js} +1 -1
- package/bundle/web-dist/server/entry-server.generated.js +71 -27
- package/package.json +2 -2
- package/skills/qgrid/references/ai-sdk-provider-contract.md +25 -0
- package/bundle/web-dist/client/assets/index-D0dRwMp0.js +0 -78
- package/bundle/web-dist/client/assets/index-Dc-qeEPm.css +0 -1
- package/bundle/web-dist/client/assets/use-update-token-mutation-BV6msjuy.js +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { Z as __toESM, _ as require_jsx_runtime, g as useQueryClient, p as require_react_dom, v as require_react } from "./sd.generated-CE6D5clm.js";
|
|
2
|
+
import { a as TokenService, n as QgridService } from "./services.generated-DyZUzXiq.js";
|
|
3
|
+
import { i as Q } from "../entry-server.generated.js";
|
|
4
4
|
import { r as formatUsd } from "./cost-CSH_t17I.js";
|
|
5
|
-
import { t as useUpdateTokenMutation } from "./use-update-token-mutation-
|
|
5
|
+
import { t as useUpdateTokenMutation } from "./use-update-token-mutation-BejUW5sw.js";
|
|
6
6
|
//#region ../../node_modules/.pnpm/@dnd-kit+utilities@3.2.2_react@19.2.4/node_modules/@dnd-kit/utilities/dist/utilities.esm.js
|
|
7
7
|
var import_react_dom = /* @__PURE__ */ __toESM(require_react_dom());
|
|
8
8
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
@@ -22660,4 +22660,4 @@ SD.enumLabels = (enumName) => {
|
|
|
22660
22660
|
} });
|
|
22661
22661
|
};
|
|
22662
22662
|
//#endregion
|
|
22663
|
-
export {
|
|
22663
|
+
export { functionalUpdate as A, resolveStaleTime as B, infiniteQueryBehavior as C, notifyManager as D, onlineManager as E, matchQuery as F, timeoutManager as G, shouldThrowError as H, noop$2 as I, __commonJSMin as J, focusManager as K, partialMatchKey as L, hashQueryKeyByOptions as M, isValidTimeout as N, pendingThenable as O, matchMutation as P, replaceData as R, hasPreviousPage as S, fetchState as T, skipToken as U, shallowEqualObjects as V, timeUntilStale as W, __require as X, __exportAll as Y, __toESM as Z, require_jsx_runtime as _, fetch$1 as a, getDefaultState as b, _enum as c, string as d, require_lib as f, useQueryClient as g, QueryClientProvider as h, dedupeAndFlatten as i, hashKey as j, environmentManager as k, number as l, require_shim as m, SUPPORTED_LOCALES as n, useRefreshable as o, require_react_dom as p, Subscribable as q, setLocale as r, useSSEStream as s, SD as t, object as u, require_react as v, Query as w, hasNextPage as x, Mutation as y, resolveEnabled as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { B as resolveStaleTime, C as infiniteQueryBehavior, D as notifyManager, G as timeoutManager, H as shouldThrowError, I as noop, K as focusManager, N as isValidTimeout, O as pendingThenable, R as replaceData, S as hasPreviousPage, T as fetchState, V as shallowEqualObjects, W as timeUntilStale, Z as __toESM, _ as require_jsx_runtime, a as fetch, b as getDefaultState, f as require_lib, g as useQueryClient, i as dedupeAndFlatten, j as hashKey, k as environmentManager, o as useRefreshable, q as Subscribable, s as useSSEStream, v as require_react, x as hasNextPage, z as resolveEnabled } from "./sd.generated-CE6D5clm.js";
|
|
2
2
|
//#region ../../node_modules/.pnpm/@tanstack+query-core@5.95.2/node_modules/@tanstack/query-core/build/modern/queryObserver.js
|
|
3
3
|
var QueryObserver = class extends Subscribable {
|
|
4
4
|
constructor(client, options) {
|
|
@@ -1120,8 +1120,45 @@ var QgridService;
|
|
|
1120
1120
|
...options
|
|
1121
1121
|
}));
|
|
1122
1122
|
})(QgridService || (QgridService = {}));
|
|
1123
|
+
var MonitService;
|
|
1124
|
+
(function(_MonitService) {
|
|
1125
|
+
async function monitLogs(cursor) {
|
|
1126
|
+
return fetch({
|
|
1127
|
+
method: "GET",
|
|
1128
|
+
url: `/api/monit/monitLogs?${import_lib.default.stringify({ cursor })}`
|
|
1129
|
+
});
|
|
1130
|
+
}
|
|
1131
|
+
_MonitService.monitLogs = monitLogs;
|
|
1132
|
+
const monitLogsQueryOptions = _MonitService.monitLogsQueryOptions = (cursor) => queryOptions({
|
|
1133
|
+
queryKey: [
|
|
1134
|
+
"Monit",
|
|
1135
|
+
"monitLogs",
|
|
1136
|
+
cursor
|
|
1137
|
+
],
|
|
1138
|
+
queryFn: () => monitLogs(cursor)
|
|
1139
|
+
});
|
|
1140
|
+
_MonitService.useMonitLogs = (cursor, options) => useRefreshable(useQuery({
|
|
1141
|
+
...monitLogsQueryOptions(cursor),
|
|
1142
|
+
...options
|
|
1143
|
+
}));
|
|
1144
|
+
async function monitInfo() {
|
|
1145
|
+
return fetch({
|
|
1146
|
+
method: "GET",
|
|
1147
|
+
url: `/api/monit/monitInfo`
|
|
1148
|
+
});
|
|
1149
|
+
}
|
|
1150
|
+
_MonitService.monitInfo = monitInfo;
|
|
1151
|
+
const monitInfoQueryOptions = _MonitService.monitInfoQueryOptions = () => queryOptions({
|
|
1152
|
+
queryKey: ["Monit", "monitInfo"],
|
|
1153
|
+
queryFn: () => monitInfo()
|
|
1154
|
+
});
|
|
1155
|
+
_MonitService.useMonitInfo = (options) => useRefreshable(useQuery({
|
|
1156
|
+
...monitInfoQueryOptions(),
|
|
1157
|
+
...options
|
|
1158
|
+
}));
|
|
1159
|
+
})(MonitService || (MonitService = {}));
|
|
1123
1160
|
RequestLogService.useRequestLogs, RequestLogService.useRequestLogsInfinite;
|
|
1124
1161
|
RequestLogStepService.useRequestLogSteps, RequestLogStepService.useRequestLogStepsInfinite;
|
|
1125
1162
|
TokenService.useTokens, TokenService.useTokensInfinite;
|
|
1126
1163
|
//#endregion
|
|
1127
|
-
export {
|
|
1164
|
+
export { TokenService as a, RequestLogStepService as i, QgridService as n, useMutation as o, RequestLogService as r, useQuery as s, MonitService as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { J as
|
|
2
|
-
import {
|
|
3
|
-
import { a as Link } from "./lazyRouteComponent-
|
|
1
|
+
import { J as __commonJSMin, Y as __exportAll, Z as __toESM, _ as require_jsx_runtime, v as require_react } from "./sd.generated-CE6D5clm.js";
|
|
2
|
+
import { i as RequestLogStepService, r as RequestLogService } from "./services.generated-DyZUzXiq.js";
|
|
3
|
+
import { a as Link } from "./lazyRouteComponent-BlfOh9S3.js";
|
|
4
4
|
import { t as Route } from "../entry-server.generated.js";
|
|
5
5
|
import { n as formatMicroUsd, t as cacheHitRate } from "./cost-CSH_t17I.js";
|
|
6
6
|
import minpath from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { i as
|
|
4
|
-
import { t as useUpdateTokenMutation } from "./use-update-token-mutation-
|
|
1
|
+
import { Z as __toESM, _ as require_jsx_runtime, g as useQueryClient, v as require_react } from "./sd.generated-CE6D5clm.js";
|
|
2
|
+
import { a as TokenService, n as QgridService } from "./services.generated-DyZUzXiq.js";
|
|
3
|
+
import { i as Q, o as lucideKeyRound } from "../entry-server.generated.js";
|
|
4
|
+
import { t as useUpdateTokenMutation } from "./use-update-token-mutation-BejUW5sw.js";
|
|
5
5
|
//#region ~icons/lucide/plus.jsx
|
|
6
6
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
7
7
|
var import_jsx_runtime = require_jsx_runtime();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as QgridService, o as useMutation } from "./services.generated-DyZUzXiq.js";
|
|
2
2
|
//#region src/services/token/use-update-token-mutation.ts
|
|
3
3
|
function useUpdateTokenMutation() {
|
|
4
4
|
return useMutation({ mutationFn: ({ id, name, quotaThreshold, weight }) => QgridService.updateToken(id, name, quotaThreshold, weight) });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as
|
|
2
|
-
import { A as decodePath, C as findRouteMatch, D as createLRUCache, E as processRouteTree, F as last, I as replaceEqualDeep, M as findLast, N as functionalUpdate$1, O as invariant, P as isPromise, S as findFlatMatch, T as processRouteMasks, _ as interpolatePath, a as Link$1, b as trimPath, c as usePrevious$1, d as useRouter, f as getRouterContext, g as cleanPath, h as isNotFound, i as createRootRouteWithContext, j as deepEqual$2, k as createControlledPromise, l as matchContext, m as rootRouteId, n as createFileRoute, p as warning, r as createLazyFileRoute, s as useLayoutEffect$3, t as lazyRouteComponent, u as useRouterState, v as joinPaths, w as findSingleMatch, x as trimPathRight, y as resolvePath } from "./assets/lazyRouteComponent-
|
|
1
|
+
import { A as functionalUpdate, B as resolveStaleTime, C as infiniteQueryBehavior, D as notifyManager, E as onlineManager, F as matchQuery, I as noop$1, J as __commonJSMin, K as focusManager, L as partialMatchKey, M as hashQueryKeyByOptions, P as matchMutation, U as skipToken, X as __require, Z as __toESM, _ as require_jsx_runtime, c as _enum, d as string, h as QueryClientProvider, j as hashKey, l as number, m as require_shim, n as SUPPORTED_LOCALES, p as require_react_dom, q as Subscribable, r as setLocale, t as SD, u as object, v as require_react, w as Query, y as Mutation } from "./assets/sd.generated-CE6D5clm.js";
|
|
2
|
+
import { A as decodePath, C as findRouteMatch, D as createLRUCache, E as processRouteTree, F as last, I as replaceEqualDeep, M as findLast, N as functionalUpdate$1, O as invariant, P as isPromise, S as findFlatMatch, T as processRouteMasks, _ as interpolatePath, a as Link$1, b as trimPath, c as usePrevious$1, d as useRouter, f as getRouterContext, g as cleanPath, h as isNotFound, i as createRootRouteWithContext, j as deepEqual$2, k as createControlledPromise, l as matchContext, m as rootRouteId, n as createFileRoute, p as warning, r as createLazyFileRoute, s as useLayoutEffect$3, t as lazyRouteComponent, u as useRouterState, v as joinPaths, w as findSingleMatch, x as trimPathRight, y as resolvePath } from "./assets/lazyRouteComponent-BlfOh9S3.js";
|
|
3
3
|
//#region ../../node_modules/.pnpm/@tanstack+query-core@5.95.2/node_modules/@tanstack/query-core/build/modern/hydration.js
|
|
4
4
|
function defaultTransformerFn(data) {
|
|
5
5
|
return data;
|
|
@@ -22659,6 +22659,22 @@ var lucideKeyRound = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg
|
|
|
22659
22659
|
})
|
|
22660
22660
|
});
|
|
22661
22661
|
//#endregion
|
|
22662
|
+
//#region ~icons/lucide/terminal.jsx
|
|
22663
|
+
var lucideTerminal = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", {
|
|
22664
|
+
viewBox: "0 0 24 24",
|
|
22665
|
+
width: "1.2em",
|
|
22666
|
+
height: "1.2em",
|
|
22667
|
+
...props,
|
|
22668
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
22669
|
+
fill: "none",
|
|
22670
|
+
stroke: "currentColor",
|
|
22671
|
+
strokeLinecap: "round",
|
|
22672
|
+
strokeLinejoin: "round",
|
|
22673
|
+
strokeWidth: 2,
|
|
22674
|
+
d: "M12 19h8M4 17l6-6l-6-6"
|
|
22675
|
+
})
|
|
22676
|
+
});
|
|
22677
|
+
//#endregion
|
|
22662
22678
|
//#region src/components/Sidebar.tsx
|
|
22663
22679
|
var sections = [{
|
|
22664
22680
|
label: "Overview",
|
|
@@ -22669,17 +22685,25 @@ var sections = [{
|
|
|
22669
22685
|
}]
|
|
22670
22686
|
}, {
|
|
22671
22687
|
label: "Manage",
|
|
22672
|
-
items: [
|
|
22673
|
-
|
|
22674
|
-
|
|
22675
|
-
|
|
22676
|
-
|
|
22677
|
-
|
|
22678
|
-
|
|
22679
|
-
|
|
22680
|
-
|
|
22688
|
+
items: [
|
|
22689
|
+
{
|
|
22690
|
+
title: "Tokens",
|
|
22691
|
+
path: "/tokens",
|
|
22692
|
+
icon: lucideKeyRound
|
|
22693
|
+
},
|
|
22694
|
+
{
|
|
22695
|
+
title: "Request Logs",
|
|
22696
|
+
path: "/logs",
|
|
22697
|
+
icon: lucideFileText
|
|
22698
|
+
},
|
|
22699
|
+
{
|
|
22700
|
+
title: "Server Logs",
|
|
22701
|
+
path: "/monit",
|
|
22702
|
+
icon: lucideTerminal
|
|
22703
|
+
}
|
|
22704
|
+
]
|
|
22681
22705
|
}];
|
|
22682
|
-
var qgridVersion = "2.4.
|
|
22706
|
+
var qgridVersion = "2.4.7";
|
|
22683
22707
|
function Sidebar({ className }) {
|
|
22684
22708
|
const pathname = useRouterState({ select: (s) => s.location.pathname });
|
|
22685
22709
|
const isActive = (path) => {
|
|
@@ -22735,7 +22759,8 @@ function Sidebar({ className }) {
|
|
|
22735
22759
|
var ROUTE_TITLES = {
|
|
22736
22760
|
"/": "Dashboard",
|
|
22737
22761
|
"/tokens": "Tokens",
|
|
22738
|
-
"/logs": "Request Logs"
|
|
22762
|
+
"/logs": "Request Logs",
|
|
22763
|
+
"/monit": "Server Logs"
|
|
22739
22764
|
};
|
|
22740
22765
|
function getBreadcrumb(pathname) {
|
|
22741
22766
|
if (pathname.startsWith("/requests/show")) return {
|
|
@@ -44513,7 +44538,7 @@ function SonamuProvider({ children }) {
|
|
|
44513
44538
|
}
|
|
44514
44539
|
//#endregion
|
|
44515
44540
|
//#region src/routes/__root.tsx
|
|
44516
|
-
var Route$
|
|
44541
|
+
var Route$5 = createRootRouteWithContext()({
|
|
44517
44542
|
head: () => ({ meta: [
|
|
44518
44543
|
{ charSet: "utf-8" },
|
|
44519
44544
|
{
|
|
@@ -44525,7 +44550,7 @@ var Route$4 = createRootRouteWithContext()({
|
|
|
44525
44550
|
component: RootComponent
|
|
44526
44551
|
});
|
|
44527
44552
|
function RootComponent() {
|
|
44528
|
-
const { queryClient } = Route$
|
|
44553
|
+
const { queryClient } = Route$5.useRouteContext();
|
|
44529
44554
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("html", {
|
|
44530
44555
|
lang: "en",
|
|
44531
44556
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("head", { children: [
|
|
@@ -44559,11 +44584,24 @@ function RootComponent() {
|
|
|
44559
44584
|
}
|
|
44560
44585
|
//#endregion
|
|
44561
44586
|
//#region src/routes/tokens.tsx
|
|
44562
|
-
var $$splitComponentImporter$
|
|
44563
|
-
var Route$
|
|
44587
|
+
var $$splitComponentImporter$4 = () => import("./assets/tokens-fzMW4G74.js");
|
|
44588
|
+
var Route$4 = createFileRoute("/tokens")({ component: lazyRouteComponent($$splitComponentImporter$4, "component") });
|
|
44589
|
+
//#endregion
|
|
44590
|
+
//#region src/routes/monit.tsx
|
|
44591
|
+
var $$splitComponentImporter$3 = () => import("./assets/monit-CYyY2S2f.js");
|
|
44592
|
+
var monitSearchSchema = object({ level: _enum([
|
|
44593
|
+
"all",
|
|
44594
|
+
"scaling",
|
|
44595
|
+
"warn",
|
|
44596
|
+
"error"
|
|
44597
|
+
]).optional().default("all") });
|
|
44598
|
+
var Route$3 = createFileRoute("/monit")({
|
|
44599
|
+
validateSearch: monitSearchSchema,
|
|
44600
|
+
component: lazyRouteComponent($$splitComponentImporter$3, "component")
|
|
44601
|
+
});
|
|
44564
44602
|
//#endregion
|
|
44565
44603
|
//#region src/routes/logs.tsx
|
|
44566
|
-
var $$splitComponentImporter$2 = () => import("./assets/logs-
|
|
44604
|
+
var $$splitComponentImporter$2 = () => import("./assets/logs-DYly4ipQ.js");
|
|
44567
44605
|
var logsSearchSchema = object({
|
|
44568
44606
|
token: string().optional(),
|
|
44569
44607
|
project: string().optional(),
|
|
@@ -44575,11 +44613,11 @@ var Route$2 = createFileRoute("/logs")({
|
|
|
44575
44613
|
});
|
|
44576
44614
|
//#endregion
|
|
44577
44615
|
//#region src/routes/index.tsx
|
|
44578
|
-
var $$splitComponentImporter$1 = () => import("./assets/routes-
|
|
44616
|
+
var $$splitComponentImporter$1 = () => import("./assets/routes-Dqu3osXt.js");
|
|
44579
44617
|
var Route$1 = createFileRoute("/")({ component: lazyRouteComponent($$splitComponentImporter$1, "component") });
|
|
44580
44618
|
//#endregion
|
|
44581
44619
|
//#region src/routes/requests/show.tsx
|
|
44582
|
-
var $$splitComponentImporter = () => import("./assets/show-
|
|
44620
|
+
var $$splitComponentImporter = () => import("./assets/show-BDul8xLb.js");
|
|
44583
44621
|
var showSearchSchema = object({ id: number() });
|
|
44584
44622
|
var Route = createFileRoute("/requests/show")({
|
|
44585
44623
|
validateSearch: showSearchSchema,
|
|
@@ -44587,31 +44625,37 @@ var Route = createFileRoute("/requests/show")({
|
|
|
44587
44625
|
});
|
|
44588
44626
|
//#endregion
|
|
44589
44627
|
//#region src/routeTree.gen.ts
|
|
44590
|
-
var TokensRoute = Route$
|
|
44628
|
+
var TokensRoute = Route$4.update({
|
|
44591
44629
|
id: "/tokens",
|
|
44592
44630
|
path: "/tokens",
|
|
44593
|
-
getParentRoute: () => Route$
|
|
44631
|
+
getParentRoute: () => Route$5
|
|
44632
|
+
});
|
|
44633
|
+
var MonitRoute = Route$3.update({
|
|
44634
|
+
id: "/monit",
|
|
44635
|
+
path: "/monit",
|
|
44636
|
+
getParentRoute: () => Route$5
|
|
44594
44637
|
});
|
|
44595
44638
|
var LogsRoute = Route$2.update({
|
|
44596
44639
|
id: "/logs",
|
|
44597
44640
|
path: "/logs",
|
|
44598
|
-
getParentRoute: () => Route$
|
|
44641
|
+
getParentRoute: () => Route$5
|
|
44599
44642
|
});
|
|
44600
44643
|
var rootRouteChildren = {
|
|
44601
44644
|
IndexRoute: Route$1.update({
|
|
44602
44645
|
id: "/",
|
|
44603
44646
|
path: "/",
|
|
44604
|
-
getParentRoute: () => Route$
|
|
44647
|
+
getParentRoute: () => Route$5
|
|
44605
44648
|
}),
|
|
44606
44649
|
LogsRoute,
|
|
44650
|
+
MonitRoute,
|
|
44607
44651
|
TokensRoute,
|
|
44608
44652
|
RequestsShowRoute: Route.update({
|
|
44609
44653
|
id: "/requests/show",
|
|
44610
44654
|
path: "/requests/show",
|
|
44611
|
-
getParentRoute: () => Route$
|
|
44655
|
+
getParentRoute: () => Route$5
|
|
44612
44656
|
})
|
|
44613
44657
|
};
|
|
44614
|
-
var routeTree = Route$
|
|
44658
|
+
var routeTree = Route$5._addFileChildren(rootRouteChildren)._addFileTypes();
|
|
44615
44659
|
//#endregion
|
|
44616
44660
|
//#region src/entry-server.generated.tsx
|
|
44617
44661
|
/**
|
|
@@ -44642,4 +44686,4 @@ async function render(url, preloadedData = []) {
|
|
|
44642
44686
|
};
|
|
44643
44687
|
}
|
|
44644
44688
|
//#endregion
|
|
44645
|
-
export {
|
|
44689
|
+
export { clsx as a, Q as i, Route$2 as n, lucideKeyRound as o, Route$3 as r, render, Route as t };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cartanova/qgrid-cli",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.7",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/cartanova-ai/qgrid"
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"knex": "^3.1.0",
|
|
41
41
|
"pg": "^8.16.3",
|
|
42
42
|
"radashi": "^12.2.0",
|
|
43
|
-
"sonamu": "
|
|
43
|
+
"sonamu": "0.9.9",
|
|
44
44
|
"typescript": "5.9.3",
|
|
45
45
|
"zod": "^4.3.6"
|
|
46
46
|
},
|
|
@@ -49,6 +49,31 @@ qgrid-specific behavior is controlled through `providerOptions.qgrid`. Explain t
|
|
|
49
49
|
|
|
50
50
|
`providerOptions.qgrid` does not currently support `projectName` or `project_name`. Prefer `QGRID_PROJECT_NAME` for the default project label; use config `projectName` only when a caller needs to override that default.
|
|
51
51
|
|
|
52
|
+
## OpenAI/Codex Fast mode
|
|
53
|
+
|
|
54
|
+
qgrid supports Codex Fast mode per request through `providerOptions.qgrid.serviceTier`. Pass `"fast"`; qgrid forwards it through the OpenAI route to Codex `turn/start`, and Codex normalizes the legacy `fast` value to the upstream `priority` service tier.
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
const result = await generateText({
|
|
58
|
+
model: qgrid("openai/gpt-5.6-terra"),
|
|
59
|
+
prompt,
|
|
60
|
+
providerOptions: {
|
|
61
|
+
qgrid: {
|
|
62
|
+
serviceTier: "fast",
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Fast mode contract:
|
|
69
|
+
|
|
70
|
+
- It is OpenAI/Codex-only. Do not send it to `anthropic/*` models.
|
|
71
|
+
- It works on both `generateText` and `streamText`; image generation remains non-stream for unrelated reasons.
|
|
72
|
+
- Omit `serviceTier` for normal/default routing. qgrid's current API accepts `"fast"` and `"flex"`; callers should not send Codex's normalized `"priority"` value directly.
|
|
73
|
+
- qgrid is a pass-through for this selection. Codex applies the tier only when its Fast mode feature is enabled and the selected model advertises support; otherwise Codex can omit the unsupported tier.
|
|
74
|
+
- Fast mode changes upstream service-tier routing, not qgrid worker capacity. It does not change WPT, client concurrency, queue behavior, or worker autoscaling.
|
|
75
|
+
- Do not promise a fixed latency improvement. Verify TTFT, duration, throughput, and quota consumption with a workload-specific A/B test.
|
|
76
|
+
|
|
52
77
|
## Request construction
|
|
53
78
|
|
|
54
79
|
The provider sends `POST /api/qgrid/query` for generate and `prepareStream` plus SSE for stream.
|