@company-semantics/contracts 88.0.0 → 88.1.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/package.json +1 -1
- package/src/api/generated-spec-hash.ts +2 -2
- package/src/api/generated.ts +92 -0
- package/src/generated/openapi-routes.ts +1 -0
- package/src/index.ts +4 -2
- package/src/mcp/README.md +12 -12
- package/src/mcp/capability-graph.ts +1 -1
- package/src/mcp/index.ts +16 -244
- package/src/mcp/tool-descriptor.ts +244 -0
- package/src/org/README.md +212 -0
- package/src/quality/README.md +36 -0
- package/src/quality/__tests__/README.md +27 -0
- package/src/quality/__tests__/run-report.test.ts +99 -0
- package/src/quality/__tests__/vocabulary.test.ts +72 -0
- package/src/quality/index.ts +68 -0
- package/src/quality/run-report.ts +112 -0
- package/src/quality/vocabulary.ts +167 -0
- package/src/system/README.md +1 -1
- package/src/system/capabilities.ts +1 -1
- package/src/system/diagram.ts +1 -1
- package/src/system/feature-status.ts +4 -0
- package/src/system/index.ts +3 -4
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import type { ResourceType } from "./resources";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated Use ToolDomain instead. ToolCategory is too coarse —
|
|
5
|
+
* 'data' conflates discovery, ingestion, and coverage.
|
|
6
|
+
*/
|
|
7
|
+
export type ToolCategory =
|
|
8
|
+
"system" | "data" | "connections" | "automation" | "developer";
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Tool domain taxonomy.
|
|
12
|
+
*
|
|
13
|
+
* Each value maps to a distinct domain boundary in the system architecture.
|
|
14
|
+
* Replaces ToolCategory which was too coarse for resource flow reasoning.
|
|
15
|
+
*
|
|
16
|
+
* - organization: Org settings, membership, billing queries
|
|
17
|
+
* - identity: User profile, auth state, preferences
|
|
18
|
+
* - integrations: OAuth connections, provider management
|
|
19
|
+
* - ingestion: Data import, sync jobs, source configuration
|
|
20
|
+
* - discovery: Search, exploration, content queries
|
|
21
|
+
* - knowledge: Fingerprints, embeddings, knowledge graph
|
|
22
|
+
* - system: Health, status, runtime diagnostics
|
|
23
|
+
*/
|
|
24
|
+
export type ToolDomain =
|
|
25
|
+
| "organization"
|
|
26
|
+
| "identity"
|
|
27
|
+
| "integrations"
|
|
28
|
+
| "ingestion"
|
|
29
|
+
| "discovery"
|
|
30
|
+
| "knowledge"
|
|
31
|
+
| "system";
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Tool visibility levels.
|
|
35
|
+
* Controls who can see the tool in discovery.
|
|
36
|
+
*/
|
|
37
|
+
export type ToolVisibility = "user" | "admin";
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* How the tool can be invoked.
|
|
41
|
+
* - manual: User must explicitly request
|
|
42
|
+
* - assistant: AI can invoke proactively
|
|
43
|
+
* - hybrid: Both manual and assistant invocation
|
|
44
|
+
*/
|
|
45
|
+
export type ToolInvocationMode = "manual" | "assistant" | "hybrid";
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Tool effect classification.
|
|
49
|
+
* Effect classification is orthogonal to requiresConfirmation and requiresApproval.
|
|
50
|
+
* - effectClass: "Does this tool mutate state?"
|
|
51
|
+
* - requiresConfirmation: "Does the user need to approve before execution?"
|
|
52
|
+
* - requiresApproval: "Does this need cross-principal authorization?"
|
|
53
|
+
* An effectful tool may auto-execute (requiresConfirmation: false) for low-risk operations.
|
|
54
|
+
* An effectful tool may require approval without confirmation.
|
|
55
|
+
*/
|
|
56
|
+
export type ToolEffectClass = "pure" | "effectful";
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Tool intent classification.
|
|
60
|
+
*
|
|
61
|
+
* Classifies what the tool does to the system:
|
|
62
|
+
* - read: Pure data retrieval (no side effects)
|
|
63
|
+
* - mutate: State change (creates, updates, deletes)
|
|
64
|
+
* - analysis: Computation over data without mutation (aggregation, scoring)
|
|
65
|
+
*
|
|
66
|
+
* Note: 'control' was removed — system-level operations (health, status,
|
|
67
|
+
* runtime) use 'read' intent in the 'system' domain. Control is a domain
|
|
68
|
+
* classification, not an intent.
|
|
69
|
+
*
|
|
70
|
+
* INVARIANT: intent 'mutate' + risk 'high' → requiresConfirmation must be true.
|
|
71
|
+
* Enforced in backend tool registration, typed here for documentation.
|
|
72
|
+
*/
|
|
73
|
+
export type ToolIntent = "read" | "mutate" | "analysis";
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Tool lifecycle stability classification.
|
|
77
|
+
*
|
|
78
|
+
* - experimental: May change or be removed without notice
|
|
79
|
+
* - stable: Production-ready with backward compatibility guarantees
|
|
80
|
+
* - deprecated: Scheduled for removal, consumers should migrate
|
|
81
|
+
*/
|
|
82
|
+
export type ToolStability = "experimental" | "stable" | "deprecated";
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Tool computational complexity classification.
|
|
86
|
+
*
|
|
87
|
+
* Classifies the cost and latency profile of a tool invocation:
|
|
88
|
+
* - trivial: Sub-100ms, in-memory or single DB lookup
|
|
89
|
+
* - moderate: 100ms-5s, may involve external API calls
|
|
90
|
+
* - heavy: 5s+, batch processing, large data transfers, long-running ops
|
|
91
|
+
*/
|
|
92
|
+
export type ToolComplexity = "trivial" | "moderate" | "heavy";
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Integration provider tag for tools.
|
|
96
|
+
*
|
|
97
|
+
* Known values correspond to registered OAuth providers.
|
|
98
|
+
* Extensible via (string & {}) — new integrations do not require
|
|
99
|
+
* a contracts release, but known values get autocomplete.
|
|
100
|
+
*/
|
|
101
|
+
export type ToolIntegration = "slack" | "google" | "zoom" | (string & {});
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Complete tool descriptor for discovery and invocation.
|
|
105
|
+
*
|
|
106
|
+
* Discovery uses: id, name, description, category
|
|
107
|
+
* Invocation uses: id, requiresConfirmation, invocationMode, effectClass
|
|
108
|
+
*/
|
|
109
|
+
// @vocabulary-exempt reason: MCPToolDescriptor is a single cohesive descriptor consumed by multiple repos; splitting would break consumers
|
|
110
|
+
export interface MCPToolDescriptor {
|
|
111
|
+
/** Unique identifier (matches MCP tool name, e.g., 'cs_help') */
|
|
112
|
+
id: string;
|
|
113
|
+
/** Human-readable name for display */
|
|
114
|
+
name: string;
|
|
115
|
+
/** User-facing description (what it does, not how) */
|
|
116
|
+
description: string;
|
|
117
|
+
/** Grouping category for UI organization */
|
|
118
|
+
category: ToolCategory;
|
|
119
|
+
/** Whether user confirmation is required before execution */
|
|
120
|
+
requiresConfirmation: boolean;
|
|
121
|
+
/**
|
|
122
|
+
* Whether this tool causes durable state change.
|
|
123
|
+
* Effectful = any tool that can cause durable state change (DB writes, external API calls, background job enqueue).
|
|
124
|
+
* Pure = read-only operations, URL generation, status queries.
|
|
125
|
+
*
|
|
126
|
+
* Orthogonal to requiresConfirmation — an effectful tool may auto-execute
|
|
127
|
+
* for low-risk operations, and a pure tool never needs confirmation.
|
|
128
|
+
* The bridge enforces: effectful tools must return previewResponse()
|
|
129
|
+
* with ExecutionIntent, never direct side effects.
|
|
130
|
+
*/
|
|
131
|
+
effectClass: ToolEffectClass;
|
|
132
|
+
/** How the tool can be triggered */
|
|
133
|
+
invocationMode: ToolInvocationMode;
|
|
134
|
+
/** Who can see this tool */
|
|
135
|
+
visibility: ToolVisibility;
|
|
136
|
+
|
|
137
|
+
// --- New fields (PRD-00265) ---
|
|
138
|
+
|
|
139
|
+
/** Domain taxonomy classification. Replaces category for routing and grouping. */
|
|
140
|
+
domain: ToolDomain;
|
|
141
|
+
/**
|
|
142
|
+
* Integration providers this tool interacts with.
|
|
143
|
+
* Empty or omitted for tools that don't touch external integrations.
|
|
144
|
+
*/
|
|
145
|
+
integrations?: ToolIntegration[];
|
|
146
|
+
/**
|
|
147
|
+
* User-impact risk classification.
|
|
148
|
+
* - none: Read-only, no side effects
|
|
149
|
+
* - low: Reversible mutation (can be undone)
|
|
150
|
+
* - moderate: User-visible side effect (notification sent, state changed)
|
|
151
|
+
* - high: Destructive or irreversible (data deletion, external action)
|
|
152
|
+
*
|
|
153
|
+
* INVARIANT: intent 'mutate' + risk 'high' → requiresConfirmation must be true.
|
|
154
|
+
*/
|
|
155
|
+
risk: "none" | "low" | "moderate" | "high";
|
|
156
|
+
/** What the tool does to the system (read, mutate, analysis). */
|
|
157
|
+
intent: ToolIntent;
|
|
158
|
+
/** Lifecycle stability classification. */
|
|
159
|
+
stability: ToolStability;
|
|
160
|
+
/** Computational complexity and latency profile. */
|
|
161
|
+
complexity: ToolComplexity;
|
|
162
|
+
/**
|
|
163
|
+
* Input schema version number.
|
|
164
|
+
* Disambiguates input schema versioning from tool behavior versioning.
|
|
165
|
+
* Increment when the tool's input schema changes shape.
|
|
166
|
+
*/
|
|
167
|
+
schemaVersion: number;
|
|
168
|
+
/**
|
|
169
|
+
* Authorization scopes required to invoke this tool.
|
|
170
|
+
* References scope strings from trust/scopes.ts.
|
|
171
|
+
* Omit for tools with no specific scope requirements.
|
|
172
|
+
*/
|
|
173
|
+
scopes?: string[];
|
|
174
|
+
/**
|
|
175
|
+
* Resource types this tool produces (creates or outputs).
|
|
176
|
+
* Used for capability graph derivation — enables workflow ordering
|
|
177
|
+
* via resource flow instead of explicit `requires` fields.
|
|
178
|
+
*/
|
|
179
|
+
produces?: ResourceType[];
|
|
180
|
+
/**
|
|
181
|
+
* Resource types this tool consumes (requires as input).
|
|
182
|
+
* Used for capability graph derivation — a tool that consumes
|
|
183
|
+
* 'integration.connection' can only run after a tool that produces it.
|
|
184
|
+
*/
|
|
185
|
+
consumes?: ResourceType[];
|
|
186
|
+
/**
|
|
187
|
+
* Mutation-capability gate (ADR-BE-241). When present, the tool is locked
|
|
188
|
+
* unless the viewer's resolved capabilities permit it — the SINGLE source of
|
|
189
|
+
* truth consumed by BOTH the backend execution gate and the frontend tool-lock
|
|
190
|
+
* UI (replacing the previously triplicated ACTION_TOOL_GATES / FIELD_GATES /
|
|
191
|
+
* ACTION_GATES maps).
|
|
192
|
+
* - kind 'field': `path` addresses a FieldCapability in CapabilitiesResponse
|
|
193
|
+
* (e.g. 'org.name', 'profile.fullName'); locked unless state === 'editable'.
|
|
194
|
+
* - kind 'action': `path` addresses an ActionCapability under `.actions`
|
|
195
|
+
* (e.g. 'members.invite', 'orgAdmins.manage'); locked unless 'allowed'.
|
|
196
|
+
* Absent ⇒ ungated (gating is additive).
|
|
197
|
+
*/
|
|
198
|
+
capabilityGate?: { kind: "field" | "action"; path: string };
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Edge in the capability graph connecting two tools via a resource.
|
|
203
|
+
* A tool that produces a resource connects to tools that consume it.
|
|
204
|
+
*
|
|
205
|
+
* @see capability-graph.ts for buildCapabilityGraph() implementation
|
|
206
|
+
*/
|
|
207
|
+
export interface CapabilityGraphEdge {
|
|
208
|
+
/** Tool ID that produces the resource */
|
|
209
|
+
from: string;
|
|
210
|
+
/** Tool ID that consumes the resource */
|
|
211
|
+
to: string;
|
|
212
|
+
/** Resource type flowing between tools */
|
|
213
|
+
resource: ResourceType;
|
|
214
|
+
/** Resource domain (extracted from resource namespace prefix, e.g., 'slack' from 'slack.channel') */
|
|
215
|
+
domain?: string;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Named workflow derived from capability graph paths.
|
|
220
|
+
* Represents a common multi-tool sequence (e.g., "Connect Slack → Ingest → Query").
|
|
221
|
+
*
|
|
222
|
+
* @see capability-graph.ts for buildCapabilityGraph() implementation
|
|
223
|
+
*/
|
|
224
|
+
export interface ToolWorkflow {
|
|
225
|
+
/** Workflow name (e.g., "Slack Onboarding") */
|
|
226
|
+
name: string;
|
|
227
|
+
/** Human-readable description of the workflow */
|
|
228
|
+
description: string;
|
|
229
|
+
/** Ordered list of tool IDs in this workflow */
|
|
230
|
+
steps: string[];
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Capability graph derived from tool resource flow metadata.
|
|
235
|
+
* Built from produces/consumes fields on MCPToolDescriptor.
|
|
236
|
+
*
|
|
237
|
+
* @see capability-graph.ts for buildCapabilityGraph() implementation
|
|
238
|
+
*/
|
|
239
|
+
export interface CapabilityGraph {
|
|
240
|
+
/** Resource flow edges between tools */
|
|
241
|
+
edges: CapabilityGraphEdge[];
|
|
242
|
+
/** Named workflows derived from graph paths */
|
|
243
|
+
workflows: ToolWorkflow[];
|
|
244
|
+
}
|
package/src/org/README.md
CHANGED
|
@@ -17,8 +17,10 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
17
17
|
## Public API
|
|
18
18
|
|
|
19
19
|
- `AcceptInviteRequest` _(type)_ — Request payload for accepting an organization invite.
|
|
20
|
+
- `AccessLevel` _(type)_ — Document access level.
|
|
20
21
|
- `AcknowledgeSystemEventResponse` _(type)_
|
|
21
22
|
- `AcknowledgeSystemEventResponseSchema`
|
|
23
|
+
- `AclEntry` _(type)_
|
|
22
24
|
- `ActionCapability` _(type)_
|
|
23
25
|
- `ActionCapabilitySchema` — An action's gate: allowed, or blocked with the scope that would unlock it.
|
|
24
26
|
- `AuthMethodConfig` _(type)_ — Authentication method configuration.
|
|
@@ -34,6 +36,7 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
34
36
|
- `AuthorityOriginSchema`
|
|
35
37
|
- `AuthoritySource` _(type)_
|
|
36
38
|
- `AuthoritySourceSchema` — Engine-internal authority source.
|
|
39
|
+
- `AuthorizableView` _(type)_ — Type for views that can be checked against VIEWSCOPEMAP.
|
|
37
40
|
- `BATCH_INVITE_PERSONS_MAX` — Cap on one batch.
|
|
38
41
|
- `BATCH_INVITE_SKIP_REASONS` — Why one person in a batch did not receive an invite. - `already-member` — holds an account in this org…
|
|
39
42
|
- `BatchInviteRequest` _(type)_
|
|
@@ -42,11 +45,74 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
42
45
|
- `BatchInviteResponseSchema`
|
|
43
46
|
- `BatchInviteSkipReason` _(type)_
|
|
44
47
|
- `BatchInviteSkipReasonSchema`
|
|
48
|
+
- `COMPANY_MD_COLLAB_MAX_DOC_TEXT_BYTES` — Cap on the MATERIALIZED document text, in UTF-8 bytes of the expanded result.
|
|
49
|
+
- `COMPANY_MD_COLLAB_MAX_PRESENCE_POSITION_CHARS` — Cap on ONE presence position blob (`anchor` or `head`), in base64 chars.
|
|
50
|
+
- `COMPANY_MD_COLLAB_MAX_UPDATE_B64_CHARS` — Cap on ONE encoded update, measured on the base64 payload as it is sent.
|
|
51
|
+
- `COMPANY_MD_COLLAB_PRESENCE_HEARTBEAT_MS` — The cadence clients must re-POST presence at.
|
|
52
|
+
- `COMPANY_MD_COLLAB_PRESENCE_TTL_MS` — How long the server keeps a presence entry alive with no fresh signal.
|
|
53
|
+
- `COMPANY_MD_COLLAB_TEXT_KEY` — The Y.Doc root key holding the document body — a CONTRACT, not a detail.
|
|
54
|
+
- `CanonicalFacts` _(type)_
|
|
55
|
+
- `CanonicalFactsSchema` — The full normalized batch an external-source adapter emits in one pass: every person, org unit, position…
|
|
56
|
+
- `CanonicalOccupancy` _(type)_
|
|
57
|
+
- `CanonicalOccupancySchema` — An occupancy (a person holds a seat) as reported by an external source.
|
|
58
|
+
- `CanonicalOrgUnit` _(type)_
|
|
59
|
+
- `CanonicalOrgUnitSchema` — An org unit as reported by an external source.
|
|
60
|
+
- `CanonicalPerson` _(type)_
|
|
61
|
+
- `CanonicalPersonSchema` — A person as reported by an external source, keyed by external identity.
|
|
62
|
+
- `CanonicalPosition` _(type)_
|
|
63
|
+
- `CanonicalPositionSchema` — A position (seat) as reported by an external source, placed in a unit by external reference…
|
|
64
|
+
- `CanonicalPositionStatus` _(type)_
|
|
65
|
+
- `CanonicalPositionStatusSchema` — Seat-existence as the SOURCE reported it.
|
|
66
|
+
- `CanonicalReportingEdge` _(type)_
|
|
67
|
+
- `CanonicalReportingEdgeSchema` — A reporting edge (a seat reports to a manager seat) as reported by an external source.
|
|
68
|
+
- `CanonicalUnresolvedManager` _(type)_
|
|
69
|
+
- `CanonicalUnresolvedManagerResolution` _(type)_
|
|
70
|
+
- `CanonicalUnresolvedManagerResolutionSchema` — Why a supervisory reference could not be resolved to a seat in this batch.
|
|
71
|
+
- `CanonicalUnresolvedManagerSchema` — A supervisory reference the source reported that we could NOT resolve to a seat in this batch.
|
|
45
72
|
- `CapabilitiesResponse` _(type)_
|
|
46
73
|
- `CapabilitiesResponseSchema` — The single validated capability surface the UI reads.
|
|
47
74
|
- `ChangeMemberRoleRequest` _(type)_ — Request payload for changing a member's role.
|
|
48
75
|
- `ChangeMemberRoleResponse` _(type)_
|
|
49
76
|
- `ChangeMemberRoleResponseSchema`
|
|
77
|
+
- `CompanyMdClassification` _(type)_ — Information classification for a Company.md node — what the document is, for governance, NOT permissions.
|
|
78
|
+
- `CompanyMdCollabAccessRevokedEvent` _(type)_
|
|
79
|
+
- `CompanyMdCollabAccessRevokedEventSchema` — `event: access-revoked` — the actor's read grant went away mid-stream.
|
|
80
|
+
- `CompanyMdCollabConnectedEvent` _(type)_
|
|
81
|
+
- `CompanyMdCollabConnectedEventSchema` — `event: connected` — the stream is open.
|
|
82
|
+
- `CompanyMdCollabPresenceEvent` _(type)_
|
|
83
|
+
- `CompanyMdCollabPresenceEventSchema` — `event: collab-presence` — one participant's presence signal, either live or replayed from the roster right…
|
|
84
|
+
- `CompanyMdCollabResetEvent` _(type)_
|
|
85
|
+
- `CompanyMdCollabResetEventSchema` — `event: collab-reset` — the client's cursor was unusable (a superseded generation, older than what compaction…
|
|
86
|
+
- `CompanyMdCollabServerDrainEvent` _(type)_
|
|
87
|
+
- `CompanyMdCollabServerDrainEventSchema` — `event: server_drain` — the server is shutting the stream down deliberately (a rolling restart, not a…
|
|
88
|
+
- `CompanyMdCollabSseEvent` _(type)_
|
|
89
|
+
- `CompanyMdCollabSseEventSchema` — Every frame the collaboration stream emits, discriminated on the `type` the client stamps from the SSE…
|
|
90
|
+
- `CompanyMdCollabSyncLimits` _(type)_
|
|
91
|
+
- `CompanyMdCollabSyncLimitsSchema` — Protocol limits the client needs BEFORE it sends anything.
|
|
92
|
+
- `CompanyMdCollabSyncResponse` _(type)_
|
|
93
|
+
- `CompanyMdCollabSyncResponseSchema` — `GET /collab/sync` response body — merged collaboration state plus the cursor the stream resumes from.
|
|
94
|
+
- `CompanyMdCollabUpdateAccepted` _(type)_
|
|
95
|
+
- `CompanyMdCollabUpdateAcceptedSchema` — `POST /collab/updates` response body.
|
|
96
|
+
- `CompanyMdCollabUpdateEvent` _(type)_
|
|
97
|
+
- `CompanyMdCollabUpdateEventSchema` — `event: collab-update` — one durable collaboration update.
|
|
98
|
+
- `CompanyMdContextBankItem` _(type)_ — A context bank item — a company.md doc associated with one or more parent nodes.
|
|
99
|
+
- `CompanyMdDependency` _(type)_
|
|
100
|
+
- `CompanyMdDiscoverabilityPolicy` _(type)_ — Discoverability policy for a Company.md node — who knows it exists, orthogonal to who may read it (authority…
|
|
101
|
+
- `CompanyMdDoc` _(type)_
|
|
102
|
+
- `CompanyMdDocCollaborators` _(type)_
|
|
103
|
+
- `CompanyMdDocCore` _(type)_
|
|
104
|
+
- `CompanyMdDocKind` _(type)_ — Structural discriminator for a Company.md document. - `'root'`: the single org-wide doc (one per org). -…
|
|
105
|
+
- `CompanyMdDocLevel` _(type)_
|
|
106
|
+
- `CompanyMdDocRelations` _(type)_
|
|
107
|
+
- `CompanyMdNodeIdentity` _(type)_
|
|
108
|
+
- `CompanyMdNodeType` _(type)_ — Semantic node type used by the Company.md tree.
|
|
109
|
+
- `CompanyMdSource` _(type)_
|
|
110
|
+
- `CompanyMdTreeNode` _(type)_
|
|
111
|
+
- `CompanyMdVisibility` _(type)_ — Visibility band for a Company.md document — the canonical AUTH `entity_visibility` vocabulary (, backend ). -…
|
|
112
|
+
- `ConflictRecord` _(type)_
|
|
113
|
+
- `ConflictRecordSchema`
|
|
114
|
+
- `ConstraintViolation` _(type)_
|
|
115
|
+
- `ConstraintViolationSchema` — One constraint the transformation engine evaluated and found violated.
|
|
50
116
|
- `CreateDelegationRequest` _(type)_
|
|
51
117
|
- `CreateDelegationRequestSchema`
|
|
52
118
|
- `CreateInviteBatchRequest` _(type)_
|
|
@@ -60,15 +126,38 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
60
126
|
- `DelegationListResponse` _(type)_
|
|
61
127
|
- `DelegationListResponseSchema`
|
|
62
128
|
- `DelegationSchema`
|
|
129
|
+
- `DismissStructureFindingRequest` _(type)_
|
|
130
|
+
- `DismissStructureFindingRequestSchema`
|
|
63
131
|
- `DomainListResponse` _(type)_
|
|
64
132
|
- `DomainListResponseSchema`
|
|
65
133
|
- `DomainResponse` _(type)_
|
|
66
134
|
- `DomainResponseSchema`
|
|
135
|
+
- `DomainStatus` _(type)_ — Status of a domain claim within an organization. - 'pending': Domain claimed but not yet verified -…
|
|
136
|
+
- `DomainVerificationMethod` _(type)_ — Method used to verify domain ownership. - 'dnstxt': DNS TXT record verification (primary method) - 'email'…
|
|
137
|
+
- `ExecutionContext` _(type)_
|
|
138
|
+
- `ExecutionContextSchema` — ExecutionContext — the RUN in which an intent was produced or applied.
|
|
67
139
|
- `ExecutionScope` _(type)_ — Execution scope determines whose identity is used when executing actions. - 'self': Actions execute under the…
|
|
140
|
+
- `ExistingPlacementFact` _(type)_
|
|
141
|
+
- `ExistingPlacementFactSchema` — Where a person already sits, and on whose authority they sit there.
|
|
142
|
+
- `ExistingUnitFact` _(type)_
|
|
143
|
+
- `ExistingUnitFactSchema` — An org unit that already exists, with the license the engine has over it.
|
|
144
|
+
- `FACT_SOURCE_TIER_PRECEDENCE` — Truth hierarchy, highest precedence first.
|
|
145
|
+
- `FactMutation` _(type)_
|
|
146
|
+
- `FactMutationSchema` — A single atomic fact change the engine applies to the live org graph.
|
|
147
|
+
- `FactProvenance` _(type)_
|
|
148
|
+
- `FactProvenanceSchema` — Provenance envelope attached to a structural fact (reporting edge, org unit, membership, home assignment).
|
|
149
|
+
- `FactSourceTier` _(type)_
|
|
150
|
+
- `FactSourceTierSchema` — The precedence axis for a fact.
|
|
68
151
|
- `FieldCapability` _(type)_
|
|
69
152
|
- `FieldCapabilitySchema` — A mutable field's gate: editable, or locked with attribution (sso vs rbac).
|
|
70
153
|
- `FillOpenRoleRequest` _(type)_
|
|
71
154
|
- `FillOpenRoleRequestSchema` — Fill an open role by seating an existing org member (`userId`) or inviting a new person by email.
|
|
155
|
+
- `Finding` _(type)_
|
|
156
|
+
- `FindingSchema` — A single diagnostic the system emits about the org graph — the GENERAL model of which {@link…
|
|
157
|
+
- `FindingSeverity` _(type)_
|
|
158
|
+
- `FindingSeveritySchema` — Severity of a {@link FindingSchema}.
|
|
159
|
+
- `HomeAssignment` _(type)_
|
|
160
|
+
- `HomeAssignmentSchema` — A person's single structural home unit — at most one per person per org.
|
|
72
161
|
- `HomeUnitRole` _(type)_
|
|
73
162
|
- `HomeUnitRoleSchema` — Role the invitee takes in their home unit on acceptance.
|
|
74
163
|
- `IDENTITY_TRUST_LEVEL_LABELS`
|
|
@@ -105,8 +194,14 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
105
194
|
- `MemberRecentAction` _(type)_ — Recent audit action attached to a member-detail response.
|
|
106
195
|
- `MissingAtNextLevel` _(type)_
|
|
107
196
|
- `MissingAtNextLevelSchema` — Active users home directly at this unit who have no level-(depth+1) home assignment within its subtree.
|
|
197
|
+
- `ORG_SHARED_TRANSITION_TRIGGERS` — WHY an org stopped being personal.
|
|
198
|
+
- `ORG_UNITS_ROUTES` — Canonical route path constants for the `/api/org-units` surface.
|
|
108
199
|
- `ORG_UNIT_ABSOLUTE_MAX_DEPTH` — Hard ceiling mirrored by the `org_units_depth_max` CHECK; ingest-only past designed.
|
|
109
200
|
- `ORG_UNIT_DESIGNED_MAX_DEPTH` — Depth a human may build from scratch; the UI ceiling for a fresh org.
|
|
201
|
+
- `Occupancy` _(type)_
|
|
202
|
+
- `OccupancySchema`
|
|
203
|
+
- `OccupancyStatus` _(type)_
|
|
204
|
+
- `OccupancyStatusSchema` — Lifecycle of a single occupancy of a position.
|
|
110
205
|
- `OidcValidationResult` _(type)_ — Result of validating an OIDC discovery URL.
|
|
111
206
|
- `OidcValidationResultDto` _(type)_ — Result of validating an OIDC discovery URL.
|
|
112
207
|
- `OidcValidationResultSchema`
|
|
@@ -116,6 +211,7 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
116
211
|
- `OpenRoleResponse` _(type)_
|
|
117
212
|
- `OpenRoleResponseSchema`
|
|
118
213
|
- `OpenRoleSchema` — An open role — a persisted placeholder for the person who will sit in a unit.
|
|
214
|
+
- `OpenRoleStatus` _(type)_ — Hiring lifecycle of an open role — a persisted placeholder for the person who will sit in an org unit (PRD…
|
|
119
215
|
- `OpenRoleStatusSchema` — Hiring lifecycle of an open role.
|
|
120
216
|
- `OrgAuthPolicy` _(type)_ — Organization authentication policy.
|
|
121
217
|
- `OrgAuthPolicyDto` _(type)_ — Organization authentication policy.
|
|
@@ -126,6 +222,13 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
126
222
|
- `OrgDirectoryPersonSchema`
|
|
127
223
|
- `OrgDirectoryResponse` _(type)_
|
|
128
224
|
- `OrgDirectoryResponseSchema`
|
|
225
|
+
- `OrgDivergence` _(type)_
|
|
226
|
+
- `OrgDivergenceResolution` _(type)_
|
|
227
|
+
- `OrgDivergenceResolutionSchema` — What resolving a divergence means today.
|
|
228
|
+
- `OrgDivergenceSchema`
|
|
229
|
+
- `OrgDomain` _(type)_ — Organization domain claim and verification status.
|
|
230
|
+
- `OrgIntent` _(type)_
|
|
231
|
+
- `OrgIntentSchema` — A requested org-graph change expressed as intent.
|
|
129
232
|
- `OrgInvite` _(type)_ — Organization invite for the workspace invites list.
|
|
130
233
|
- `OrgInviteStatus` _(type)_ — Status of an organization invite.
|
|
131
234
|
- `OrgLevelConfig` _(type)_
|
|
@@ -138,20 +241,26 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
138
241
|
- `OrgLogosSchema` — An org's stored marks.
|
|
139
242
|
- `OrgOwnerIcon` _(type)_
|
|
140
243
|
- `OrgOwnerIconSchema` — Icon options for the `owner` org-chart role.
|
|
244
|
+
- `OrgReconciliationLedger` _(type)_
|
|
245
|
+
- `OrgReconciliationLedgerSchema`
|
|
141
246
|
- `OrgScopedContext` _(type)_ — Validated organization-scoped context for policy implementations.
|
|
247
|
+
- `OrgSharedTransitionTrigger` _(type)_
|
|
142
248
|
- `OrgSystemEventsList` _(type)_
|
|
143
249
|
- `OrgSystemEventsListSchema`
|
|
250
|
+
- `OrgTreeResponse` _(type)_
|
|
144
251
|
- `OrgType` _(type)_ — Organization type distinguishes personal workspaces from shared organizations. - 'personal': Single-user…
|
|
145
252
|
- `OrgUnit` _(type)_
|
|
146
253
|
- `OrgUnitAncestorsResponse` _(type)_
|
|
147
254
|
- `OrgUnitAncestorsResponseSchema`
|
|
148
255
|
- `OrgUnitChildrenResponse` _(type)_
|
|
149
256
|
- `OrgUnitChildrenResponseSchema`
|
|
257
|
+
- `OrgUnitClassification` _(type)_ — Semantic classification — projection-only, never drives traversal.
|
|
150
258
|
- `OrgUnitClassificationSchema`
|
|
151
259
|
- `OrgUnitDescendantsResponse` _(type)_
|
|
152
260
|
- `OrgUnitDescendantsResponseSchema`
|
|
153
261
|
- `OrgUnitDesignation` _(type)_
|
|
154
262
|
- `OrgUnitDesignationSchema` — Designation a member holds over a unit they manage.
|
|
263
|
+
- `OrgUnitErrorCode` _(type)_ — Error codes returned by `POST /api/org-units/:id/reparent` and related mutation endpoints.
|
|
155
264
|
- `OrgUnitErrorCodeSchema`
|
|
156
265
|
- `OrgUnitMembership` _(type)_
|
|
157
266
|
- `OrgUnitMembershipListResponse` _(type)_
|
|
@@ -159,7 +268,9 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
159
268
|
- `OrgUnitMembershipResponse` _(type)_
|
|
160
269
|
- `OrgUnitMembershipResponseSchema`
|
|
161
270
|
- `OrgUnitMembershipSchema`
|
|
271
|
+
- `OrgUnitMembershipSource` _(type)_ — External directory origin of a membership row.
|
|
162
272
|
- `OrgUnitMembershipSourceSchema`
|
|
273
|
+
- `OrgUnitMembershipStatus` _(type)_ — Active/pending/removed lifecycle for a unit membership.
|
|
163
274
|
- `OrgUnitMembershipStatusSchema`
|
|
164
275
|
- `OrgUnitOwner` _(type)_
|
|
165
276
|
- `OrgUnitOwnerSchema`
|
|
@@ -168,19 +279,23 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
168
279
|
- `OrgUnitPermissionsEntry` _(type)_
|
|
169
280
|
- `OrgUnitPermissionsEntrySchema` — Effective manager of an org unit — a user whose membership (direct or inherited from an ancestor) grants the…
|
|
170
281
|
- `OrgUnitRelationship` _(type)_
|
|
282
|
+
- `OrgUnitRelationshipRole` _(type)_ — Edge role — refines the collaboration nature on a graph edge.
|
|
171
283
|
- `OrgUnitRelationshipRoleSchema`
|
|
172
284
|
- `OrgUnitRelationshipSchema`
|
|
285
|
+
- `OrgUnitRelationshipType` _(type)_ — Edge classification for `org_unit_relationships`.
|
|
173
286
|
- `OrgUnitRelationshipTypeSchema`
|
|
174
287
|
- `OrgUnitRelationshipsResponse` _(type)_
|
|
175
288
|
- `OrgUnitRelationshipsResponseSchema`
|
|
176
289
|
- `OrgUnitResponse` _(type)_
|
|
177
290
|
- `OrgUnitResponseSchema`
|
|
178
291
|
- `OrgUnitSchema`
|
|
292
|
+
- `OrgUnitSyncMode` _(type)_ — External directory reconciliation policy for a unit.
|
|
179
293
|
- `OrgUnitSyncModeSchema`
|
|
180
294
|
- `OrgUnitTreeNode` _(type)_
|
|
181
295
|
- `OrgUnitTreeNodeSchema`
|
|
182
296
|
- `OrgUnitTreeResponse` _(type)_
|
|
183
297
|
- `OrgUnitTreeResponseSchema`
|
|
298
|
+
- `OrgUnitVisibility` _(type)_ — Default visibility inherited by new docs under this unit.
|
|
184
299
|
- `OrgUnitVisibilitySchema`
|
|
185
300
|
- `OrgUsageResponse` _(type)_
|
|
186
301
|
- `OrgUsageResponseSchema`
|
|
@@ -196,25 +311,62 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
196
311
|
- `OwnershipTransferStatus` _(type)_ — Status of pending ownership transfer for an organization.
|
|
197
312
|
- `PendingUnitOwner` _(type)_
|
|
198
313
|
- `PendingUnitOwnerSchema` — A lead the structure review chose who is NOT YET an owner, because they have no account to grant to.
|
|
314
|
+
- `PermissionAuditEntry` _(type)_ — Single entry in the permission change audit log.
|
|
315
|
+
- `PersonStructureOutcome` _(type)_
|
|
316
|
+
- `PersonStructureOutcomeSchema` — EXACTLY ONE outcome per person in the snapshot. "Zero or one placement" would accept a proposal that simply…
|
|
199
317
|
- `Phase3AuditAction` _(type)_ — Audit actions for Phase 3 workspace expansion features.
|
|
318
|
+
- `Phase4AuditAction` _(type)_ — Audit actions for Phase 4 enterprise identity features.
|
|
319
|
+
- `Position` _(type)_
|
|
320
|
+
- `PositionReporting` _(type)_
|
|
321
|
+
- `PositionReportingRelationshipType` _(type)_
|
|
322
|
+
- `PositionReportingRelationshipTypeSchema` — The kind of reporting line.
|
|
323
|
+
- `PositionReportingSchema`
|
|
324
|
+
- `PositionSchema`
|
|
325
|
+
- `PositionStatus` _(type)_
|
|
326
|
+
- `PositionStatusSchema` — Lifecycle of a seat's EXISTENCE — distinct from a hiring pipeline.
|
|
327
|
+
- `ProposedOrgUnit` _(type)_
|
|
328
|
+
- `ProposedOrgUnitSchema` — A unit the proposal wants the org to have.
|
|
329
|
+
- `Provenance` _(type)_
|
|
330
|
+
- `ProvenanceSchema` — Provenance — WHO/WHAT generated an intent.
|
|
200
331
|
- `ProviderStatus` _(type)_ — Provider-level configuration lifecycle.
|
|
201
332
|
- `ProviderSuggestion` _(type)_ — MX-based provider suggestion for SSO setup.
|
|
333
|
+
- `Recommendation` _(type)_
|
|
334
|
+
- `RecommendationSchema`
|
|
202
335
|
- `RemoveMemberRequest` _(type)_ — Request payload for removing a member from the workspace.
|
|
203
336
|
- `RemoveMemberResponse` _(type)_
|
|
204
337
|
- `RemoveMemberResponseSchema`
|
|
338
|
+
- `ReportingEdgeProvenance` _(type)_
|
|
339
|
+
- `ReportingEdgeProvenanceSchema` — The provenance of a reporting edge a change would supersede, as the operator must see it before confirming…
|
|
340
|
+
- `ReportingErrorCode` _(type)_
|
|
341
|
+
- `ReportingErrorCodeSchema` — Structured codes for reporting-line mutation rejections, surfaced as `ErrorResponse.meta.reportingCode` by…
|
|
342
|
+
- `ReportingLineAnomalyFacts` _(type)_
|
|
343
|
+
- `ReportingLineAnomalyFactsSchema`
|
|
344
|
+
- `ReportingLineAnomalyReport` _(type)_
|
|
345
|
+
- `ReportingLineAnomalyReportSchema` — One report parked on the pivot, and who actually leads their department.
|
|
346
|
+
- `ResolveOrgDivergenceResult` _(type)_
|
|
347
|
+
- `ResolveOrgDivergenceResultSchema`
|
|
205
348
|
- `RoleCatalogEntry` _(type)_ — Entry in the RBAC roles catalog (GET /api/rbac/roles).
|
|
206
349
|
- `RoleCatalogEntrySchema`
|
|
207
350
|
- `RoleCatalogResponseSchema`
|
|
351
|
+
- `STRUCTURE_FINDING_KINDS`
|
|
352
|
+
- `STRUCTURE_FINDING_STATUSES`
|
|
353
|
+
- `STRUCTURE_REVIEW_ITEM_KINDS` — A question the engine is asking a human, with the competing signals attached.
|
|
208
354
|
- `ScopeCheckBatchResponse` _(type)_
|
|
209
355
|
- `ScopeCheckBatchResponseSchema`
|
|
210
356
|
- `ScopeCheckResponse` _(type)_
|
|
211
357
|
- `ScopeCheckResponseSchema`
|
|
358
|
+
- `SelectionRationale` _(type)_
|
|
359
|
+
- `SelectionRationaleSchema`
|
|
212
360
|
- `SendInviteBatchRequest` _(type)_
|
|
213
361
|
- `SendInviteBatchRequestSchema` — `expectedRevision` is REQUIRED and has no default.
|
|
214
362
|
- `SetActiveOrgResponse` _(type)_
|
|
215
363
|
- `SetActiveOrgResponseSchema`
|
|
216
364
|
- `SetSeatManagerResponse` _(type)_
|
|
217
365
|
- `SetSeatManagerResponseSchema` — Response for the one idempotent set-or-clear of a seat's solid-line manager — the reporting edge the org…
|
|
366
|
+
- `SharePolicy` _(type)_ — Document sharing policy. - restricted: Only explicit ACL + owning unit + org admins - orgread: All org…
|
|
367
|
+
- `ShareState` _(type)_ — Complete sharing state for a document.
|
|
368
|
+
- `SourceAuthority` _(type)_
|
|
369
|
+
- `SourceAuthoritySchema`
|
|
218
370
|
- `SsoCredentialStatus` _(type)_ — Boolean credential presence indicators (never expose actual values).
|
|
219
371
|
- `SsoDiscoveryConfig` _(type)_ — OIDC discovery configuration for the SSO provider.
|
|
220
372
|
- `SsoEnforcementStatus` _(type)_ — SSO enforcement status for the workspace.
|
|
@@ -225,8 +377,51 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
225
377
|
- `SsoStepperStep` _(type)_ — Backend-authoritative stepper step.
|
|
226
378
|
- `StagedPlacement` _(type)_ — Staged member placement: the fuller org position an invitee is slotted into, applied as deferred grants when…
|
|
227
379
|
- `StagedPlacementSchema` — Staged member placement: the fuller org position an invitee is slotted into, applied as deferred grants when…
|
|
380
|
+
- `StructureAcceptedBy` _(type)_
|
|
381
|
+
- `StructureAcceptedBySchema` — WHO accepted the fact.
|
|
382
|
+
- `StructureAuthority` _(type)_
|
|
383
|
+
- `StructureAuthoritySchema` — The authority axis — the ONLY axis precedence runs on: `human_confirmed` `ai_inferred` `hris_source`.
|
|
384
|
+
- `StructureEvidence` _(type)_
|
|
385
|
+
- `StructureEvidenceSchema` — TYPED evidence.
|
|
386
|
+
- `StructureFinding` _(type)_
|
|
387
|
+
- `StructureFindingDismissal` _(type)_
|
|
388
|
+
- `StructureFindingDismissalSchema` — Who said a finding is intentional, when, and about which content.
|
|
389
|
+
- `StructureFindingKind` _(type)_
|
|
390
|
+
- `StructureFindingKindSchema`
|
|
391
|
+
- `StructureFindingListResponse` _(type)_
|
|
392
|
+
- `StructureFindingListResponseSchema`
|
|
393
|
+
- `StructureFindingListStatus` _(type)_
|
|
394
|
+
- `StructureFindingListStatusSchema` — Which findings a list read returns.
|
|
395
|
+
- `StructureFindingResponse` _(type)_
|
|
396
|
+
- `StructureFindingResponseSchema`
|
|
397
|
+
- `StructureFindingSchema`
|
|
398
|
+
- `StructureFindingStatus` _(type)_
|
|
399
|
+
- `StructureFindingStatusSchema`
|
|
400
|
+
- `StructureInferenceSnapshot` _(type)_
|
|
401
|
+
- `StructureInferenceSnapshotSchema` — The inference INPUT: a point-in-time view of the PERSISTED canonical graph.
|
|
402
|
+
- `StructurePersonFact` _(type)_
|
|
403
|
+
- `StructurePersonFactSchema` — A person as the inference engine sees them.
|
|
404
|
+
- `StructureProposal` _(type)_
|
|
405
|
+
- `StructureProposalOrigin` _(type)_
|
|
406
|
+
- `StructureProposalOriginSchema` — How a structural fact came to be PROPOSED.
|
|
407
|
+
- `StructureProposalSchema` — A proposed desired state for one org.
|
|
408
|
+
- `StructureProvenance` _(type)_
|
|
409
|
+
- `StructureProvenanceSchema` — The three axes together, as one accepted structural fact records them. - v1 — AI proposes, an admin clicks…
|
|
410
|
+
- `StructureReportingFact` _(type)_
|
|
411
|
+
- `StructureReportingFactSchema` — One reporting edge, at person granularity.
|
|
412
|
+
- `StructureReviewItem` _(type)_
|
|
413
|
+
- `StructureReviewItemSchema` — A review item IS a {@link DecisionQuestion}, plus the addressing that says what the question is about.
|
|
414
|
+
- `StructureUnitAuthority` _(type)_
|
|
415
|
+
- `StructureUnitAuthoritySchema` — How much license the engine has over an EXISTING unit or placement.
|
|
228
416
|
- `SubmitInteractiveTaskResponse` _(type)_
|
|
229
417
|
- `SubmitInteractiveTaskResponseSchema` — Response for submitting a filled-in interactive chat task surface (e.g. the editable "change reporting…
|
|
418
|
+
- `SubunitCandidateFacts` _(type)_
|
|
419
|
+
- `SubunitCandidateFactsSchema`
|
|
420
|
+
- `SupersededReportingEdge` _(type)_
|
|
421
|
+
- `SupersededReportingEdgeSchema`
|
|
422
|
+
- `SyncRunSummary` _(type)_
|
|
423
|
+
- `SyncRunSummarySchema`
|
|
424
|
+
- `TOPOLOGY_ONLY_EVIDENCE_KINDS` — Evidence kinds that alone are NOT sufficient to justify a unit boundary.
|
|
230
425
|
- `TRANSFER_RESPONSIBILITIES` — Responsibility checklist items shown on the acceptance page.
|
|
231
426
|
- `TestSsoInitiation` _(type)_ — Initiation payload for a test SSO login attempt.
|
|
232
427
|
- `TestSsoInitiationDto` _(type)_ — Initiation payload for a test SSO login attempt.
|
|
@@ -240,10 +435,20 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
240
435
|
- `TransferMemberEligibility` _(type)_ — Per-member eligibility for transfer recipient picker
|
|
241
436
|
- `TransferResponsibility` _(type)_
|
|
242
437
|
- `TransferStatusResponse` _(type)_ — Response for transfer status queries — extends existing OwnershipTransferStatus.
|
|
438
|
+
- `TransformStrategy` _(type)_
|
|
439
|
+
- `TransformStrategySchema`
|
|
440
|
+
- `TransformationOrigin` _(type)_
|
|
441
|
+
- `TransformationOriginSchema` — Where a transformation originated.
|
|
442
|
+
- `TransformationPreview` _(type)_
|
|
443
|
+
- `TransformationPreviewSchema`
|
|
444
|
+
- `TransformationRequest` _(type)_
|
|
445
|
+
- `TransformationRequestSchema`
|
|
446
|
+
- `TreeOrderableNode` _(type)_ — Canonical per-parent sibling ordering for OrgUnit trees.
|
|
243
447
|
- `UnitLeadCleared` _(type)_
|
|
244
448
|
- `UnitLeadClearedSchema` — "No lead for now": the latest `unit_head` review answer for the unit was an explicit clear, and no later…
|
|
245
449
|
- `UnitMembershipRole` _(type)_
|
|
246
450
|
- `UnitMembershipRoleSchema` — Positional slot a member holds in the org-unit tree.
|
|
451
|
+
- `UnitRouteLevel` _(type)_ — One level of the org's chart as the route needs it: `OrgLevelConfig` satisfies this, and so does a plainer `{…
|
|
247
452
|
- `UpdateAuthPolicyRequest` _(type)_ — Request payload for updating organization auth policy.
|
|
248
453
|
- `UpdateDelegationRequest` _(type)_
|
|
249
454
|
- `UpdateDelegationRequestSchema` — Change a delegation's expiry without revoking it: extend, shorten, or clear (set `expiresAt: null` to make it…
|
|
@@ -258,6 +463,7 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
258
463
|
- `UserOrgMembership` _(type)_ — User organization membership summary.
|
|
259
464
|
- `UserOrgsResponse` _(type)_
|
|
260
465
|
- `UserOrgsResponseSchema`
|
|
466
|
+
- `VIEW_SCOPE_MAP` — View-to-scope mapping for frontend authorization. - Views with string values require that scope for access -…
|
|
261
467
|
- `WorkspaceAccessResponse` _(type)_
|
|
262
468
|
- `WorkspaceAccessResponseSchema`
|
|
263
469
|
- `WorkspaceAuditEvent` _(type)_ — Audit event for the workspace audit log.
|
|
@@ -287,6 +493,12 @@ Shared type vocabulary for organization ownership, type classification, and tran
|
|
|
287
493
|
- `WorkspaceSettingsOverview` _(type)_ — Full workspace overview for the Settings surface.
|
|
288
494
|
- `WorkspaceSsoState` _(type)_ — Workspace SSO state derived from provider status + policy.
|
|
289
495
|
- `WorkspaceSurface` _(type)_ — Discriminator for workspace surface routing. - 'info': Read-only surface, any member, org.view capabilities -…
|
|
496
|
+
- `getViewScope` — Get the required scope for a view, or null if public.
|
|
497
|
+
- `levelSlugForDepth` — The level segment for a depth: the configured label slugified, else `level-<depth>`.
|
|
498
|
+
- `mayOverrideAuthority` — True when `incoming` may overwrite a fact currently held at `existing`.
|
|
499
|
+
- `orderTreeNodes`
|
|
500
|
+
- `slugifyLevelLabel` — A level label's URL form: lowercased, runs of non-alphanumerics collapsed to one hyphen, hyphens trimmed.
|
|
501
|
+
- `unitRouteSegments` — The route segments one unit contributes at its depth: `[]` at the root, `[levelSlug, unitSlug]` below it.
|
|
290
502
|
|
|
291
503
|
<!-- END GENERATED: readme-public-api -->
|
|
292
504
|
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# quality/
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
The shared vocabulary of the quality control plane (control ADR slug
|
|
6
|
+
quality-control-plane, INV-QC-*): the closed sets backend and app use for
|
|
7
|
+
artifacts, cases, evaluation state, decisions, actions and references, plus the
|
|
8
|
+
QualityRunReport wire shape a runner hands to ingest. Placement and rules are
|
|
9
|
+
recorded in ADR-CONTRACTS-212.
|
|
10
|
+
|
|
11
|
+
## Invariants
|
|
12
|
+
|
|
13
|
+
- Closed sets only. Every tuple in `vocabulary.ts` is the complete list of legal
|
|
14
|
+
values; it is append-only, and adding a member is a MINOR release.
|
|
15
|
+
- State and judgment are disjoint (INV-QC-13): `EVALUATION_STATES` and
|
|
16
|
+
`PROMOTION_OUTCOMES` are disjoint closed sets and share no member.
|
|
17
|
+
- Quality run reports carry ids, scores and failure kinds only, never free text.
|
|
18
|
+
`QualityRunReportSchema` rejects any string over 128 chars outside the id
|
|
19
|
+
fields (top-level `gitSha`, `runId`, `planId`, `manifestId` and
|
|
20
|
+
`caseResults[i].caseId`); a report smuggling text fails to parse and is never
|
|
21
|
+
truncated.
|
|
22
|
+
- Types and zod schemas only — no policy evaluation or scoring lives here.
|
|
23
|
+
|
|
24
|
+
## Public API
|
|
25
|
+
|
|
26
|
+
- `index.ts` — the domain barrel; reached only through the package root
|
|
27
|
+
re-export (no `./quality` subpath in `package.json`).
|
|
28
|
+
- `vocabulary.ts` — for each closed set, the `as const` tuple
|
|
29
|
+
(e.g. `EVALUATION_STATES`), its derived type (`EvaluationState`) and its zod
|
|
30
|
+
schema (`EvaluationStateSchema`).
|
|
31
|
+
- `run-report.ts` — `QualityRunReportSchema`, `QualityCaseResultSchema` and the
|
|
32
|
+
`QualityRunReport` type.
|
|
33
|
+
|
|
34
|
+
## Dependencies
|
|
35
|
+
|
|
36
|
+
`zod`.
|