@contractspec/lib.contracts 1.56.1 → 1.57.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.
- package/dist/_virtual/{rolldown_runtime.js → _rolldown/runtime.js} +3 -3
- package/dist/app-config/app-config.contracts.d.ts +50 -50
- package/dist/app-config/events.d.ts +27 -27
- package/dist/app-config/lifecycle-contracts.d.ts +54 -54
- package/dist/app-config/runtime.js +3 -3
- package/dist/app-config/validation.js +3 -3
- package/dist/capabilities/capabilities.js +20 -20
- package/dist/capabilities/context.d.ts +0 -1
- package/dist/capabilities/context.js +1 -1
- package/dist/capabilities/guards.d.ts +0 -1
- package/dist/capabilities/index.d.ts +2 -1
- package/dist/capabilities/index.js +2 -1
- package/dist/capabilities/meeting-recorder.d.ts +10 -0
- package/dist/capabilities/meeting-recorder.js +82 -0
- package/dist/capabilities/validation.d.ts +0 -1
- package/dist/client/react/drivers/rn-reusables.d.ts +0 -1
- package/dist/client/react/drivers/shadcn.d.ts +0 -1
- package/dist/client/react/form-render.js +3 -3
- package/dist/contract-registry/schemas.d.ts +2 -2
- package/dist/data-views/registry.d.ts +0 -1
- package/dist/data-views/spec.d.ts +0 -1
- package/dist/docs/commands/docsPublish.command.d.ts +13 -13
- package/dist/docs/contracts.d.ts +103 -103
- package/dist/docs/events/docsGenerated.event.d.ts +13 -13
- package/dist/docs/events/docsPublished.event.d.ts +15 -15
- package/dist/docs/forms/docsSearch.form.d.ts +4 -4
- package/dist/docs/queries/contractReference.query.d.ts +47 -47
- package/dist/docs/queries/docsIndex.query.d.ts +57 -57
- package/dist/docs/tech/llm/llm-integration.docblock.d.ts +0 -1
- package/dist/docs/tech/mcp-endpoints.docblock.js +5 -0
- package/dist/events.d.ts +0 -1
- package/dist/examples/index.d.ts +0 -1
- package/dist/examples/registry.d.ts +0 -1
- package/dist/examples/schema.d.ts +17 -17
- package/dist/experiments/spec.d.ts +2 -4
- package/dist/features/index.d.ts +0 -1
- package/dist/features/types.d.ts +2 -5
- package/dist/forms/forms.d.ts +1 -2
- package/dist/forms/forms.js +1 -2
- package/dist/index.d.ts +42 -1
- package/dist/index.js +36 -1
- package/dist/install.d.ts +2 -5
- package/dist/integrations/docs/integrations.docblock.js +19 -1
- package/dist/integrations/index.d.ts +26 -1
- package/dist/integrations/index.js +20 -1
- package/dist/integrations/meeting-recorder/contracts/index.d.ts +10 -0
- package/dist/integrations/meeting-recorder/contracts/index.js +12 -0
- package/dist/integrations/meeting-recorder/contracts/meetings.d.ts +458 -0
- package/dist/integrations/meeting-recorder/contracts/meetings.js +149 -0
- package/dist/integrations/meeting-recorder/contracts/transcripts.d.ts +173 -0
- package/dist/integrations/meeting-recorder/contracts/transcripts.js +156 -0
- package/dist/integrations/meeting-recorder/contracts/webhooks.d.ts +92 -0
- package/dist/integrations/meeting-recorder/contracts/webhooks.js +82 -0
- package/dist/integrations/meeting-recorder/meeting-recorder.capability.d.ts +7 -0
- package/dist/integrations/meeting-recorder/meeting-recorder.capability.js +21 -0
- package/dist/integrations/meeting-recorder/meeting-recorder.feature.d.ts +11 -0
- package/dist/integrations/meeting-recorder/meeting-recorder.feature.js +67 -0
- package/dist/integrations/meeting-recorder/models.d.ts +407 -0
- package/dist/integrations/meeting-recorder/models.js +295 -0
- package/dist/integrations/meeting-recorder/telemetry.d.ts +16 -0
- package/dist/integrations/meeting-recorder/telemetry.js +42 -0
- package/dist/integrations/openbanking/contracts/accounts.d.ts +66 -66
- package/dist/integrations/openbanking/contracts/balances.d.ts +34 -34
- package/dist/integrations/openbanking/contracts/transactions.d.ts +48 -48
- package/dist/integrations/openbanking/models.d.ts +55 -55
- package/dist/integrations/operations.d.ts +102 -102
- package/dist/integrations/providers/analytics-reader.d.ts +107 -0
- package/dist/integrations/providers/analytics-reader.js +0 -0
- package/dist/integrations/providers/analytics-writer.d.ts +10 -0
- package/dist/integrations/providers/analytics-writer.js +0 -0
- package/dist/integrations/providers/analytics.d.ts +49 -0
- package/dist/integrations/providers/analytics.js +0 -0
- package/dist/integrations/providers/database.d.ts +15 -0
- package/dist/integrations/providers/database.js +0 -0
- package/dist/integrations/providers/fal.d.ts +8 -0
- package/dist/integrations/providers/fal.js +94 -0
- package/dist/integrations/providers/fathom.d.ts +8 -0
- package/dist/integrations/providers/fathom.js +114 -0
- package/dist/integrations/providers/fireflies.d.ts +8 -0
- package/dist/integrations/providers/fireflies.js +98 -0
- package/dist/integrations/providers/gradium.d.ts +8 -0
- package/dist/integrations/providers/gradium.js +92 -0
- package/dist/integrations/providers/granola.d.ts +8 -0
- package/dist/integrations/providers/granola.js +71 -0
- package/dist/integrations/providers/index.d.ts +19 -1
- package/dist/integrations/providers/index.js +13 -1
- package/dist/integrations/providers/jira.d.ts +8 -0
- package/dist/integrations/providers/jira.js +90 -0
- package/dist/integrations/providers/linear.d.ts +8 -0
- package/dist/integrations/providers/linear.js +85 -0
- package/dist/integrations/providers/meeting-recorder.d.ts +132 -0
- package/dist/integrations/providers/meeting-recorder.js +0 -0
- package/dist/integrations/providers/notion.d.ts +8 -0
- package/dist/integrations/providers/notion.js +91 -0
- package/dist/integrations/providers/posthog.d.ts +8 -0
- package/dist/integrations/providers/posthog.js +107 -0
- package/dist/integrations/providers/project-management.d.ts +35 -0
- package/dist/integrations/providers/project-management.js +0 -0
- package/dist/integrations/providers/registry.d.ts +0 -1
- package/dist/integrations/providers/registry.js +24 -0
- package/dist/integrations/providers/supabase-postgres.d.ts +8 -0
- package/dist/integrations/providers/supabase-postgres.js +73 -0
- package/dist/integrations/providers/supabase-vector.d.ts +8 -0
- package/dist/integrations/providers/supabase-vector.js +93 -0
- package/dist/integrations/providers/tldv.d.ts +8 -0
- package/dist/integrations/providers/tldv.js +98 -0
- package/dist/integrations/runtime.js +0 -1
- package/dist/integrations/spec.d.ts +1 -1
- package/dist/jobs/queue.d.ts +0 -1
- package/dist/knowledge/binding.d.ts +1 -3
- package/dist/knowledge/operations.d.ts +66 -66
- package/dist/llm/exporters.d.ts +0 -1
- package/dist/llm/exporters.js +0 -1
- package/dist/llm/prompts.d.ts +0 -1
- package/dist/llm/types.d.ts +0 -1
- package/dist/onboarding-base.d.ts +29 -29
- package/dist/openapi.d.ts +0 -1
- package/dist/operations/operation.d.ts +19 -43
- package/dist/operations/registry.d.ts +0 -1
- package/dist/operations/registry.js +2 -2
- package/dist/operations/report/getContractVerificationStatus.d.ts +10 -10
- package/dist/ownership.d.ts +41 -88
- package/dist/policy/guards.d.ts +0 -1
- package/dist/policy/guards.js +3 -3
- package/dist/policy/index.d.ts +0 -1
- package/dist/policy/validation.d.ts +0 -1
- package/dist/product-intent/contract-patch-intent.d.ts +103 -0
- package/dist/product-intent/contract-patch-intent.js +33 -0
- package/dist/product-intent/contract-spec-patch.d.ts +89 -0
- package/dist/product-intent/contract-spec-patch.js +27 -0
- package/dist/product-intent/evidence.d.ts +17 -0
- package/dist/product-intent/evidence.js +13 -0
- package/dist/product-intent/findings.d.ts +60 -0
- package/dist/product-intent/findings.js +17 -0
- package/dist/product-intent/impact-report.d.ts +60 -0
- package/dist/product-intent/impact-report.js +27 -0
- package/dist/product-intent/index.d.ts +16 -0
- package/dist/product-intent/index.js +17 -0
- package/dist/product-intent/insights.d.ts +65 -0
- package/dist/product-intent/insights.js +23 -0
- package/dist/product-intent/opportunity-brief.d.ts +195 -0
- package/dist/product-intent/opportunity-brief.js +42 -0
- package/dist/product-intent/problems.d.ts +62 -0
- package/dist/product-intent/problems.js +22 -0
- package/dist/product-intent/registry.d.ts +32 -0
- package/dist/product-intent/registry.js +49 -0
- package/dist/product-intent/runtime.d.ts +103 -0
- package/dist/product-intent/runtime.js +101 -0
- package/dist/product-intent/spec.d.ts +676 -0
- package/dist/product-intent/spec.js +53 -0
- package/dist/product-intent/task-pack.d.ts +101 -0
- package/dist/product-intent/task-pack.js +34 -0
- package/dist/product-intent/tickets.d.ts +70 -0
- package/dist/product-intent/tickets.js +24 -0
- package/dist/product-intent/types.d.ts +12 -0
- package/dist/product-intent/types.js +13 -0
- package/dist/product-intent/ui-wireframe.d.ts +103 -0
- package/dist/product-intent/ui-wireframe.js +33 -0
- package/dist/registry-utils.d.ts +0 -1
- package/dist/registry-utils.js +3 -3
- package/dist/resources.js +1 -1
- package/dist/schema-to-markdown.d.ts +0 -1
- package/dist/server/contracts-adapter-input.js +2 -2
- package/dist/server/graphql-pothos.d.ts +0 -1
- package/dist/server/mcp/createMcpServer.d.ts +0 -1
- package/dist/server/rest-express.d.ts +0 -1
- package/dist/server/rest-generic.js +3 -3
- package/dist/server/rest-next-app.d.ts +0 -1
- package/dist/tests/spec.d.ts +0 -1
- package/dist/translations/registry.d.ts +0 -1
- package/dist/translations/spec.d.ts +0 -1
- package/dist/translations/validation.d.ts +0 -1
- package/dist/types.d.ts +5 -12
- package/dist/versioning/types.d.ts +0 -1
- package/dist/versioning/utils.d.ts +0 -1
- package/dist/workflow/adapters/memory-store.d.ts +0 -1
- package/dist/workflow/context.d.ts +0 -1
- package/dist/workflow/context.js +2 -2
- package/dist/workflow/runner.d.ts +1 -2
- package/dist/workspace-config/contractsrc-schema.d.ts +0 -1
- package/dist/workspace-config/contractsrc-types.d.ts +1 -3
- package/package.json +110 -32
- package/dist/integrations/providers/impls/elevenlabs-voice.d.ts +0 -20
- package/dist/integrations/providers/impls/elevenlabs-voice.js +0 -95
- package/dist/integrations/providers/impls/gcs-storage.d.ts +0 -24
- package/dist/integrations/providers/impls/gcs-storage.js +0 -88
- package/dist/integrations/providers/impls/gmail-inbound.d.ts +0 -26
- package/dist/integrations/providers/impls/gmail-inbound.js +0 -200
- package/dist/integrations/providers/impls/gmail-outbound.d.ts +0 -18
- package/dist/integrations/providers/impls/gmail-outbound.js +0 -105
- package/dist/integrations/providers/impls/google-calendar.d.ts +0 -23
- package/dist/integrations/providers/impls/google-calendar.js +0 -154
- package/dist/integrations/providers/impls/index.d.ts +0 -15
- package/dist/integrations/providers/impls/index.js +0 -16
- package/dist/integrations/providers/impls/mistral-embedding.d.ts +0 -23
- package/dist/integrations/providers/impls/mistral-embedding.js +0 -41
- package/dist/integrations/providers/impls/mistral-llm.d.ts +0 -31
- package/dist/integrations/providers/impls/mistral-llm.js +0 -247
- package/dist/integrations/providers/impls/postmark-email.d.ts +0 -19
- package/dist/integrations/providers/impls/postmark-email.js +0 -55
- package/dist/integrations/providers/impls/powens-client.d.ts +0 -124
- package/dist/integrations/providers/impls/powens-client.js +0 -171
- package/dist/integrations/providers/impls/powens-openbanking.d.ts +0 -27
- package/dist/integrations/providers/impls/powens-openbanking.js +0 -218
- package/dist/integrations/providers/impls/provider-factory.d.ts +0 -26
- package/dist/integrations/providers/impls/provider-factory.js +0 -146
- package/dist/integrations/providers/impls/qdrant-vector.d.ts +0 -24
- package/dist/integrations/providers/impls/qdrant-vector.js +0 -69
- package/dist/integrations/providers/impls/stripe-payments.d.ts +0 -28
- package/dist/integrations/providers/impls/stripe-payments.js +0 -202
- package/dist/integrations/providers/impls/twilio-sms.d.ts +0 -20
- package/dist/integrations/providers/impls/twilio-sms.js +0 -58
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { StabilityEnum } from "../ownership.js";
|
|
2
|
+
import { InsightExtractionModel } from "./insights.js";
|
|
3
|
+
import { EvidenceFindingExtractionModel } from "./findings.js";
|
|
4
|
+
import { ProblemGroupingModel } from "./problems.js";
|
|
5
|
+
import { OpportunityBriefModel } from "./opportunity-brief.js";
|
|
6
|
+
import { ContractPatchIntentModel } from "./contract-patch-intent.js";
|
|
7
|
+
import { ContractSpecPatchModel } from "./contract-spec-patch.js";
|
|
8
|
+
import { ImpactReportModel } from "./impact-report.js";
|
|
9
|
+
import { TaskPackModel } from "./task-pack.js";
|
|
10
|
+
import { TicketCollectionModel } from "./tickets.js";
|
|
11
|
+
import "./types.js";
|
|
12
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
13
|
+
import * as z$2 from "zod";
|
|
14
|
+
|
|
15
|
+
//#region src/product-intent/spec.ts
|
|
16
|
+
const ProductIntentMetaSchema = z$2.object({
|
|
17
|
+
key: z$2.string().min(1),
|
|
18
|
+
version: z$2.string().min(1),
|
|
19
|
+
description: z$2.string().min(1),
|
|
20
|
+
stability: z$2.nativeEnum(StabilityEnum),
|
|
21
|
+
owners: z$2.array(z$2.string().min(1)),
|
|
22
|
+
tags: z$2.array(z$2.string().min(1)),
|
|
23
|
+
title: z$2.string().min(1).optional(),
|
|
24
|
+
domain: z$2.string().min(1).optional(),
|
|
25
|
+
docId: z$2.array(z$2.string().min(1)).optional(),
|
|
26
|
+
goal: z$2.string().min(1).optional(),
|
|
27
|
+
context: z$2.string().min(1).optional()
|
|
28
|
+
});
|
|
29
|
+
const ProductIntentSpecSchema = z$2.object({
|
|
30
|
+
id: z$2.string().min(1),
|
|
31
|
+
meta: ProductIntentMetaSchema,
|
|
32
|
+
question: z$2.string().min(1),
|
|
33
|
+
runtimeContext: z$2.unknown().optional(),
|
|
34
|
+
findings: EvidenceFindingExtractionModel.getZod().optional(),
|
|
35
|
+
insights: InsightExtractionModel.getZod().optional(),
|
|
36
|
+
problems: ProblemGroupingModel.getZod().optional(),
|
|
37
|
+
brief: OpportunityBriefModel.getZod().optional(),
|
|
38
|
+
tickets: TicketCollectionModel.getZod().optional(),
|
|
39
|
+
patchIntent: ContractPatchIntentModel.getZod().optional(),
|
|
40
|
+
patch: ContractSpecPatchModel.getZod().optional(),
|
|
41
|
+
impact: ImpactReportModel.getZod().optional(),
|
|
42
|
+
tasks: TaskPackModel.getZod().optional()
|
|
43
|
+
});
|
|
44
|
+
const ProductIntentSpecModel = new ZodSchemaType(ProductIntentSpecSchema, { name: "ProductIntentSpec" });
|
|
45
|
+
/**
|
|
46
|
+
* Helper to define a ProductIntentSpec with proper type inference.
|
|
47
|
+
*/
|
|
48
|
+
function defineProductIntentSpec(spec) {
|
|
49
|
+
return spec;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { ProductIntentSpecModel, defineProductIntentSpec };
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/task-pack.d.ts
|
|
5
|
+
declare const TaskSurfaceSchema: z$2.ZodEnum<{
|
|
6
|
+
policy: "policy";
|
|
7
|
+
tests: "tests";
|
|
8
|
+
docs: "docs";
|
|
9
|
+
api: "api";
|
|
10
|
+
db: "db";
|
|
11
|
+
ui: "ui";
|
|
12
|
+
workflows: "workflows";
|
|
13
|
+
other: "other";
|
|
14
|
+
}>;
|
|
15
|
+
type TaskSurface = z$2.infer<typeof TaskSurfaceSchema>;
|
|
16
|
+
declare const TaskSchema: z$2.ZodObject<{
|
|
17
|
+
id: z$2.ZodString;
|
|
18
|
+
title: z$2.ZodString;
|
|
19
|
+
surface: z$2.ZodArray<z$2.ZodEnum<{
|
|
20
|
+
policy: "policy";
|
|
21
|
+
tests: "tests";
|
|
22
|
+
docs: "docs";
|
|
23
|
+
api: "api";
|
|
24
|
+
db: "db";
|
|
25
|
+
ui: "ui";
|
|
26
|
+
workflows: "workflows";
|
|
27
|
+
other: "other";
|
|
28
|
+
}>>;
|
|
29
|
+
why: z$2.ZodString;
|
|
30
|
+
acceptance: z$2.ZodArray<z$2.ZodString>;
|
|
31
|
+
agentPrompt: z$2.ZodString;
|
|
32
|
+
dependsOn: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
33
|
+
}, z$2.core.$strip>;
|
|
34
|
+
declare const TaskModel: ZodSchemaType<z$2.ZodObject<{
|
|
35
|
+
id: z$2.ZodString;
|
|
36
|
+
title: z$2.ZodString;
|
|
37
|
+
surface: z$2.ZodArray<z$2.ZodEnum<{
|
|
38
|
+
policy: "policy";
|
|
39
|
+
tests: "tests";
|
|
40
|
+
docs: "docs";
|
|
41
|
+
api: "api";
|
|
42
|
+
db: "db";
|
|
43
|
+
ui: "ui";
|
|
44
|
+
workflows: "workflows";
|
|
45
|
+
other: "other";
|
|
46
|
+
}>>;
|
|
47
|
+
why: z$2.ZodString;
|
|
48
|
+
acceptance: z$2.ZodArray<z$2.ZodString>;
|
|
49
|
+
agentPrompt: z$2.ZodString;
|
|
50
|
+
dependsOn: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
51
|
+
}, z$2.core.$strip>>;
|
|
52
|
+
type Task = z$2.infer<typeof TaskSchema>;
|
|
53
|
+
declare const TaskPackSchema: z$2.ZodObject<{
|
|
54
|
+
packId: z$2.ZodString;
|
|
55
|
+
patchId: z$2.ZodString;
|
|
56
|
+
overview: z$2.ZodString;
|
|
57
|
+
tasks: z$2.ZodArray<z$2.ZodObject<{
|
|
58
|
+
id: z$2.ZodString;
|
|
59
|
+
title: z$2.ZodString;
|
|
60
|
+
surface: z$2.ZodArray<z$2.ZodEnum<{
|
|
61
|
+
policy: "policy";
|
|
62
|
+
tests: "tests";
|
|
63
|
+
docs: "docs";
|
|
64
|
+
api: "api";
|
|
65
|
+
db: "db";
|
|
66
|
+
ui: "ui";
|
|
67
|
+
workflows: "workflows";
|
|
68
|
+
other: "other";
|
|
69
|
+
}>>;
|
|
70
|
+
why: z$2.ZodString;
|
|
71
|
+
acceptance: z$2.ZodArray<z$2.ZodString>;
|
|
72
|
+
agentPrompt: z$2.ZodString;
|
|
73
|
+
dependsOn: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
74
|
+
}, z$2.core.$strip>>;
|
|
75
|
+
}, z$2.core.$strip>;
|
|
76
|
+
declare const TaskPackModel: ZodSchemaType<z$2.ZodObject<{
|
|
77
|
+
packId: z$2.ZodString;
|
|
78
|
+
patchId: z$2.ZodString;
|
|
79
|
+
overview: z$2.ZodString;
|
|
80
|
+
tasks: z$2.ZodArray<z$2.ZodObject<{
|
|
81
|
+
id: z$2.ZodString;
|
|
82
|
+
title: z$2.ZodString;
|
|
83
|
+
surface: z$2.ZodArray<z$2.ZodEnum<{
|
|
84
|
+
policy: "policy";
|
|
85
|
+
tests: "tests";
|
|
86
|
+
docs: "docs";
|
|
87
|
+
api: "api";
|
|
88
|
+
db: "db";
|
|
89
|
+
ui: "ui";
|
|
90
|
+
workflows: "workflows";
|
|
91
|
+
other: "other";
|
|
92
|
+
}>>;
|
|
93
|
+
why: z$2.ZodString;
|
|
94
|
+
acceptance: z$2.ZodArray<z$2.ZodString>;
|
|
95
|
+
agentPrompt: z$2.ZodString;
|
|
96
|
+
dependsOn: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
97
|
+
}, z$2.core.$strip>>;
|
|
98
|
+
}, z$2.core.$strip>>;
|
|
99
|
+
type TaskPack = z$2.infer<typeof TaskPackSchema>;
|
|
100
|
+
//#endregion
|
|
101
|
+
export { Task, TaskModel, TaskPack, TaskPackModel, TaskSurface };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/task-pack.ts
|
|
5
|
+
const TaskSurfaceSchema = z$2.enum([
|
|
6
|
+
"api",
|
|
7
|
+
"db",
|
|
8
|
+
"ui",
|
|
9
|
+
"workflows",
|
|
10
|
+
"policy",
|
|
11
|
+
"docs",
|
|
12
|
+
"tests",
|
|
13
|
+
"other"
|
|
14
|
+
]);
|
|
15
|
+
const TaskSchema = z$2.object({
|
|
16
|
+
id: z$2.string().min(1),
|
|
17
|
+
title: z$2.string().min(1),
|
|
18
|
+
surface: z$2.array(TaskSurfaceSchema),
|
|
19
|
+
why: z$2.string().min(1),
|
|
20
|
+
acceptance: z$2.array(z$2.string().min(1)),
|
|
21
|
+
agentPrompt: z$2.string().min(1),
|
|
22
|
+
dependsOn: z$2.array(z$2.string().min(1)).optional()
|
|
23
|
+
});
|
|
24
|
+
const TaskModel = new ZodSchemaType(TaskSchema, { name: "Task" });
|
|
25
|
+
const TaskPackSchema = z$2.object({
|
|
26
|
+
packId: z$2.string().min(1),
|
|
27
|
+
patchId: z$2.string().min(1),
|
|
28
|
+
overview: z$2.string().min(1),
|
|
29
|
+
tasks: z$2.array(TaskSchema)
|
|
30
|
+
});
|
|
31
|
+
const TaskPackModel = new ZodSchemaType(TaskPackSchema, { name: "TaskPack" });
|
|
32
|
+
|
|
33
|
+
//#endregion
|
|
34
|
+
export { TaskModel, TaskPackModel };
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/tickets.d.ts
|
|
5
|
+
declare const TicketPrioritySchema: z$2.ZodEnum<{
|
|
6
|
+
low: "low";
|
|
7
|
+
medium: "medium";
|
|
8
|
+
high: "high";
|
|
9
|
+
}>;
|
|
10
|
+
type TicketPriority = z$2.infer<typeof TicketPrioritySchema>;
|
|
11
|
+
declare const TicketSchema: z$2.ZodObject<{
|
|
12
|
+
ticketId: z$2.ZodString;
|
|
13
|
+
title: z$2.ZodString;
|
|
14
|
+
summary: z$2.ZodString;
|
|
15
|
+
evidenceIds: z$2.ZodArray<z$2.ZodString>;
|
|
16
|
+
acceptanceCriteria: z$2.ZodArray<z$2.ZodString>;
|
|
17
|
+
priority: z$2.ZodOptional<z$2.ZodEnum<{
|
|
18
|
+
low: "low";
|
|
19
|
+
medium: "medium";
|
|
20
|
+
high: "high";
|
|
21
|
+
}>>;
|
|
22
|
+
tags: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
23
|
+
}, z$2.core.$strip>;
|
|
24
|
+
declare const TicketModel: ZodSchemaType<z$2.ZodObject<{
|
|
25
|
+
ticketId: z$2.ZodString;
|
|
26
|
+
title: z$2.ZodString;
|
|
27
|
+
summary: z$2.ZodString;
|
|
28
|
+
evidenceIds: z$2.ZodArray<z$2.ZodString>;
|
|
29
|
+
acceptanceCriteria: z$2.ZodArray<z$2.ZodString>;
|
|
30
|
+
priority: z$2.ZodOptional<z$2.ZodEnum<{
|
|
31
|
+
low: "low";
|
|
32
|
+
medium: "medium";
|
|
33
|
+
high: "high";
|
|
34
|
+
}>>;
|
|
35
|
+
tags: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
36
|
+
}, z$2.core.$strip>>;
|
|
37
|
+
type Ticket = z$2.infer<typeof TicketSchema>;
|
|
38
|
+
declare const TicketCollectionSchema: z$2.ZodObject<{
|
|
39
|
+
tickets: z$2.ZodArray<z$2.ZodObject<{
|
|
40
|
+
ticketId: z$2.ZodString;
|
|
41
|
+
title: z$2.ZodString;
|
|
42
|
+
summary: z$2.ZodString;
|
|
43
|
+
evidenceIds: z$2.ZodArray<z$2.ZodString>;
|
|
44
|
+
acceptanceCriteria: z$2.ZodArray<z$2.ZodString>;
|
|
45
|
+
priority: z$2.ZodOptional<z$2.ZodEnum<{
|
|
46
|
+
low: "low";
|
|
47
|
+
medium: "medium";
|
|
48
|
+
high: "high";
|
|
49
|
+
}>>;
|
|
50
|
+
tags: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
51
|
+
}, z$2.core.$strip>>;
|
|
52
|
+
}, z$2.core.$strip>;
|
|
53
|
+
declare const TicketCollectionModel: ZodSchemaType<z$2.ZodObject<{
|
|
54
|
+
tickets: z$2.ZodArray<z$2.ZodObject<{
|
|
55
|
+
ticketId: z$2.ZodString;
|
|
56
|
+
title: z$2.ZodString;
|
|
57
|
+
summary: z$2.ZodString;
|
|
58
|
+
evidenceIds: z$2.ZodArray<z$2.ZodString>;
|
|
59
|
+
acceptanceCriteria: z$2.ZodArray<z$2.ZodString>;
|
|
60
|
+
priority: z$2.ZodOptional<z$2.ZodEnum<{
|
|
61
|
+
low: "low";
|
|
62
|
+
medium: "medium";
|
|
63
|
+
high: "high";
|
|
64
|
+
}>>;
|
|
65
|
+
tags: z$2.ZodOptional<z$2.ZodArray<z$2.ZodString>>;
|
|
66
|
+
}, z$2.core.$strip>>;
|
|
67
|
+
}, z$2.core.$strip>>;
|
|
68
|
+
type TicketCollection = z$2.infer<typeof TicketCollectionSchema>;
|
|
69
|
+
//#endregion
|
|
70
|
+
export { Ticket, TicketCollection, TicketCollectionModel, TicketModel, TicketPriority };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/tickets.ts
|
|
5
|
+
const TicketPrioritySchema = z$2.enum([
|
|
6
|
+
"low",
|
|
7
|
+
"medium",
|
|
8
|
+
"high"
|
|
9
|
+
]);
|
|
10
|
+
const TicketSchema = z$2.object({
|
|
11
|
+
ticketId: z$2.string().min(1),
|
|
12
|
+
title: z$2.string().min(1),
|
|
13
|
+
summary: z$2.string().min(1),
|
|
14
|
+
evidenceIds: z$2.array(z$2.string().min(1)).min(1),
|
|
15
|
+
acceptanceCriteria: z$2.array(z$2.string().min(1)).min(1),
|
|
16
|
+
priority: TicketPrioritySchema.optional(),
|
|
17
|
+
tags: z$2.array(z$2.string().min(1)).optional()
|
|
18
|
+
});
|
|
19
|
+
const TicketModel = new ZodSchemaType(TicketSchema, { name: "Ticket" });
|
|
20
|
+
const TicketCollectionSchema = z$2.object({ tickets: z$2.array(TicketSchema) });
|
|
21
|
+
const TicketCollectionModel = new ZodSchemaType(TicketCollectionSchema, { name: "TicketCollection" });
|
|
22
|
+
|
|
23
|
+
//#endregion
|
|
24
|
+
export { TicketCollectionModel, TicketModel };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EvidenceChunk, EvidenceChunkModel } from "./evidence.js";
|
|
2
|
+
import { EvidenceFinding, EvidenceFindingExtraction, EvidenceFindingExtractionModel, EvidenceFindingModel } from "./findings.js";
|
|
3
|
+
import { Citation, CitationModel, Insight, InsightExtraction, InsightExtractionModel, InsightModel } from "./insights.js";
|
|
4
|
+
import { ProblemGrouping, ProblemGroupingModel, ProblemSeverity, ProblemStatement, ProblemStatementModel } from "./problems.js";
|
|
5
|
+
import { CitedTextBlock, CitedTextBlockModel, ExpectedImpact, ExpectedImpactModel, ImpactDirection, OpportunityBrief, OpportunityBriefModel, OpportunityConfidence, Risk, RiskModel } from "./opportunity-brief.js";
|
|
6
|
+
import { ContractPatchIntent, ContractPatchIntentModel, PatchChange, PatchChangeModel, PatchChangeType } from "./contract-patch-intent.js";
|
|
7
|
+
import { ContractPatchAdd, ContractPatchAddModel, ContractPatchRemove, ContractPatchRemoveModel, ContractPatchUpdate, ContractPatchUpdateModel, ContractSpecOverlay, ContractSpecOverlayModel, ContractSpecPatch, ContractSpecPatchModel } from "./contract-spec-patch.js";
|
|
8
|
+
import { ImpactReport, ImpactReportModel, ImpactSurfaces, ImpactSurfacesModel } from "./impact-report.js";
|
|
9
|
+
import { Task, TaskModel, TaskPack, TaskPackModel, TaskSurface } from "./task-pack.js";
|
|
10
|
+
import { Ticket, TicketCollection, TicketCollectionModel, TicketModel, TicketPriority } from "./tickets.js";
|
|
11
|
+
import { UiWireframeElement, UiWireframeElementModel, UiWireframeLayout, UiWireframeLayoutModel, UiWireframeRequest, UiWireframeRequestModel, WireframeDevice, WireframeElementType } from "./ui-wireframe.js";
|
|
12
|
+
export { Citation, CitationModel, CitedTextBlock, CitedTextBlockModel, ContractPatchAdd, ContractPatchAddModel, ContractPatchIntent, ContractPatchIntentModel, ContractPatchRemove, ContractPatchRemoveModel, ContractPatchUpdate, ContractPatchUpdateModel, ContractSpecOverlay, ContractSpecOverlayModel, ContractSpecPatch, ContractSpecPatchModel, EvidenceChunk, EvidenceChunkModel, EvidenceFinding, EvidenceFindingExtraction, EvidenceFindingExtractionModel, EvidenceFindingModel, ExpectedImpact, ExpectedImpactModel, ImpactDirection, ImpactReport, ImpactReportModel, ImpactSurfaces, ImpactSurfacesModel, Insight, InsightExtraction, InsightExtractionModel, InsightModel, OpportunityBrief, OpportunityBriefModel, OpportunityConfidence, PatchChange, PatchChangeModel, PatchChangeType, ProblemGrouping, ProblemGroupingModel, ProblemSeverity, ProblemStatement, ProblemStatementModel, Risk, RiskModel, Task, TaskModel, TaskPack, TaskPackModel, TaskSurface, Ticket, TicketCollection, TicketCollectionModel, TicketModel, TicketPriority, UiWireframeElement, UiWireframeElementModel, UiWireframeLayout, UiWireframeLayoutModel, UiWireframeRequest, UiWireframeRequestModel, WireframeDevice, WireframeElementType };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EvidenceChunkModel } from "./evidence.js";
|
|
2
|
+
import { CitationModel, InsightExtractionModel, InsightModel } from "./insights.js";
|
|
3
|
+
import { EvidenceFindingExtractionModel, EvidenceFindingModel } from "./findings.js";
|
|
4
|
+
import { ProblemGroupingModel, ProblemStatementModel } from "./problems.js";
|
|
5
|
+
import { CitedTextBlockModel, ExpectedImpactModel, OpportunityBriefModel, RiskModel } from "./opportunity-brief.js";
|
|
6
|
+
import { ContractPatchIntentModel, PatchChangeModel } from "./contract-patch-intent.js";
|
|
7
|
+
import { ContractPatchAddModel, ContractPatchRemoveModel, ContractPatchUpdateModel, ContractSpecOverlayModel, ContractSpecPatchModel } from "./contract-spec-patch.js";
|
|
8
|
+
import { ImpactReportModel, ImpactSurfacesModel } from "./impact-report.js";
|
|
9
|
+
import { TaskModel, TaskPackModel } from "./task-pack.js";
|
|
10
|
+
import { TicketCollectionModel, TicketModel } from "./tickets.js";
|
|
11
|
+
import { UiWireframeElementModel, UiWireframeLayoutModel, UiWireframeRequestModel } from "./ui-wireframe.js";
|
|
12
|
+
|
|
13
|
+
export { CitationModel, CitedTextBlockModel, ContractPatchAddModel, ContractPatchIntentModel, ContractPatchRemoveModel, ContractPatchUpdateModel, ContractSpecOverlayModel, ContractSpecPatchModel, EvidenceChunkModel, EvidenceFindingExtractionModel, EvidenceFindingModel, ExpectedImpactModel, ImpactReportModel, ImpactSurfacesModel, InsightExtractionModel, InsightModel, OpportunityBriefModel, PatchChangeModel, ProblemGroupingModel, ProblemStatementModel, RiskModel, TaskModel, TaskPackModel, TicketCollectionModel, TicketModel, UiWireframeElementModel, UiWireframeLayoutModel, UiWireframeRequestModel };
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/ui-wireframe.d.ts
|
|
5
|
+
declare const WireframeDeviceSchema: z$2.ZodEnum<{
|
|
6
|
+
mobile: "mobile";
|
|
7
|
+
desktop: "desktop";
|
|
8
|
+
}>;
|
|
9
|
+
type WireframeDevice = z$2.infer<typeof WireframeDeviceSchema>;
|
|
10
|
+
declare const WireframeElementTypeSchema: z$2.ZodEnum<{
|
|
11
|
+
input: "input";
|
|
12
|
+
header: "header";
|
|
13
|
+
text: "text";
|
|
14
|
+
button: "button";
|
|
15
|
+
list: "list";
|
|
16
|
+
card: "card";
|
|
17
|
+
divider: "divider";
|
|
18
|
+
progress: "progress";
|
|
19
|
+
}>;
|
|
20
|
+
type WireframeElementType = z$2.infer<typeof WireframeElementTypeSchema>;
|
|
21
|
+
declare const UiWireframeRequestSchema: z$2.ZodObject<{
|
|
22
|
+
screenName: z$2.ZodString;
|
|
23
|
+
device: z$2.ZodEnum<{
|
|
24
|
+
mobile: "mobile";
|
|
25
|
+
desktop: "desktop";
|
|
26
|
+
}>;
|
|
27
|
+
currentScreenSummary: z$2.ZodString;
|
|
28
|
+
proposedChanges: z$2.ZodArray<z$2.ZodString>;
|
|
29
|
+
}, z$2.core.$strip>;
|
|
30
|
+
declare const UiWireframeRequestModel: ZodSchemaType<z$2.ZodObject<{
|
|
31
|
+
screenName: z$2.ZodString;
|
|
32
|
+
device: z$2.ZodEnum<{
|
|
33
|
+
mobile: "mobile";
|
|
34
|
+
desktop: "desktop";
|
|
35
|
+
}>;
|
|
36
|
+
currentScreenSummary: z$2.ZodString;
|
|
37
|
+
proposedChanges: z$2.ZodArray<z$2.ZodString>;
|
|
38
|
+
}, z$2.core.$strip>>;
|
|
39
|
+
type UiWireframeRequest = z$2.infer<typeof UiWireframeRequestSchema>;
|
|
40
|
+
declare const UiWireframeElementSchema: z$2.ZodObject<{
|
|
41
|
+
type: z$2.ZodEnum<{
|
|
42
|
+
input: "input";
|
|
43
|
+
header: "header";
|
|
44
|
+
text: "text";
|
|
45
|
+
button: "button";
|
|
46
|
+
list: "list";
|
|
47
|
+
card: "card";
|
|
48
|
+
divider: "divider";
|
|
49
|
+
progress: "progress";
|
|
50
|
+
}>;
|
|
51
|
+
label: z$2.ZodString;
|
|
52
|
+
notes: z$2.ZodOptional<z$2.ZodString>;
|
|
53
|
+
}, z$2.core.$strip>;
|
|
54
|
+
declare const UiWireframeElementModel: ZodSchemaType<z$2.ZodObject<{
|
|
55
|
+
type: z$2.ZodEnum<{
|
|
56
|
+
input: "input";
|
|
57
|
+
header: "header";
|
|
58
|
+
text: "text";
|
|
59
|
+
button: "button";
|
|
60
|
+
list: "list";
|
|
61
|
+
card: "card";
|
|
62
|
+
divider: "divider";
|
|
63
|
+
progress: "progress";
|
|
64
|
+
}>;
|
|
65
|
+
label: z$2.ZodString;
|
|
66
|
+
notes: z$2.ZodOptional<z$2.ZodString>;
|
|
67
|
+
}, z$2.core.$strip>>;
|
|
68
|
+
type UiWireframeElement = z$2.infer<typeof UiWireframeElementSchema>;
|
|
69
|
+
declare const UiWireframeLayoutSchema: z$2.ZodObject<{
|
|
70
|
+
layout: z$2.ZodArray<z$2.ZodObject<{
|
|
71
|
+
type: z$2.ZodEnum<{
|
|
72
|
+
input: "input";
|
|
73
|
+
header: "header";
|
|
74
|
+
text: "text";
|
|
75
|
+
button: "button";
|
|
76
|
+
list: "list";
|
|
77
|
+
card: "card";
|
|
78
|
+
divider: "divider";
|
|
79
|
+
progress: "progress";
|
|
80
|
+
}>;
|
|
81
|
+
label: z$2.ZodString;
|
|
82
|
+
notes: z$2.ZodOptional<z$2.ZodString>;
|
|
83
|
+
}, z$2.core.$strip>>;
|
|
84
|
+
}, z$2.core.$strip>;
|
|
85
|
+
declare const UiWireframeLayoutModel: ZodSchemaType<z$2.ZodObject<{
|
|
86
|
+
layout: z$2.ZodArray<z$2.ZodObject<{
|
|
87
|
+
type: z$2.ZodEnum<{
|
|
88
|
+
input: "input";
|
|
89
|
+
header: "header";
|
|
90
|
+
text: "text";
|
|
91
|
+
button: "button";
|
|
92
|
+
list: "list";
|
|
93
|
+
card: "card";
|
|
94
|
+
divider: "divider";
|
|
95
|
+
progress: "progress";
|
|
96
|
+
}>;
|
|
97
|
+
label: z$2.ZodString;
|
|
98
|
+
notes: z$2.ZodOptional<z$2.ZodString>;
|
|
99
|
+
}, z$2.core.$strip>>;
|
|
100
|
+
}, z$2.core.$strip>>;
|
|
101
|
+
type UiWireframeLayout = z$2.infer<typeof UiWireframeLayoutSchema>;
|
|
102
|
+
//#endregion
|
|
103
|
+
export { UiWireframeElement, UiWireframeElementModel, UiWireframeLayout, UiWireframeLayoutModel, UiWireframeRequest, UiWireframeRequestModel, WireframeDevice, WireframeElementType };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ZodSchemaType } from "@contractspec/lib.schema";
|
|
2
|
+
import * as z$2 from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/product-intent/ui-wireframe.ts
|
|
5
|
+
const WireframeDeviceSchema = z$2.enum(["mobile", "desktop"]);
|
|
6
|
+
const WireframeElementTypeSchema = z$2.enum([
|
|
7
|
+
"header",
|
|
8
|
+
"text",
|
|
9
|
+
"input",
|
|
10
|
+
"button",
|
|
11
|
+
"list",
|
|
12
|
+
"card",
|
|
13
|
+
"divider",
|
|
14
|
+
"progress"
|
|
15
|
+
]);
|
|
16
|
+
const UiWireframeRequestSchema = z$2.object({
|
|
17
|
+
screenName: z$2.string().min(1),
|
|
18
|
+
device: WireframeDeviceSchema,
|
|
19
|
+
currentScreenSummary: z$2.string().min(1),
|
|
20
|
+
proposedChanges: z$2.array(z$2.string().min(1))
|
|
21
|
+
});
|
|
22
|
+
const UiWireframeRequestModel = new ZodSchemaType(UiWireframeRequestSchema, { name: "UiWireframeRequest" });
|
|
23
|
+
const UiWireframeElementSchema = z$2.object({
|
|
24
|
+
type: WireframeElementTypeSchema,
|
|
25
|
+
label: z$2.string().min(1),
|
|
26
|
+
notes: z$2.string().min(1).optional()
|
|
27
|
+
});
|
|
28
|
+
const UiWireframeElementModel = new ZodSchemaType(UiWireframeElementSchema, { name: "UiWireframeElement" });
|
|
29
|
+
const UiWireframeLayoutSchema = z$2.object({ layout: z$2.array(UiWireframeElementSchema) });
|
|
30
|
+
const UiWireframeLayoutModel = new ZodSchemaType(UiWireframeLayoutSchema, { name: "UiWireframeLayout" });
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
export { UiWireframeElementModel, UiWireframeLayoutModel, UiWireframeRequestModel };
|
package/dist/registry-utils.d.ts
CHANGED
package/dist/registry-utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __esmMin, __exportAll } from "./_virtual/
|
|
1
|
+
import { __esmMin, __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
|
|
3
3
|
//#region src/registry-utils.ts
|
|
4
4
|
var registry_utils_exports = /* @__PURE__ */ __exportAll({
|
|
@@ -55,9 +55,9 @@ function groupBy(items, keyFn) {
|
|
|
55
55
|
*/
|
|
56
56
|
function groupByToArray(items, keyFn) {
|
|
57
57
|
const map = groupBy(items, keyFn);
|
|
58
|
-
return Array.from(map.entries()).map(([key, items
|
|
58
|
+
return Array.from(map.entries()).map(([key, items]) => ({
|
|
59
59
|
key,
|
|
60
|
-
items
|
|
60
|
+
items
|
|
61
61
|
}));
|
|
62
62
|
}
|
|
63
63
|
/**
|
package/dist/resources.js
CHANGED
|
@@ -16,7 +16,7 @@ var ResourceRegistry = class {
|
|
|
16
16
|
/** Try to match a concrete URI to a template by naive pattern substitution */
|
|
17
17
|
match(uri) {
|
|
18
18
|
for (const tmpl of this.templates) {
|
|
19
|
-
const re =
|
|
19
|
+
const re = new RegExp("^" + tmpl.meta.uriTemplate.replace(/\{[^}]+\}/g, "([^/]+)") + "$");
|
|
20
20
|
const m = uri.match(re);
|
|
21
21
|
if (!m) continue;
|
|
22
22
|
const names = [...tmpl.meta.uriTemplate.matchAll(/\{([^}]+)\}/g)].map((x) => x[1]);
|
|
@@ -51,8 +51,8 @@ function createInputTypeBuilder(builder) {
|
|
|
51
51
|
required: !field.isOptional
|
|
52
52
|
});
|
|
53
53
|
} else if (isFieldType(field.type)) {
|
|
54
|
-
const typeName
|
|
55
|
-
const typeRef = field.isArray ? [typeName
|
|
54
|
+
const typeName = mapScalarName(String(field.type.getPothos().name));
|
|
55
|
+
const typeRef = field.isArray ? [typeName] : typeName;
|
|
56
56
|
acc[key] = t.field({
|
|
57
57
|
type: typeRef,
|
|
58
58
|
required: !field.isOptional
|
|
@@ -5,7 +5,6 @@ import { McpCtxFactories } from "./mcpTypes.js";
|
|
|
5
5
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
6
6
|
|
|
7
7
|
//#region src/server/mcp/createMcpServer.d.ts
|
|
8
|
-
|
|
9
8
|
/**
|
|
10
9
|
* Creates a unified Model Context Protocol (MCP) server exposing operations, resources, prompts,
|
|
11
10
|
* and (optionally) presentations.\n+ *
|
|
@@ -4,7 +4,6 @@ import { RestOptions } from "./rest-generic.js";
|
|
|
4
4
|
import { Request, Router } from "express";
|
|
5
5
|
|
|
6
6
|
//#region src/server/rest-express.d.ts
|
|
7
|
-
|
|
8
7
|
/**
|
|
9
8
|
* Build an Express Router that proxies to the Fetch-style handler.
|
|
10
9
|
* You can mount it at any base path; pass the same basePath in options.
|
|
@@ -104,9 +104,9 @@ function createFetchHandler(reg, ctxFactory, options) {
|
|
|
104
104
|
} catch (err) {
|
|
105
105
|
if (opts.onError) {
|
|
106
106
|
const mapped = opts.onError(err);
|
|
107
|
-
const headers
|
|
108
|
-
if (opts.cors) Object.assign(headers
|
|
109
|
-
return makeJson(mapped.status, mapped.body, headers
|
|
107
|
+
const headers = {};
|
|
108
|
+
if (opts.cors) Object.assign(headers, corsHeaders(opts.cors === true ? {} : opts.cors));
|
|
109
|
+
return makeJson(mapped.status, mapped.body, headers);
|
|
110
110
|
}
|
|
111
111
|
const headers = {};
|
|
112
112
|
if (opts.cors) Object.assign(headers, corsHeaders(opts.cors === true ? {} : opts.cors));
|
package/dist/tests/spec.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import { OptionalVersionedSpecRef } from "../versioning/refs.js";
|
|
|
2
2
|
import { OwnerShipMeta } from "../ownership.js";
|
|
3
3
|
|
|
4
4
|
//#region src/tests/spec.d.ts
|
|
5
|
-
|
|
6
5
|
/**
|
|
7
6
|
* Reference to an operation to be tested.
|
|
8
7
|
* Version is optional; when omitted, refers to the latest version.
|
|
@@ -2,7 +2,6 @@ import { Locale, MessageKey, TranslationMessage, TranslationSpec } from "./spec.
|
|
|
2
2
|
import { TranslationRegistry } from "./registry.js";
|
|
3
3
|
|
|
4
4
|
//#region src/translations/validation.d.ts
|
|
5
|
-
|
|
6
5
|
type TranslationValidationLevel = 'error' | 'warning' | 'info';
|
|
7
6
|
interface TranslationValidationIssue {
|
|
8
7
|
level: TranslationValidationLevel;
|
package/dist/types.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ import { SpecVariantResolver } from "./experiments/spec-resolver.js";
|
|
|
9
9
|
import { EventRegistry } from "./events.js";
|
|
10
10
|
|
|
11
11
|
//#region src/types.d.ts
|
|
12
|
-
|
|
13
12
|
/**
|
|
14
13
|
* Common runtime types for ContractSpec execution.
|
|
15
14
|
*
|
|
@@ -40,7 +39,7 @@ type Channel = 'web' | 'mobile' | 'job' | 'agent' | 'ci';
|
|
|
40
39
|
*
|
|
41
40
|
* Used to identify the kind of spec in registries and runtime operations.
|
|
42
41
|
*/
|
|
43
|
-
type ContractSpecType = 'operation' | 'event' | 'presentation' | 'feature' | 'capability' | 'data-view' | 'form' | 'agent' | 'migration' | 'workflow' | 'experiment' | 'integration' | 'theme' | 'knowledge' | 'telemetry' | 'example' | 'app-config' | 'policy' | 'test-spec' | 'type' | 'knowledge-space';
|
|
42
|
+
type ContractSpecType = 'operation' | 'event' | 'presentation' | 'feature' | 'capability' | 'data-view' | 'form' | 'agent' | 'migration' | 'workflow' | 'experiment' | 'integration' | 'theme' | 'knowledge' | 'telemetry' | 'example' | 'app-config' | 'product-intent' | 'policy' | 'test-spec' | 'type' | 'knowledge-space';
|
|
44
43
|
/**
|
|
45
44
|
* Decision for a specific field access.
|
|
46
45
|
* Used for fine-grained field-level authorization.
|
|
@@ -123,13 +122,9 @@ type TranslationResolver = (key: MessageKey, locale?: Locale) => Promise<string
|
|
|
123
122
|
* Called after validation and guard checks pass.
|
|
124
123
|
*/
|
|
125
124
|
type EventPublisher = (envelope: {
|
|
126
|
-
/** Event key (e.g., "user.created"). */
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
version: string;
|
|
130
|
-
/** Validated event payload. */
|
|
131
|
-
payload: unknown;
|
|
132
|
-
/** Trace ID for correlation. */
|
|
125
|
+
/** Event key (e.g., "user.created"). */key: string; /** Event version. */
|
|
126
|
+
version: string; /** Validated event payload. */
|
|
127
|
+
payload: unknown; /** Trace ID for correlation. */
|
|
133
128
|
traceId?: string;
|
|
134
129
|
}) => Promise<void>;
|
|
135
130
|
/**
|
|
@@ -204,9 +199,7 @@ interface HandlerCtx {
|
|
|
204
199
|
branding?: ResolvedBranding;
|
|
205
200
|
/** Translation context with config and resolver. */
|
|
206
201
|
translation?: {
|
|
207
|
-
/** Resolved translation configuration. */
|
|
208
|
-
config: ResolvedTranslation;
|
|
209
|
-
/** Function to resolve translation keys. */
|
|
202
|
+
/** Resolved translation configuration. */config: ResolvedTranslation; /** Function to resolve translation keys. */
|
|
210
203
|
resolve?: TranslationResolver;
|
|
211
204
|
};
|
|
212
205
|
/** Spec variant resolver for A/B testing and experiments. */
|