@posthog/wizard 1.8.3 → 1.8.5
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/dist/src/utils/query.js
CHANGED
|
@@ -9,8 +9,6 @@ const zod_to_json_schema_1 = require("zod-to-json-schema");
|
|
|
9
9
|
const urls_1 = require("./urls");
|
|
10
10
|
const analytics_1 = require("./analytics");
|
|
11
11
|
const axios_2 = require("axios");
|
|
12
|
-
const fixture_tracker_1 = require("../../e2e-tests/mocks/fixture-tracker");
|
|
13
|
-
const handlers_1 = require("../../e2e-tests/mocks/handlers");
|
|
14
12
|
const query = async ({ message, model = 'o4-mini', region, schema, wizardHash, }) => {
|
|
15
13
|
const jsonSchema = (0, zod_to_json_schema_1.zodToJsonSchema)(schema, 'schema').definitions;
|
|
16
14
|
const response = await axios_1.default
|
|
@@ -21,7 +19,7 @@ const query = async ({ message, model = 'o4-mini', region, schema, wizardHash, }
|
|
|
21
19
|
}, {
|
|
22
20
|
headers: {
|
|
23
21
|
'X-PostHog-Wizard-Hash': wizardHash,
|
|
24
|
-
...(
|
|
22
|
+
...(process.env.RECORD_FIXTURES === 'true'
|
|
25
23
|
? { 'X-PostHog-Wizard-Fixture-Generation': true }
|
|
26
24
|
: {}),
|
|
27
25
|
},
|
|
@@ -43,12 +41,13 @@ const query = async ({ message, model = 'o4-mini', region, schema, wizardHash, }
|
|
|
43
41
|
throw new Error(`Invalid response from wizard: ${validation.error.message}`);
|
|
44
42
|
}
|
|
45
43
|
if (process.env.NODE_ENV === 'test') {
|
|
44
|
+
const { fixtureTracker } = await import('../../e2e-tests/mocks/fixture-tracker.js');
|
|
46
45
|
const requestBody = JSON.stringify({
|
|
47
46
|
message,
|
|
48
47
|
model,
|
|
49
48
|
json_schema: { ...jsonSchema, name: 'schema', strict: true },
|
|
50
49
|
});
|
|
51
|
-
|
|
50
|
+
fixtureTracker.saveQueryFixture(requestBody, validation.data);
|
|
52
51
|
}
|
|
53
52
|
return validation.data;
|
|
54
53
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/utils/query.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,2DAAqD;AAErD,iCAA+C;AAC/C,2CAAwC;AACxC,iCAAmC;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/utils/query.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,2DAAqD;AAErD,iCAA+C;AAC/C,2CAAwC;AACxC,iCAAmC;AAU5B,MAAM,KAAK,GAAG,KAAK,EAAK,EAC7B,OAAO,EACP,KAAK,GAAG,SAAS,EACjB,MAAM,EACN,MAAM,EACN,UAAU,GACM,EAAc,EAAE;IAChC,MAAM,UAAU,GAAG,IAAA,oCAAe,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,WAAW,CAAC;IAEjE,MAAM,QAAQ,GAAG,MAAM,eAAK;SACzB,IAAI,CACH,GAAG,IAAA,4BAAqB,EAAC,MAAM,CAAC,mBAAmB,EACnD;QACE,OAAO;QACP,KAAK;QACL,WAAW,EAAE,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;KAC7D,EACD;QACE,OAAO,EAAE;YACP,uBAAuB,EAAE,UAAU;YACnC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM;gBACxC,CAAC,CAAC,EAAE,qCAAqC,EAAE,IAAI,EAAE;gBACjD,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CACF;SACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,IAAI,KAAK,YAAY,kBAAU,EAAE,CAAC;YAChC,qBAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE;gBAChC,oBAAoB,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM;gBAC5C,OAAO;gBACP,KAAK;gBACL,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IAEL,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,iCAAiC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAC5D,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QACpC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CACrC,0CAA0C,CAC3C,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,OAAO;YACP,KAAK;YACL,WAAW,EAAE,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;SAC7D,CAAC,CAAC;QAEH,cAAc,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC;AACzB,CAAC,CAAC;AA/DW,QAAA,KAAK,SA+DhB","sourcesContent":["import axios from 'axios';\nimport type { ZodSchema } from 'zod';\nimport { zodToJsonSchema } from 'zod-to-json-schema';\nimport type { AIModel, CloudRegion } from './types';\nimport { getCloudUrlFromRegion } from './urls';\nimport { analytics } from './analytics';\nimport { AxiosError } from 'axios';\n\nexport interface QueryOptions<S> {\n message: string;\n model?: AIModel;\n region: CloudRegion;\n schema: ZodSchema<S>;\n wizardHash: string;\n}\n\nexport const query = async <S>({\n message,\n model = 'o4-mini',\n region,\n schema,\n wizardHash,\n}: QueryOptions<S>): Promise<S> => {\n const jsonSchema = zodToJsonSchema(schema, 'schema').definitions;\n\n const response = await axios\n .post<{ data: unknown }>(\n `${getCloudUrlFromRegion(region)}/api/wizard/query`,\n {\n message,\n model,\n json_schema: { ...jsonSchema, name: 'schema', strict: true },\n },\n {\n headers: {\n 'X-PostHog-Wizard-Hash': wizardHash,\n ...(process.env.RECORD_FIXTURES === 'true'\n ? { 'X-PostHog-Wizard-Fixture-Generation': true }\n : {}),\n },\n },\n )\n .catch((error) => {\n if (error instanceof AxiosError) {\n analytics.captureException(error, {\n response_status_code: error.response?.status,\n message,\n model,\n json_schema: jsonSchema,\n type: 'wizard_query_error',\n });\n }\n\n throw error;\n });\n\n const validation = schema.safeParse(response.data.data);\n\n if (!validation.success) {\n throw new Error(\n `Invalid response from wizard: ${validation.error.message}`,\n );\n }\n\n if (process.env.NODE_ENV === 'test') {\n const { fixtureTracker } = await import(\n '../../e2e-tests/mocks/fixture-tracker.js'\n );\n\n const requestBody = JSON.stringify({\n message,\n model,\n json_schema: { ...jsonSchema, name: 'schema', strict: true },\n });\n\n fixtureTracker.saveQueryFixture(requestBody, validation.data);\n }\n\n return validation.data;\n};\n"]}
|
package/package.json
CHANGED