@opengeni/api-router 0.20.0 → 0.21.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/app.js
CHANGED
|
@@ -21868,6 +21868,7 @@ import { randomUUID } from "crypto";
|
|
|
21868
21868
|
import {
|
|
21869
21869
|
ActivateWorkspaceInstructionPolicyRequest,
|
|
21870
21870
|
CreateWorkspaceInstructionPolicyDraftRequest,
|
|
21871
|
+
CreateWorkspaceInstructionPolicyOnboardingProposalRequest,
|
|
21871
21872
|
ImportLegacyWorkspaceInstructionPolicyDraftRequest,
|
|
21872
21873
|
RollbackWorkspaceInstructionPolicyRequest,
|
|
21873
21874
|
WorkspaceInstructionPolicyActivationResponse,
|
|
@@ -21876,22 +21877,34 @@ import {
|
|
|
21876
21877
|
WorkspaceInstructionPolicyDiffResponse,
|
|
21877
21878
|
WorkspaceInstructionPolicyListQuery,
|
|
21878
21879
|
WorkspaceInstructionPolicyListResponse,
|
|
21880
|
+
WorkspaceInstructionPolicyOnboardingProposal,
|
|
21881
|
+
WorkspaceInstructionPolicyOnboardingProposalConflictResponse,
|
|
21882
|
+
WorkspaceInstructionPolicyOnboardingProposalContentErrorResponse,
|
|
21883
|
+
WorkspaceInstructionPolicyOnboardingProposalListQuery,
|
|
21884
|
+
WorkspaceInstructionPolicyOnboardingProposalListResponse,
|
|
21885
|
+
WorkspaceInstructionPolicyOnboardingProposalStaleResponse,
|
|
21879
21886
|
WorkspaceInstructionPolicyOperationReuseResponse,
|
|
21880
|
-
WorkspaceInstructionPolicyRevision
|
|
21887
|
+
WorkspaceInstructionPolicyRevision,
|
|
21888
|
+
WORKSPACE_INSTRUCTION_POLICY_CONTENT_MAX_CHARS
|
|
21881
21889
|
} from "@opengeni/contracts";
|
|
21882
21890
|
import { requireAccessGrant as requireAccessGrant17 } from "@opengeni/core";
|
|
21883
21891
|
import {
|
|
21884
21892
|
activateWorkspaceInstructionPolicyRevision,
|
|
21885
21893
|
createWorkspaceInstructionPolicyDraft,
|
|
21894
|
+
createWorkspaceInstructionPolicyOnboardingProposal,
|
|
21886
21895
|
diffWorkspaceInstructionPolicyRevisions,
|
|
21887
21896
|
getWorkspaceInstructionPolicyRevision,
|
|
21888
21897
|
importLegacyWorkspaceInstructionPolicyDraft,
|
|
21889
21898
|
listWorkspaceInstructionPolicyRevisions,
|
|
21899
|
+
listWorkspaceInstructionPolicyOnboardingProposals,
|
|
21890
21900
|
rollbackWorkspaceInstructionPolicyRevision,
|
|
21891
21901
|
WorkspaceInstructionPolicyConflictError,
|
|
21892
21902
|
WorkspaceInstructionPolicyInvalidOperationError,
|
|
21893
21903
|
WorkspaceInstructionPolicyLegacyUnavailableError,
|
|
21894
21904
|
WorkspaceInstructionPolicyNotFoundError,
|
|
21905
|
+
WorkspaceInstructionPolicyOnboardingProposalConflictError,
|
|
21906
|
+
WorkspaceInstructionPolicyOnboardingProposalContentError,
|
|
21907
|
+
WorkspaceInstructionPolicyOnboardingProposalStaleError,
|
|
21895
21908
|
WorkspaceInstructionPolicyOperationReuseError
|
|
21896
21909
|
} from "@opengeni/db";
|
|
21897
21910
|
import { HTTPException as HTTPException27 } from "hono/http-exception";
|
|
@@ -21924,6 +21937,37 @@ function policyErrorResponse(context, error) {
|
|
|
21924
21937
|
409
|
|
21925
21938
|
);
|
|
21926
21939
|
}
|
|
21940
|
+
if (error instanceof WorkspaceInstructionPolicyOnboardingProposalContentError) {
|
|
21941
|
+
return context.json(
|
|
21942
|
+
WorkspaceInstructionPolicyOnboardingProposalContentErrorResponse.parse({
|
|
21943
|
+
code: error.code,
|
|
21944
|
+
message: error.message,
|
|
21945
|
+
maxChars: WORKSPACE_INSTRUCTION_POLICY_CONTENT_MAX_CHARS
|
|
21946
|
+
}),
|
|
21947
|
+
422
|
|
21948
|
+
);
|
|
21949
|
+
}
|
|
21950
|
+
if (error instanceof WorkspaceInstructionPolicyOnboardingProposalStaleError) {
|
|
21951
|
+
return context.json(
|
|
21952
|
+
WorkspaceInstructionPolicyOnboardingProposalStaleResponse.parse({
|
|
21953
|
+
code: error.code,
|
|
21954
|
+
message: error.message,
|
|
21955
|
+
currentHead: error.currentHead
|
|
21956
|
+
}),
|
|
21957
|
+
409
|
|
21958
|
+
);
|
|
21959
|
+
}
|
|
21960
|
+
if (error instanceof WorkspaceInstructionPolicyOnboardingProposalConflictError) {
|
|
21961
|
+
return context.json(
|
|
21962
|
+
WorkspaceInstructionPolicyOnboardingProposalConflictResponse.parse({
|
|
21963
|
+
code: error.code,
|
|
21964
|
+
message: error.message,
|
|
21965
|
+
existingProposalId: error.existingProposalId,
|
|
21966
|
+
existingDraftRevisionId: error.existingDraftRevisionId
|
|
21967
|
+
}),
|
|
21968
|
+
409
|
|
21969
|
+
);
|
|
21970
|
+
}
|
|
21927
21971
|
if (error instanceof WorkspaceInstructionPolicyNotFoundError) {
|
|
21928
21972
|
return context.json(
|
|
21929
21973
|
{ code: "WORKSPACE_INSTRUCTION_POLICY_NOT_FOUND", message: error.message },
|
|
@@ -22027,6 +22071,56 @@ function registerWorkspaceInstructionPolicyRoutes(app, deps) {
|
|
|
22027
22071
|
return policyErrorResponse(context, error);
|
|
22028
22072
|
}
|
|
22029
22073
|
});
|
|
22074
|
+
app.get(`${base}/onboarding-proposals`, async (context) => {
|
|
22075
|
+
const workspaceId = context.req.param("workspaceId");
|
|
22076
|
+
await requireAccessGrant17(context, deps, workspaceId, "workspace:read");
|
|
22077
|
+
const parsed = WorkspaceInstructionPolicyOnboardingProposalListQuery.safeParse({
|
|
22078
|
+
limit: context.req.query("limit")
|
|
22079
|
+
});
|
|
22080
|
+
if (!parsed.success) {
|
|
22081
|
+
throw new HTTPException27(422, {
|
|
22082
|
+
message: "Invalid workspace instruction-policy onboarding-proposal query"
|
|
22083
|
+
});
|
|
22084
|
+
}
|
|
22085
|
+
return context.json(
|
|
22086
|
+
WorkspaceInstructionPolicyOnboardingProposalListResponse.parse(
|
|
22087
|
+
await listWorkspaceInstructionPolicyOnboardingProposals(deps.db, workspaceId, parsed.data)
|
|
22088
|
+
)
|
|
22089
|
+
);
|
|
22090
|
+
});
|
|
22091
|
+
app.post(`${base}/onboarding-proposals`, async (context) => {
|
|
22092
|
+
const workspaceId = context.req.param("workspaceId");
|
|
22093
|
+
const grant = await requireAccessGrant17(context, deps, workspaceId, "workspace:admin");
|
|
22094
|
+
assertBoundedActor(grant.subjectId);
|
|
22095
|
+
const request = await parseBody(
|
|
22096
|
+
context,
|
|
22097
|
+
CreateWorkspaceInstructionPolicyOnboardingProposalRequest
|
|
22098
|
+
);
|
|
22099
|
+
try {
|
|
22100
|
+
return context.json(
|
|
22101
|
+
WorkspaceInstructionPolicyOnboardingProposal.parse(
|
|
22102
|
+
await createWorkspaceInstructionPolicyOnboardingProposal(deps.db, {
|
|
22103
|
+
operationId: request.operationId ?? randomUUID(),
|
|
22104
|
+
accountId: grant.accountId,
|
|
22105
|
+
workspaceId,
|
|
22106
|
+
createdBySubjectId: grant.subjectId,
|
|
22107
|
+
kind: request.kind,
|
|
22108
|
+
scope: request.scope,
|
|
22109
|
+
roleKey: request.roleKey,
|
|
22110
|
+
content: request.content,
|
|
22111
|
+
sourceId: request.sourceId,
|
|
22112
|
+
sourceVersion: request.sourceVersion,
|
|
22113
|
+
confidenceBps: request.confidenceBps,
|
|
22114
|
+
expectedCurrentRevisionId: request.expectedCurrentRevisionId,
|
|
22115
|
+
expectedActivationVersion: request.expectedActivationVersion
|
|
22116
|
+
})
|
|
22117
|
+
),
|
|
22118
|
+
201
|
|
22119
|
+
);
|
|
22120
|
+
} catch (error) {
|
|
22121
|
+
return policyErrorResponse(context, error);
|
|
22122
|
+
}
|
|
22123
|
+
});
|
|
22030
22124
|
app.get(`${base}/diff`, async (context) => {
|
|
22031
22125
|
const workspaceId = context.req.param("workspaceId");
|
|
22032
22126
|
await requireAccessGrant17(context, deps, workspaceId, "workspace:read");
|
|
@@ -25996,4 +26090,4 @@ export {
|
|
|
25996
26090
|
withDefaultEnabledCapabilityMcpTools,
|
|
25997
26091
|
workflowIdForSession2 as workflowIdForSession
|
|
25998
26092
|
};
|
|
25999
|
-
//# sourceMappingURL=chunk-
|
|
26093
|
+
//# sourceMappingURL=chunk-5EEC7Q6C.js.map
|