@qa-ai-stlc/schemas 0.0.0

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.
Files changed (73) hide show
  1. package/README.md +12 -0
  2. package/dist/api-surface.d.ts +61 -0
  3. package/dist/api-surface.d.ts.map +1 -0
  4. package/dist/api-surface.js +22 -0
  5. package/dist/api-surface.js.map +1 -0
  6. package/dist/approval-ledger.d.ts +23 -0
  7. package/dist/approval-ledger.d.ts.map +1 -0
  8. package/dist/approval-ledger.js +22 -0
  9. package/dist/approval-ledger.js.map +1 -0
  10. package/dist/artifacts.d.ts +285 -0
  11. package/dist/artifacts.d.ts.map +1 -0
  12. package/dist/artifacts.js +30 -0
  13. package/dist/artifacts.js.map +1 -0
  14. package/dist/config.d.ts +179 -0
  15. package/dist/config.d.ts.map +1 -0
  16. package/dist/config.js +89 -0
  17. package/dist/config.js.map +1 -0
  18. package/dist/defect.d.ts +72 -0
  19. package/dist/defect.d.ts.map +1 -0
  20. package/dist/defect.js +46 -0
  21. package/dist/defect.js.map +1 -0
  22. package/dist/evidence.d.ts +48 -0
  23. package/dist/evidence.d.ts.map +1 -0
  24. package/dist/evidence.js +40 -0
  25. package/dist/evidence.js.map +1 -0
  26. package/dist/index.d.ts +15 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +17 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/json-schema/api-surface.json +67 -0
  31. package/dist/json-schema/approval-ledger.json +56 -0
  32. package/dist/json-schema/config.json +261 -0
  33. package/dist/json-schema/defect-draft.json +120 -0
  34. package/dist/json-schema/evidence.json +61 -0
  35. package/dist/json-schema/manifest.json +42 -0
  36. package/dist/json-schema/rca.json +84 -0
  37. package/dist/json-schema/run-result.json +87 -0
  38. package/dist/json-schema/scope.json +91 -0
  39. package/dist/json-schema/selector-registry.json +107 -0
  40. package/dist/json-schema/test-case.json +83 -0
  41. package/dist/manifest.d.ts +15 -0
  42. package/dist/manifest.d.ts.map +1 -0
  43. package/dist/manifest.js +19 -0
  44. package/dist/manifest.js.map +1 -0
  45. package/dist/primitives.d.ts +10 -0
  46. package/dist/primitives.d.ts.map +1 -0
  47. package/dist/primitives.js +21 -0
  48. package/dist/primitives.js.map +1 -0
  49. package/dist/rca.d.ts +41 -0
  50. package/dist/rca.d.ts.map +1 -0
  51. package/dist/rca.js +26 -0
  52. package/dist/rca.js.map +1 -0
  53. package/dist/run-result.d.ts +43 -0
  54. package/dist/run-result.d.ts.map +1 -0
  55. package/dist/run-result.js +44 -0
  56. package/dist/run-result.js.map +1 -0
  57. package/dist/scope.d.ts +42 -0
  58. package/dist/scope.d.ts.map +1 -0
  59. package/dist/scope.js +24 -0
  60. package/dist/scope.js.map +1 -0
  61. package/dist/selector-registry.d.ts +60 -0
  62. package/dist/selector-registry.d.ts.map +1 -0
  63. package/dist/selector-registry.js +31 -0
  64. package/dist/selector-registry.js.map +1 -0
  65. package/dist/test-case.d.ts +41 -0
  66. package/dist/test-case.d.ts.map +1 -0
  67. package/dist/test-case.js +25 -0
  68. package/dist/test-case.js.map +1 -0
  69. package/dist/version.d.ts +5 -0
  70. package/dist/version.d.ts.map +1 -0
  71. package/dist/version.js +9 -0
  72. package/dist/version.js.map +1 -0
  73. package/package.json +30 -0
@@ -0,0 +1,42 @@
1
+ import { z } from 'zod';
2
+ export declare const RequirementSourceSchema: z.ZodUnion<readonly [z.ZodObject<{
3
+ kind: z.ZodLiteral<"file">;
4
+ path: z.ZodString;
5
+ }, z.core.$strip>, z.ZodObject<{
6
+ kind: z.ZodLiteral<"text">;
7
+ label: z.ZodString;
8
+ }, z.core.$strip>]>;
9
+ export type RequirementSource = z.infer<typeof RequirementSourceSchema>;
10
+ export declare const RequirementSchema: z.ZodObject<{
11
+ id: z.ZodString;
12
+ title: z.ZodString;
13
+ description: z.ZodOptional<z.ZodString>;
14
+ source: z.ZodUnion<readonly [z.ZodObject<{
15
+ kind: z.ZodLiteral<"file">;
16
+ path: z.ZodString;
17
+ }, z.core.$strip>, z.ZodObject<{
18
+ kind: z.ZodLiteral<"text">;
19
+ label: z.ZodString;
20
+ }, z.core.$strip>]>;
21
+ inScope: z.ZodBoolean;
22
+ }, z.core.$strip>;
23
+ export type Requirement = z.infer<typeof RequirementSchema>;
24
+ export declare const ScopeSchema: z.ZodObject<{
25
+ schemaVersion: z.ZodDefault<z.ZodLiteral<1>>;
26
+ generatedAt: z.ZodISODateTime;
27
+ requirements: z.ZodArray<z.ZodObject<{
28
+ id: z.ZodString;
29
+ title: z.ZodString;
30
+ description: z.ZodOptional<z.ZodString>;
31
+ source: z.ZodUnion<readonly [z.ZodObject<{
32
+ kind: z.ZodLiteral<"file">;
33
+ path: z.ZodString;
34
+ }, z.core.$strip>, z.ZodObject<{
35
+ kind: z.ZodLiteral<"text">;
36
+ label: z.ZodString;
37
+ }, z.core.$strip>]>;
38
+ inScope: z.ZodBoolean;
39
+ }, z.core.$strip>>;
40
+ }, z.core.$strip>;
41
+ export type Scope = z.infer<typeof ScopeSchema>;
42
+ //# sourceMappingURL=scope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../src/scope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB;;;;;;mBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;iBAM5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAI5D,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;iBAItB,CAAC;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
package/dist/scope.js ADDED
@@ -0,0 +1,24 @@
1
+ // Copyright The QA-AI-STLC Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { z } from 'zod';
4
+ import { IdentifierSchema, IsoDateTimeSchema, RelativePathSchema } from './primitives.js';
5
+ import { SCHEMA_VERSION, SchemaVersionSchema } from './version.js';
6
+ export const RequirementSourceSchema = z.union([
7
+ z.object({ kind: z.literal('file'), path: RelativePathSchema }),
8
+ z.object({ kind: z.literal('text'), label: z.string().min(1) }),
9
+ ]);
10
+ export const RequirementSchema = z.object({
11
+ id: IdentifierSchema,
12
+ title: z.string().min(1),
13
+ description: z.string().optional(),
14
+ source: RequirementSourceSchema,
15
+ inScope: z.boolean(),
16
+ });
17
+ // `qa scope` renders this artifact from the operator's requirement sources (development plan
18
+ // section 2.4); the framework never fetches requirements from a tracker itself.
19
+ export const ScopeSchema = z.object({
20
+ schemaVersion: SchemaVersionSchema.default(SCHEMA_VERSION),
21
+ generatedAt: IsoDateTimeSchema,
22
+ requirements: z.array(RequirementSchema),
23
+ });
24
+ //# sourceMappingURL=scope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../src/scope.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sCAAsC;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC/D,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;CAChE,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,EAAE,EAAE,gBAAgB;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,MAAM,EAAE,uBAAuB;IAC/B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAGH,6FAA6F;AAC7F,gFAAgF;AAChF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,aAAa,EAAE,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;IAC1D,WAAW,EAAE,iBAAiB;IAC9B,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;CACzC,CAAC,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+ export declare const LocatorCandidateSchema: z.ZodObject<{
3
+ strategy: z.ZodString;
4
+ value: z.ZodString;
5
+ fragile: z.ZodBoolean;
6
+ }, z.core.$strip>;
7
+ export type LocatorCandidate = z.infer<typeof LocatorCandidateSchema>;
8
+ export declare const SelectorElementSourceSchema: z.ZodEnum<{
9
+ manual: "manual";
10
+ crawl: "crawl";
11
+ static: "static";
12
+ }>;
13
+ export type SelectorElementSource = z.infer<typeof SelectorElementSourceSchema>;
14
+ export declare const SelectorElementSchema: z.ZodObject<{
15
+ elementId: z.ZodString;
16
+ kind: z.ZodString;
17
+ library: z.ZodOptional<z.ZodString>;
18
+ locatorCandidates: z.ZodArray<z.ZodObject<{
19
+ strategy: z.ZodString;
20
+ value: z.ZodString;
21
+ fragile: z.ZodBoolean;
22
+ }, z.core.$strip>>;
23
+ stabilityScore: z.ZodNumber;
24
+ lastVerifiedAt: z.ZodISODateTime;
25
+ pii: z.ZodBoolean;
26
+ dynamicText: z.ZodBoolean;
27
+ source: z.ZodEnum<{
28
+ manual: "manual";
29
+ crawl: "crawl";
30
+ static: "static";
31
+ }>;
32
+ deprecatedAt: z.ZodOptional<z.ZodISODateTime>;
33
+ }, z.core.$strip>;
34
+ export type SelectorElement = z.infer<typeof SelectorElementSchema>;
35
+ export declare const SelectorRegistrySchema: z.ZodObject<{
36
+ schemaVersion: z.ZodDefault<z.ZodLiteral<1>>;
37
+ generatedAt: z.ZodISODateTime;
38
+ elements: z.ZodArray<z.ZodObject<{
39
+ elementId: z.ZodString;
40
+ kind: z.ZodString;
41
+ library: z.ZodOptional<z.ZodString>;
42
+ locatorCandidates: z.ZodArray<z.ZodObject<{
43
+ strategy: z.ZodString;
44
+ value: z.ZodString;
45
+ fragile: z.ZodBoolean;
46
+ }, z.core.$strip>>;
47
+ stabilityScore: z.ZodNumber;
48
+ lastVerifiedAt: z.ZodISODateTime;
49
+ pii: z.ZodBoolean;
50
+ dynamicText: z.ZodBoolean;
51
+ source: z.ZodEnum<{
52
+ manual: "manual";
53
+ crawl: "crawl";
54
+ static: "static";
55
+ }>;
56
+ deprecatedAt: z.ZodOptional<z.ZodISODateTime>;
57
+ }, z.core.$strip>>;
58
+ }, z.core.$strip>;
59
+ export type SelectorRegistry = z.infer<typeof SelectorRegistrySchema>;
60
+ //# sourceMappingURL=selector-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-registry.d.ts","sourceRoot":"","sources":["../src/selector-registry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,2BAA2B;;;;EAAwC,CAAC;AACjF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAIhF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;iBAWhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;iBAIjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ // Copyright The QA-AI-STLC Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { z } from 'zod';
4
+ import { IdentifierSchema, IsoDateTimeSchema } from './primitives.js';
5
+ import { SCHEMA_VERSION, SchemaVersionSchema } from './version.js';
6
+ export const LocatorCandidateSchema = z.object({
7
+ strategy: z.string().min(1),
8
+ value: z.string().min(1),
9
+ fragile: z.boolean(),
10
+ });
11
+ export const SelectorElementSourceSchema = z.enum(['crawl', 'static', 'manual']);
12
+ // `elementId` is the stable key generated tests import through the locator module (ADR-006); it
13
+ // never changes even when every locator candidate underneath it does.
14
+ export const SelectorElementSchema = z.object({
15
+ elementId: IdentifierSchema,
16
+ kind: z.string().min(1),
17
+ library: z.string().optional(),
18
+ locatorCandidates: z.array(LocatorCandidateSchema).min(1),
19
+ stabilityScore: z.number().min(0).max(1),
20
+ lastVerifiedAt: IsoDateTimeSchema,
21
+ pii: z.boolean(),
22
+ dynamicText: z.boolean(),
23
+ source: SelectorElementSourceSchema,
24
+ deprecatedAt: IsoDateTimeSchema.optional(),
25
+ });
26
+ export const SelectorRegistrySchema = z.object({
27
+ schemaVersion: SchemaVersionSchema.default(SCHEMA_VERSION),
28
+ generatedAt: IsoDateTimeSchema,
29
+ elements: z.array(SelectorElementSchema),
30
+ });
31
+ //# sourceMappingURL=selector-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-registry.js","sourceRoot":"","sources":["../src/selector-registry.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sCAAsC;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAGjF,gGAAgG;AAChG,sEAAsE;AACtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,gBAAgB;IAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,cAAc,EAAE,iBAAiB;IACjC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,MAAM,EAAE,2BAA2B;IACnC,YAAY,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,aAAa,EAAE,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;IAC1D,WAAW,EAAE,iBAAiB;IAC9B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CACzC,CAAC,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { z } from 'zod';
2
+ export declare const TestTypeSchema: z.ZodEnum<{
3
+ e2e: "e2e";
4
+ api: "api";
5
+ a11y: "a11y";
6
+ }>;
7
+ export type TestType = z.infer<typeof TestTypeSchema>;
8
+ export declare const TestCaseStepSchema: z.ZodObject<{
9
+ description: z.ZodString;
10
+ }, z.core.$strip>;
11
+ export type TestCaseStep = z.infer<typeof TestCaseStepSchema>;
12
+ export declare const TestCaseStatusSchema: z.ZodEnum<{
13
+ draft: "draft";
14
+ rejected: "rejected";
15
+ approved: "approved";
16
+ }>;
17
+ export type TestCaseStatus = z.infer<typeof TestCaseStatusSchema>;
18
+ export declare const TestCaseSchema: z.ZodObject<{
19
+ schemaVersion: z.ZodDefault<z.ZodLiteral<1>>;
20
+ id: z.ZodString;
21
+ requirementIds: z.ZodArray<z.ZodString>;
22
+ testType: z.ZodEnum<{
23
+ e2e: "e2e";
24
+ api: "api";
25
+ a11y: "a11y";
26
+ }>;
27
+ title: z.ZodString;
28
+ description: z.ZodOptional<z.ZodString>;
29
+ steps: z.ZodArray<z.ZodObject<{
30
+ description: z.ZodString;
31
+ }, z.core.$strip>>;
32
+ expectedResult: z.ZodString;
33
+ status: z.ZodEnum<{
34
+ draft: "draft";
35
+ rejected: "rejected";
36
+ approved: "approved";
37
+ }>;
38
+ createdAt: z.ZodISODateTime;
39
+ }, z.core.$strip>;
40
+ export type TestCase = z.infer<typeof TestCaseSchema>;
41
+ //# sourceMappingURL=test-case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-case.d.ts","sourceRoot":"","sources":["../src/test-case.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,cAAc;;;;EAAiC,CAAC;AAC7D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,eAAO,MAAM,kBAAkB;;iBAE7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;EAA4C,CAAC;AAC9E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;iBAWzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ // Copyright The QA-AI-STLC Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { z } from 'zod';
4
+ import { IdentifierSchema, IsoDateTimeSchema } from './primitives.js';
5
+ import { SCHEMA_VERSION, SchemaVersionSchema } from './version.js';
6
+ // Matches the testing scope's four decidable types (development plan section 2.7); security has
7
+ // no test cases of its own because the on-demand audit runs outside this pipeline.
8
+ export const TestTypeSchema = z.enum(['e2e', 'api', 'a11y']);
9
+ export const TestCaseStepSchema = z.object({
10
+ description: z.string().min(1),
11
+ });
12
+ export const TestCaseStatusSchema = z.enum(['draft', 'approved', 'rejected']);
13
+ export const TestCaseSchema = z.object({
14
+ schemaVersion: SchemaVersionSchema.default(SCHEMA_VERSION),
15
+ id: IdentifierSchema,
16
+ requirementIds: z.array(IdentifierSchema),
17
+ testType: TestTypeSchema,
18
+ title: z.string().min(1),
19
+ description: z.string().optional(),
20
+ steps: z.array(TestCaseStepSchema).min(1),
21
+ expectedResult: z.string().min(1),
22
+ status: TestCaseStatusSchema,
23
+ createdAt: IsoDateTimeSchema,
24
+ });
25
+ //# sourceMappingURL=test-case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-case.js","sourceRoot":"","sources":["../src/test-case.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sCAAsC;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnE,gGAAgG;AAChG,mFAAmF;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AAG7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAG9E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,aAAa,EAAE,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;IAC1D,EAAE,EAAE,gBAAgB;IACpB,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACzC,QAAQ,EAAE,cAAc;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,MAAM,EAAE,oBAAoB;IAC5B,SAAS,EAAE,iBAAiB;CAC7B,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { z } from 'zod';
2
+ export declare const SCHEMA_VERSION = 1;
3
+ export declare const SchemaVersionSchema: z.ZodLiteral<1>;
4
+ export type SchemaVersion = z.infer<typeof SchemaVersionSchema>;
5
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,eAAO,MAAM,mBAAmB,iBAA4B,CAAC;AAC7D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ // Copyright The QA-AI-STLC Authors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { z } from 'zod';
4
+ // Every artifact schema carries this version so `qa validate` and the upgrade path (development
5
+ // plan section 9) can detect an artifact written by an older, incompatible schema instead of
6
+ // misreading its fields silently.
7
+ export const SCHEMA_VERSION = 1;
8
+ export const SchemaVersionSchema = z.literal(SCHEMA_VERSION);
9
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sCAAsC;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gGAAgG;AAChG,6FAA6F;AAC7F,kCAAkC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "@qa-ai-stlc/schemas",
3
+ "version": "0.0.0",
4
+ "description": "Zod schemas for every QA-AI-STLC artifact: the versioned contract between agents and the engine.",
5
+ "type": "module",
6
+ "license": "Apache-2.0",
7
+ "homepage": "https://github.com/Klim-101/QA-AI-STLC/tree/main/packages/schemas#readme",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/Klim-101/QA-AI-STLC.git",
11
+ "directory": "packages/schemas"
12
+ },
13
+ "bugs": "https://github.com/Klim-101/QA-AI-STLC/issues",
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "exports": {
18
+ ".": "./dist/index.js"
19
+ },
20
+ "scripts": {
21
+ "build": "tsc -b tsconfig.build.json && node ../../scripts/generate-json-schema.mjs",
22
+ "typecheck": "tsc --noEmit -p .",
23
+ "test": "vitest run",
24
+ "test:coverage": "vitest run --coverage",
25
+ "clean": "node ../../scripts/clean-dir.mjs dist"
26
+ },
27
+ "dependencies": {
28
+ "zod": "4.6.5"
29
+ }
30
+ }