@numa-tech/numa 1.12.8 → 1.12.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +140 -16
  2. package/dist/ai-registry/commands.js +33 -33
  3. package/dist/ai-registry/commands.js.map +1 -1
  4. package/dist/app-config.d.ts +0 -1
  5. package/dist/app-config.js +4 -2
  6. package/dist/app-config.js.map +1 -1
  7. package/dist/application-candidates/client.d.ts +167 -0
  8. package/dist/application-candidates/client.js +103 -0
  9. package/dist/application-candidates/client.js.map +1 -0
  10. package/dist/application-candidates/commands.d.ts +13 -0
  11. package/dist/application-candidates/commands.js +225 -0
  12. package/dist/application-candidates/commands.js.map +1 -0
  13. package/dist/application-candidates/schemas.d.ts +171 -0
  14. package/dist/application-candidates/schemas.js +80 -0
  15. package/dist/application-candidates/schemas.js.map +1 -0
  16. package/dist/application-onboarding/client.d.ts +256 -0
  17. package/dist/application-onboarding/client.js +213 -0
  18. package/dist/application-onboarding/client.js.map +1 -0
  19. package/dist/application-onboarding/commands.d.ts +64 -0
  20. package/dist/application-onboarding/commands.js +694 -0
  21. package/dist/application-onboarding/commands.js.map +1 -0
  22. package/dist/application-onboarding/errors.d.ts +11 -0
  23. package/dist/application-onboarding/errors.js +51 -0
  24. package/dist/application-onboarding/errors.js.map +1 -0
  25. package/dist/application-onboarding/schemas.d.ts +1167 -0
  26. package/dist/application-onboarding/schemas.js +459 -0
  27. package/dist/application-onboarding/schemas.js.map +1 -0
  28. package/dist/application-onboarding/scm-credentials.d.ts +8 -0
  29. package/dist/application-onboarding/scm-credentials.js +98 -0
  30. package/dist/application-onboarding/scm-credentials.js.map +1 -0
  31. package/dist/application-onboarding/tui-model.d.ts +131 -0
  32. package/dist/application-onboarding/tui-model.js +554 -0
  33. package/dist/application-onboarding/tui-model.js.map +1 -0
  34. package/dist/application-onboarding/tui.d.ts +14 -0
  35. package/dist/application-onboarding/tui.js +554 -0
  36. package/dist/application-onboarding/tui.js.map +1 -0
  37. package/dist/authorization/access-request-client.d.ts +45 -0
  38. package/dist/authorization/access-request-client.js +93 -0
  39. package/dist/authorization/access-request-client.js.map +1 -0
  40. package/dist/authorization/access-request-commands.d.ts +25 -0
  41. package/dist/authorization/access-request-commands.js +196 -0
  42. package/dist/authorization/access-request-commands.js.map +1 -0
  43. package/dist/authorization/access-request-schemas.d.ts +123 -0
  44. package/dist/authorization/access-request-schemas.js +67 -0
  45. package/dist/authorization/access-request-schemas.js.map +1 -0
  46. package/dist/authorization/client.d.ts +50 -0
  47. package/dist/authorization/client.js +113 -0
  48. package/dist/authorization/client.js.map +1 -0
  49. package/dist/authorization/commands.d.ts +40 -0
  50. package/dist/authorization/commands.js +296 -0
  51. package/dist/authorization/commands.js.map +1 -0
  52. package/dist/authorization/errors.d.ts +13 -0
  53. package/dist/authorization/errors.js +70 -0
  54. package/dist/authorization/errors.js.map +1 -0
  55. package/dist/authorization/schemas.d.ts +187 -0
  56. package/dist/authorization/schemas.js +101 -0
  57. package/dist/authorization/schemas.js.map +1 -0
  58. package/dist/cli.js +44 -8
  59. package/dist/cli.js.map +1 -1
  60. package/dist/command-catalog.js +270 -26
  61. package/dist/command-catalog.js.map +1 -1
  62. package/dist/web-console-page.d.ts +1 -1
  63. package/dist/web-console-page.js +1 -1
  64. package/dist/web-console.js +6 -5
  65. package/dist/web-console.js.map +1 -1
  66. package/examples/ai-registry/README.md +18 -0
  67. package/examples/ai-registry/nacos-instance.username-password.example.json +25 -0
  68. package/package.json +4 -4
  69. package/skills/numa-ai-registry/SKILL.md +5 -5
  70. package/skills/numa-ai-registry/evals/evals.json +1 -1
  71. package/skills/numa-ai-registry/references/command-contract.md +22 -22
  72. package/skills/numa-cli/SKILL.md +44 -0
  73. package/skills/numa-cli/agents/openai.yaml +4 -0
  74. package/skills/numa-cli/evals/evals.json +35 -0
  75. package/skills/numa-cli/references/pipeline-release.md +107 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/application-onboarding/tui.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { AuthConfig } from "../config.js";
2
+ import { type KeycloakTokenProvider } from "../oauth.js";
3
+ import { type AccessRequest, type AccessRequestList, type AccessRequestOptions, type AccessRequestState } from "./access-request-schemas.js";
4
+ export interface AccessRequestClientDependencies {
5
+ fetch?: typeof fetch;
6
+ tokenProvider?: KeycloakTokenProvider;
7
+ }
8
+ export interface CreateAccessRequestInput {
9
+ roleCode: string;
10
+ namespaceId?: number;
11
+ reason: string;
12
+ idempotencyKey: string;
13
+ }
14
+ export interface ReviewAccessRequestInput {
15
+ decision: "APPROVE" | "REJECT";
16
+ reason: string;
17
+ version: number;
18
+ }
19
+ export interface ListAccessRequestsInput {
20
+ view: "mine" | "review";
21
+ state?: AccessRequestState;
22
+ cursor?: string;
23
+ limit?: number;
24
+ }
25
+ export interface AccessRequestApi {
26
+ options(): Promise<AccessRequestOptions>;
27
+ create(input: CreateAccessRequestInput): Promise<AccessRequest>;
28
+ list(input: ListAccessRequestsInput): Promise<AccessRequestList>;
29
+ get(requestId: string): Promise<AccessRequest>;
30
+ cancel(requestId: string, version: number): Promise<AccessRequest>;
31
+ review(requestId: string, input: ReviewAccessRequestInput): Promise<AccessRequest>;
32
+ }
33
+ export declare class AccessRequestClient implements AccessRequestApi {
34
+ private readonly config;
35
+ private readonly fetchImpl;
36
+ private readonly tokenProvider;
37
+ constructor(config: AuthConfig, dependencies?: AccessRequestClientDependencies);
38
+ options(): Promise<AccessRequestOptions>;
39
+ create(input: CreateAccessRequestInput): Promise<AccessRequest>;
40
+ list(input: ListAccessRequestsInput): Promise<AccessRequestList>;
41
+ get(requestId: string): Promise<AccessRequest>;
42
+ cancel(requestId: string, version: number): Promise<AccessRequest>;
43
+ review(requestId: string, input: ReviewAccessRequestInput): Promise<AccessRequest>;
44
+ private json;
45
+ }
@@ -0,0 +1,93 @@
1
+ import { resolveBackendUrl } from "../backend.js";
2
+ import { ensureAccessToken, fetchWithKeycloakIdentity } from "../oauth.js";
3
+ import { AuthorizationError, authorizationHttpErrorCode } from "./errors.js";
4
+ import { AccessRequestApiErrorSchema, AccessRequestListSchema, AccessRequestOptionsSchema, AccessRequestSchema } from "./access-request-schemas.js";
5
+ const ACCESS_REQUEST_ROOT = "/api/v1/me/access-requests";
6
+ export class AccessRequestClient {
7
+ config;
8
+ fetchImpl;
9
+ tokenProvider;
10
+ constructor(config, dependencies = {}) {
11
+ this.config = config;
12
+ this.fetchImpl = dependencies.fetch ?? fetch;
13
+ this.tokenProvider = dependencies.tokenProvider ?? ensureAccessToken;
14
+ }
15
+ options() {
16
+ return this.json(`${ACCESS_REQUEST_ROOT}/options`, AccessRequestOptionsSchema);
17
+ }
18
+ create(input) {
19
+ const { idempotencyKey, ...body } = input;
20
+ return this.json(ACCESS_REQUEST_ROOT, AccessRequestSchema, {
21
+ method: "POST",
22
+ headers: { "Idempotency-Key": idempotencyKey },
23
+ body: JSON.stringify(body)
24
+ }, [201]);
25
+ }
26
+ list(input) {
27
+ const query = new URLSearchParams({ view: input.view });
28
+ if (input.state)
29
+ query.set("state", input.state);
30
+ if (input.cursor)
31
+ query.set("cursor", input.cursor);
32
+ if (input.limit != null)
33
+ query.set("limit", String(input.limit));
34
+ return this.json(`${ACCESS_REQUEST_ROOT}?${query}`, AccessRequestListSchema);
35
+ }
36
+ get(requestId) {
37
+ return this.json(`${ACCESS_REQUEST_ROOT}/${encodeURIComponent(requestId)}`, AccessRequestSchema);
38
+ }
39
+ cancel(requestId, version) {
40
+ return this.json(`${ACCESS_REQUEST_ROOT}/${encodeURIComponent(requestId)}/cancel`, AccessRequestSchema, {
41
+ method: "POST",
42
+ body: JSON.stringify({ version })
43
+ });
44
+ }
45
+ review(requestId, input) {
46
+ return this.json(`${ACCESS_REQUEST_ROOT}/${encodeURIComponent(requestId)}/review`, AccessRequestSchema, {
47
+ method: "POST",
48
+ body: JSON.stringify(input)
49
+ });
50
+ }
51
+ async json(path, schema, init = {}, expectedStatuses = [200]) {
52
+ const url = resolveBackendUrl(this.config, { method: "GET", path });
53
+ const headers = new Headers(init.headers);
54
+ headers.set("Accept", "application/json");
55
+ if (init.body != null)
56
+ headers.set("Content-Type", "application/json");
57
+ const response = await fetchWithKeycloakIdentity(this.config, url, () => ({ ...init, headers }), { fetch: this.fetchImpl, tokenProvider: this.tokenProvider });
58
+ const body = await responseBody(response);
59
+ if (!response.ok)
60
+ throw apiFailure(response, body);
61
+ if (!expectedStatuses.includes(response.status)) {
62
+ throw new AuthorizationError(`Access request API returned HTTP ${response.status}; expected ${expectedStatuses.join(" or ")}.`, "authorization_invalid_response", response.status);
63
+ }
64
+ const parsed = schema.safeParse(body);
65
+ if (!parsed.success) {
66
+ throw new AuthorizationError("Access request API returned a response that does not match the safe CLI contract.", "authorization_invalid_response", response.status);
67
+ }
68
+ return parsed.data;
69
+ }
70
+ }
71
+ async function responseBody(response) {
72
+ const text = await response.text();
73
+ if (!text)
74
+ return {};
75
+ try {
76
+ return JSON.parse(text);
77
+ }
78
+ catch {
79
+ return text;
80
+ }
81
+ }
82
+ function apiFailure(response, body) {
83
+ const parsed = AccessRequestApiErrorSchema.safeParse(body);
84
+ const messages = {
85
+ 400: "The access request input was invalid.",
86
+ 401: "Access requests require a valid Numa login.",
87
+ 403: "The platform denied this access request operation.",
88
+ 404: "The access request was not found.",
89
+ 409: "The access request changed or conflicts with this operation."
90
+ };
91
+ return new AuthorizationError(`Access request API HTTP ${response.status}: ${messages[response.status] ?? "Request failed."}`, authorizationHttpErrorCode(response.status), response.status, undefined, parsed.success ? parsed.data.code : undefined);
92
+ }
93
+ //# sourceMappingURL=access-request-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access-request-client.js","sourceRoot":"","sources":["../../src/authorization/access-request-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { Command } from "commander";
2
+ import type { AccessRequestApi, CreateAccessRequestInput, ListAccessRequestsInput, ReviewAccessRequestInput } from "./access-request-client.js";
3
+ export interface AccessRequestCommandDependencies {
4
+ clientFactory: () => AccessRequestApi;
5
+ }
6
+ export declare function registerAccessRequestCommands(authorization: Command, dependencies: AccessRequestCommandDependencies): void;
7
+ export declare function parseCreateAccessRequestInput(options: {
8
+ role: string;
9
+ reason: string;
10
+ idempotencyKey: string;
11
+ namespaceId?: string;
12
+ }): CreateAccessRequestInput;
13
+ export declare function parseListAccessRequestsInput(options: {
14
+ view: string;
15
+ state?: string;
16
+ cursor?: string;
17
+ limit: string;
18
+ }): ListAccessRequestsInput;
19
+ export declare function parseReviewAccessRequestInput(options: {
20
+ decision: string;
21
+ reason: string;
22
+ version: string;
23
+ }): ReviewAccessRequestInput;
24
+ export declare function parseAccessRequestId(value: string): string;
25
+ export declare function parseVersion(value: string): number;
@@ -0,0 +1,196 @@
1
+ import process from "node:process";
2
+ import { loadAppConfig } from "../app-config.js";
3
+ import { sanitizeAuthorizationOutput } from "./errors.js";
4
+ import { AuthorizationError } from "./errors.js";
5
+ const ROLE_PREFIX = "mci-devops-platform-";
6
+ const REQUEST_ID = /^ar_[A-Za-z0-9_-]{8,76}$/u;
7
+ const CONTROL_CHARACTERS = /[\u0000-\u001f\u007f]/u;
8
+ export function registerAccessRequestCommands(authorization, dependencies) {
9
+ const accessRequest = authorization.command("access-request")
10
+ .description("申请角色权限、查询申请清单并执行双人审批")
11
+ .addHelpText("after", `
12
+ 安全边界:
13
+ create 只提交申请,不会直接授权。
14
+ review 只向 DevOps 提交审批决定;Keycloak 管理凭据不会进入 CLI。
15
+ 审批人不能审批自己的申请,最终授权状态以服务端返回为准。
16
+ `);
17
+ addExamples(accessRequest.command("options")
18
+ .description("列出可申请角色、namespace 和当前用户的审批能力")
19
+ .action(async (_options, command) => {
20
+ const options = await dependencies.clientFactory().options();
21
+ const lines = [
22
+ ...options.roles.map((role) => `${role.roleCode}\t${role.scopeType}\t${role.roleName}`),
23
+ ...options.namespaces.map((namespace) => `${namespace.id}\t${namespace.namespaceKey}\t${namespace.environment}\t${namespace.displayName}`)
24
+ ];
25
+ await output(command, { ok: true, options }, lines.join("\n") || "没有可申请的角色或 namespace");
26
+ }), ["numa authorization access-request options --json"]);
27
+ addExamples(accessRequest.command("create")
28
+ .description("提交角色权限申请;不会直接执行授权")
29
+ .requiredOption("--role <role-code>", "可申请的完整 Client Role 名称")
30
+ .requiredOption("--reason <text>", "申请原因(至少 5 个字符)")
31
+ .requiredOption("--idempotency-key <key>", "8-200 字符;网络重试时复用同一个值")
32
+ .option("--namespace-id <id>", "namespace 范围角色所需的平台 namespace ID")
33
+ .action(async (options, command) => {
34
+ const input = parseCreateAccessRequestInput(options);
35
+ const request = await dependencies.clientFactory().create(input);
36
+ await output(command, { ok: true, access_request: request }, requestLine(request));
37
+ }), [
38
+ "numa authorization access-request create --role mci-devops-platform-ai-registry-reviewer --namespace-id 7 --reason '负责 team-ai 发布审核' --idempotency-key reviewer-team-ai-20260820 --json"
39
+ ]);
40
+ addExamples(accessRequest.command("list")
41
+ .description("查询自己的申请清单或当前用户可审批的清单")
42
+ .option("--view <view>", "mine 或 review", "mine")
43
+ .option("--state <state>", "按状态筛选")
44
+ .option("--cursor <id>", "上一页返回的 nextCursor")
45
+ .option("--limit <count>", "每页 1-100 条", "20")
46
+ .action(async (options, command) => {
47
+ const input = parseListAccessRequestsInput(options);
48
+ const result = await dependencies.clientFactory().list(input);
49
+ await output(command, { ok: true, ...result }, result.items.map(requestLine).join("\n") || (input.view === "mine" ? "没有权限申请" : "没有待审批申请"));
50
+ }), [
51
+ "numa authorization access-request list --view mine --json",
52
+ "numa authorization access-request list --view review --state SUBMITTED --json"
53
+ ]);
54
+ addExamples(accessRequest.command("show <request-id>")
55
+ .description("查询本人申请或有权审批的申请详情")
56
+ .action(async (requestIdValue, _options, command) => {
57
+ const request = await dependencies.clientFactory().get(parseAccessRequestId(requestIdValue));
58
+ await output(command, { ok: true, access_request: request }, requestLine(request));
59
+ }), ["numa authorization access-request show ar_0123456789abcdef0123456789abcdef --json"]);
60
+ addExamples(accessRequest.command("cancel <request-id>")
61
+ .description("申请人撤销仍处于 SUBMITTED 的申请")
62
+ .requiredOption("--version <version>", "详情或清单返回的乐观锁版本")
63
+ .action(async (requestIdValue, options, command) => {
64
+ const request = await dependencies.clientFactory().cancel(parseAccessRequestId(requestIdValue), parseVersion(options.version));
65
+ await output(command, { ok: true, access_request: request }, requestLine(request));
66
+ }), ["numa authorization access-request cancel ar_0123456789abcdef0123456789abcdef --version 0 --json"]);
67
+ addExamples(accessRequest.command("review <request-id>")
68
+ .description("审批或重试授权;禁止申请人自审")
69
+ .requiredOption("--decision <decision>", "approve 或 reject")
70
+ .requiredOption("--reason <text>", "审批依据(至少 3 个字符)")
71
+ .requiredOption("--version <version>", "详情或审批清单返回的乐观锁版本")
72
+ .action(async (requestIdValue, options, command) => {
73
+ const input = parseReviewAccessRequestInput(options);
74
+ const request = await dependencies.clientFactory().review(parseAccessRequestId(requestIdValue), input);
75
+ const completed = input.decision === "REJECT"
76
+ ? request.state === "REJECTED"
77
+ : request.state === "GRANTED";
78
+ await output(command, { ok: completed, access_request: request }, requestLine(request));
79
+ if (!completed)
80
+ process.exitCode = 1;
81
+ }), [
82
+ "numa authorization access-request review ar_0123456789abcdef0123456789abcdef --decision approve --reason '职责确认无误' --version 0 --json",
83
+ "numa authorization access-request review ar_0123456789abcdef0123456789abcdef --decision reject --reason '职责范围不符' --version 0 --json"
84
+ ]);
85
+ }
86
+ export function parseCreateAccessRequestInput(options) {
87
+ const roleCode = boundedText(options.role, "role", 120, 1);
88
+ if (!roleCode.startsWith(ROLE_PREFIX) || !/^[A-Za-z0-9][A-Za-z0-9._-]*$/u.test(roleCode)) {
89
+ throw invalid(`role must be a complete Client Role beginning with '${ROLE_PREFIX}'.`);
90
+ }
91
+ const reason = boundedText(options.reason, "reason", 2_000, 5);
92
+ const idempotencyKey = boundedText(options.idempotencyKey, "idempotency-key", 200, 8);
93
+ if (!/^[A-Za-z0-9._:-]+$/u.test(idempotencyKey)) {
94
+ throw invalid("idempotency-key may contain only letters, numbers, dot, underscore, colon, or dash.");
95
+ }
96
+ return {
97
+ roleCode,
98
+ reason,
99
+ idempotencyKey,
100
+ ...(options.namespaceId == null ? {} : { namespaceId: parsePositiveInteger(options.namespaceId, "namespace-id") })
101
+ };
102
+ }
103
+ export function parseListAccessRequestsInput(options) {
104
+ const view = options.view.trim().toLowerCase();
105
+ if (view !== "mine" && view !== "review")
106
+ throw invalid("view must be mine or review.");
107
+ const state = options.state == null ? undefined : options.state.trim().toUpperCase();
108
+ const allowedStates = ["SUBMITTED", "GRANTING", "GRANTED", "REJECTED", "GRANT_FAILED", "CANCELLED"];
109
+ if (state != null && !allowedStates.includes(state))
110
+ throw invalid("state is invalid.");
111
+ const limit = parsePositiveInteger(options.limit, "limit");
112
+ if (limit > 100)
113
+ throw invalid("limit must be between 1 and 100.");
114
+ const cursor = options.cursor == null ? undefined : String(parsePositiveInteger(options.cursor, "cursor"));
115
+ return {
116
+ view,
117
+ ...(state == null ? {} : { state: state }),
118
+ ...(cursor == null ? {} : { cursor }),
119
+ limit
120
+ };
121
+ }
122
+ export function parseReviewAccessRequestInput(options) {
123
+ const decision = options.decision.trim().toUpperCase();
124
+ if (decision !== "APPROVE" && decision !== "REJECT") {
125
+ throw invalid("decision must be approve or reject.");
126
+ }
127
+ return {
128
+ decision,
129
+ reason: boundedText(options.reason, "reason", 2_000, 3),
130
+ version: parseVersion(options.version)
131
+ };
132
+ }
133
+ export function parseAccessRequestId(value) {
134
+ const normalized = value.trim();
135
+ if (!REQUEST_ID.test(normalized))
136
+ throw invalid("request-id is invalid.");
137
+ return normalized;
138
+ }
139
+ export function parseVersion(value) {
140
+ const parsed = Number(value);
141
+ if (!Number.isSafeInteger(parsed) || parsed < 0 || String(parsed) !== value.trim()) {
142
+ throw invalid("version must be a non-negative integer.");
143
+ }
144
+ return parsed;
145
+ }
146
+ function parsePositiveInteger(value, label) {
147
+ const parsed = Number(value);
148
+ if (!Number.isSafeInteger(parsed) || parsed < 1 || String(parsed) !== value.trim()) {
149
+ throw invalid(`${label} must be a positive integer.`);
150
+ }
151
+ return parsed;
152
+ }
153
+ function boundedText(value, label, maximum, minimum) {
154
+ const normalized = value.trim();
155
+ if (normalized.length < minimum || normalized.length > maximum || CONTROL_CHARACTERS.test(normalized)) {
156
+ throw invalid(`${label} must be ${minimum}-${maximum} characters and contain no control characters.`);
157
+ }
158
+ return normalized;
159
+ }
160
+ function requestLine(request) {
161
+ return [
162
+ request.requestId,
163
+ request.state,
164
+ request.roleCode,
165
+ request.namespaceKey ?? "GLOBAL",
166
+ `v${request.version}`
167
+ ].join("\t");
168
+ }
169
+ function addExamples(command, examples) {
170
+ return command.addHelpText("after", `\nExamples:\n${examples.map((item) => ` ${item}`).join("\n")}\n`);
171
+ }
172
+ async function output(command, payload, textValue) {
173
+ const config = await loadAppConfig();
174
+ if (command.optsWithGlobals().json || config.output === "json") {
175
+ process.stdout.write(`${JSON.stringify(stableOutput(payload), null, 2)}\n`);
176
+ }
177
+ else {
178
+ process.stdout.write(`${String(sanitizeAuthorizationOutput(textValue))}\n`);
179
+ }
180
+ }
181
+ function stableOutput(value) {
182
+ const safe = sanitizeAuthorizationOutput(value);
183
+ if (Array.isArray(safe))
184
+ return safe.map(stableOutput);
185
+ if (safe && typeof safe === "object") {
186
+ return Object.fromEntries(Object.entries(safe).map(([key, item]) => [
187
+ key.replace(/([a-z0-9])([A-Z])/gu, "$1_$2").toLowerCase(),
188
+ stableOutput(item)
189
+ ]));
190
+ }
191
+ return safe;
192
+ }
193
+ function invalid(message) {
194
+ return new AuthorizationError(message, "authorization_input_invalid");
195
+ }
196
+ //# sourceMappingURL=access-request-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access-request-commands.js","sourceRoot":"","sources":["../../src/authorization/access-request-commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,123 @@
1
+ import { z } from "zod";
2
+ export declare const AccessRequestStateSchema: z.ZodEnum<{
3
+ CANCELLED: "CANCELLED";
4
+ GRANTED: "GRANTED";
5
+ GRANTING: "GRANTING";
6
+ GRANT_FAILED: "GRANT_FAILED";
7
+ REJECTED: "REJECTED";
8
+ SUBMITTED: "SUBMITTED";
9
+ }>;
10
+ export declare const AccessRequestSchema: z.ZodObject<{
11
+ id: z.ZodNumber;
12
+ requestId: z.ZodString;
13
+ requesterSubject: z.ZodString;
14
+ requesterUsername: z.ZodNullable<z.ZodString>;
15
+ roleCode: z.ZodString;
16
+ roleName: z.ZodString;
17
+ scopeType: z.ZodEnum<{
18
+ AI_REGISTRY_NAMESPACE: "AI_REGISTRY_NAMESPACE";
19
+ GLOBAL: "GLOBAL";
20
+ }>;
21
+ namespaceId: z.ZodNullable<z.ZodNumber>;
22
+ namespaceKey: z.ZodNullable<z.ZodString>;
23
+ nacosNamespaceId: z.ZodNullable<z.ZodString>;
24
+ namespaceName: z.ZodNullable<z.ZodString>;
25
+ environment: z.ZodNullable<z.ZodString>;
26
+ reason: z.ZodString;
27
+ state: z.ZodEnum<{
28
+ CANCELLED: "CANCELLED";
29
+ GRANTED: "GRANTED";
30
+ GRANTING: "GRANTING";
31
+ GRANT_FAILED: "GRANT_FAILED";
32
+ REJECTED: "REJECTED";
33
+ SUBMITTED: "SUBMITTED";
34
+ }>;
35
+ reviewedBy: z.ZodNullable<z.ZodString>;
36
+ reviewedByUsername: z.ZodNullable<z.ZodString>;
37
+ reviewReason: z.ZodNullable<z.ZodString>;
38
+ reviewedAt: z.ZodNullable<z.ZodString>;
39
+ grantedAt: z.ZodNullable<z.ZodString>;
40
+ grantErrorCode: z.ZodNullable<z.ZodString>;
41
+ grantErrorSummary: z.ZodNullable<z.ZodString>;
42
+ grantRetryAt: z.ZodOptional<z.ZodString>;
43
+ grantRetryable: z.ZodOptional<z.ZodBoolean>;
44
+ version: z.ZodNumber;
45
+ createdAt: z.ZodString;
46
+ updatedAt: z.ZodString;
47
+ }, z.core.$strict>;
48
+ export declare const AccessRequestListSchema: z.ZodObject<{
49
+ view: z.ZodEnum<{
50
+ mine: "mine";
51
+ review: "review";
52
+ }>;
53
+ items: z.ZodArray<z.ZodObject<{
54
+ id: z.ZodNumber;
55
+ requestId: z.ZodString;
56
+ requesterSubject: z.ZodString;
57
+ requesterUsername: z.ZodNullable<z.ZodString>;
58
+ roleCode: z.ZodString;
59
+ roleName: z.ZodString;
60
+ scopeType: z.ZodEnum<{
61
+ AI_REGISTRY_NAMESPACE: "AI_REGISTRY_NAMESPACE";
62
+ GLOBAL: "GLOBAL";
63
+ }>;
64
+ namespaceId: z.ZodNullable<z.ZodNumber>;
65
+ namespaceKey: z.ZodNullable<z.ZodString>;
66
+ nacosNamespaceId: z.ZodNullable<z.ZodString>;
67
+ namespaceName: z.ZodNullable<z.ZodString>;
68
+ environment: z.ZodNullable<z.ZodString>;
69
+ reason: z.ZodString;
70
+ state: z.ZodEnum<{
71
+ CANCELLED: "CANCELLED";
72
+ GRANTED: "GRANTED";
73
+ GRANTING: "GRANTING";
74
+ GRANT_FAILED: "GRANT_FAILED";
75
+ REJECTED: "REJECTED";
76
+ SUBMITTED: "SUBMITTED";
77
+ }>;
78
+ reviewedBy: z.ZodNullable<z.ZodString>;
79
+ reviewedByUsername: z.ZodNullable<z.ZodString>;
80
+ reviewReason: z.ZodNullable<z.ZodString>;
81
+ reviewedAt: z.ZodNullable<z.ZodString>;
82
+ grantedAt: z.ZodNullable<z.ZodString>;
83
+ grantErrorCode: z.ZodNullable<z.ZodString>;
84
+ grantErrorSummary: z.ZodNullable<z.ZodString>;
85
+ grantRetryAt: z.ZodOptional<z.ZodString>;
86
+ grantRetryable: z.ZodOptional<z.ZodBoolean>;
87
+ version: z.ZodNumber;
88
+ createdAt: z.ZodString;
89
+ updatedAt: z.ZodString;
90
+ }, z.core.$strict>>;
91
+ totalItems: z.ZodNumber;
92
+ page: z.ZodOptional<z.ZodNumber>;
93
+ pageSize: z.ZodOptional<z.ZodNumber>;
94
+ totalPages: z.ZodOptional<z.ZodNumber>;
95
+ nextCursor: z.ZodOptional<z.ZodString>;
96
+ }, z.core.$strict>;
97
+ export declare const AccessRequestOptionsSchema: z.ZodObject<{
98
+ roles: z.ZodArray<z.ZodObject<{
99
+ roleCode: z.ZodString;
100
+ roleName: z.ZodString;
101
+ description: z.ZodNullable<z.ZodString>;
102
+ scopeType: z.ZodEnum<{
103
+ AI_REGISTRY_NAMESPACE: "AI_REGISTRY_NAMESPACE";
104
+ GLOBAL: "GLOBAL";
105
+ }>;
106
+ canReview: z.ZodBoolean;
107
+ }, z.core.$strict>>;
108
+ namespaces: z.ZodArray<z.ZodObject<{
109
+ id: z.ZodNumber;
110
+ namespaceKey: z.ZodString;
111
+ nacosNamespaceId: z.ZodString;
112
+ displayName: z.ZodString;
113
+ environment: z.ZodString;
114
+ }, z.core.$strict>>;
115
+ }, z.core.$strict>;
116
+ export declare const AccessRequestApiErrorSchema: z.ZodObject<{
117
+ code: z.ZodOptional<z.ZodString>;
118
+ message: z.ZodOptional<z.ZodString>;
119
+ }, z.core.$strip>;
120
+ export type AccessRequest = z.infer<typeof AccessRequestSchema>;
121
+ export type AccessRequestList = z.infer<typeof AccessRequestListSchema>;
122
+ export type AccessRequestOptions = z.infer<typeof AccessRequestOptionsSchema>;
123
+ export type AccessRequestState = z.infer<typeof AccessRequestStateSchema>;