@stigmer/protos 0.0.34 → 0.0.39
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/ai/stigmer/agentic/agent/v1/io_pb.d.ts +19 -0
- package/ai/stigmer/agentic/agent/v1/io_pb.js +6 -1
- package/ai/stigmer/agentic/agent/v1/io_pb.js.map +1 -1
- package/ai/stigmer/agentic/agent/v1/query_connect.d.ts +21 -0
- package/ai/stigmer/agentic/agent/v1/query_connect.js +21 -0
- package/ai/stigmer/agentic/agent/v1/query_connect.js.map +1 -1
- package/ai/stigmer/agentic/agent/v1/query_pb.d.ts +21 -1
- package/ai/stigmer/agentic/agent/v1/query_pb.js +1 -1
- package/ai/stigmer/agentic/agent/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/artifact_pb.d.ts +17 -0
- package/ai/stigmer/agentic/agentexecution/v1/artifact_pb.js +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/artifact_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/io_pb.d.ts +178 -0
- package/ai/stigmer/agentic/agentexecution/v1/io_pb.js +21 -11
- package/ai/stigmer/agentic/agentexecution/v1/io_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.d.ts +45 -0
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.js +45 -0
- package/ai/stigmer/agentic/agentexecution/v1/query_connect.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.d.ts +45 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.js +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentexecution/v1/spec_pb.d.ts +14 -4
- package/ai/stigmer/agentic/agentexecution/v1/spec_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/io_pb.d.ts +33 -0
- package/ai/stigmer/agentic/agentinstance/v1/io_pb.js +6 -1
- package/ai/stigmer/agentic/agentinstance/v1/io_pb.js.map +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/query_connect.d.ts +13 -0
- package/ai/stigmer/agentic/agentinstance/v1/query_connect.js +13 -0
- package/ai/stigmer/agentic/agentinstance/v1/query_connect.js.map +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/query_pb.d.ts +13 -1
- package/ai/stigmer/agentic/agentinstance/v1/query_pb.js +1 -1
- package/ai/stigmer/agentic/agentinstance/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/command_connect.d.ts +24 -0
- package/ai/stigmer/agentic/environment/v1/command_connect.js +24 -0
- package/ai/stigmer/agentic/environment/v1/command_connect.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/command_pb.d.ts +23 -0
- package/ai/stigmer/agentic/environment/v1/command_pb.js +2 -1
- package/ai/stigmer/agentic/environment/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/io_pb.d.ts +140 -0
- package/ai/stigmer/agentic/environment/v1/io_pb.js +29 -1
- package/ai/stigmer/agentic/environment/v1/io_pb.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/query_connect.d.ts +26 -0
- package/ai/stigmer/agentic/environment/v1/query_connect.js +26 -0
- package/ai/stigmer/agentic/environment/v1/query_connect.js.map +1 -1
- package/ai/stigmer/agentic/environment/v1/query_pb.d.ts +26 -0
- package/ai/stigmer/agentic/environment/v1/query_pb.js +3 -1
- package/ai/stigmer/agentic/environment/v1/query_pb.js.map +1 -1
- package/ai/stigmer/agentic/session/v1/spec_pb.d.ts +36 -3
- package/ai/stigmer/agentic/session/v1/spec_pb.js +4 -1
- package/ai/stigmer/agentic/session/v1/spec_pb.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/command_connect.d.ts +22 -0
- package/ai/stigmer/agentic/skill/v1/command_connect.js +22 -0
- package/ai/stigmer/agentic/skill/v1/command_connect.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/command_pb.d.ts +22 -1
- package/ai/stigmer/agentic/skill/v1/command_pb.js +1 -1
- package/ai/stigmer/agentic/skill/v1/command_pb.js.map +1 -1
- package/ai/stigmer/agentic/skill/v1/io_pb.d.ts +66 -0
- package/ai/stigmer/agentic/skill/v1/io_pb.js +8 -3
- package/ai/stigmer/agentic/skill/v1/io_pb.js.map +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/command_connect.d.ts +4 -4
- package/ai/stigmer/agentic/workflowinstance/v1/command_connect.js +4 -4
- package/ai/stigmer/agentic/workflowinstance/v1/command_pb.d.ts +4 -4
- package/ai/stigmer/agentic/workflowinstance/v1/command_pb.js +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/io_pb.d.ts +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/query_connect.d.ts +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/query_connect.js +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/query_pb.d.ts +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/spec_pb.d.ts +2 -2
- package/ai/stigmer/agentic/workflowinstance/v1/spec_pb.js +1 -1
- package/ai/stigmer/agentic/workflowinstance/v1/spec_pb.js.map +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.js.map +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.d.ts +20 -0
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js +1 -1
- package/ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.js.map +1 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.d.ts +9 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js +9 -1
- package/ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.js.map +1 -1
- package/ai/stigmer/platform/github/v1/service_connect.d.ts +58 -0
- package/ai/stigmer/platform/github/v1/service_connect.js +64 -0
- package/ai/stigmer/platform/github/v1/service_connect.js.map +1 -0
- package/ai/stigmer/platform/github/v1/service_pb.d.ts +164 -0
- package/ai/stigmer/platform/github/v1/service_pb.js +49 -0
- package/ai/stigmer/platform/github/v1/service_pb.js.map +1 -0
- package/package.json +1 -1
|
@@ -86,9 +86,9 @@ export type WorkflowInstanceSpec = Message<"ai.stigmer.agentic.workflowinstance.
|
|
|
86
86
|
* At execution time, the WorkflowExecution runtime merges these environments
|
|
87
87
|
* and provides the combined configuration to all agents in the workflow.
|
|
88
88
|
*
|
|
89
|
-
* @generated from field: repeated ai.stigmer.commons.apiresource.ApiResourceReference
|
|
89
|
+
* @generated from field: repeated ai.stigmer.commons.apiresource.ApiResourceReference environment_refs = 3;
|
|
90
90
|
*/
|
|
91
|
-
|
|
91
|
+
environmentRefs: ApiResourceReference[];
|
|
92
92
|
};
|
|
93
93
|
/**
|
|
94
94
|
* Describes the message ai.stigmer.agentic.workflowinstance.v1.WorkflowInstanceSpec.
|
|
@@ -7,7 +7,7 @@ import { file_buf_validate_validate } from "../../../../../buf/validate/validate
|
|
|
7
7
|
/**
|
|
8
8
|
* Describes the file ai/stigmer/agentic/workflowinstance/v1/spec.proto.
|
|
9
9
|
*/
|
|
10
|
-
export const file_ai_stigmer_agentic_workflowinstance_v1_spec = /*@__PURE__*/ fileDesc("
|
|
10
|
+
export const file_ai_stigmer_agentic_workflowinstance_v1_spec = /*@__PURE__*/ fileDesc("CjFhaS9zdGlnbWVyL2FnZW50aWMvd29ya2Zsb3dpbnN0YW5jZS92MS9zcGVjLnByb3RvEiZhaS5zdGlnbWVyLmFnZW50aWMud29ya2Zsb3dpbnN0YW5jZS52MSKQAgoUV29ya2Zsb3dJbnN0YW5jZVNwZWMSHAoLd29ya2Zsb3dfaWQYASABKAlCB7pIBHICEAESEwoLZGVzY3JpcHRpb24YAiABKAkSxAEKEGVudmlyb25tZW50X3JlZnMYAyADKAsyNC5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuQXBpUmVzb3VyY2VSZWZlcmVuY2VCdLpIcZIBbiJsugFpChVlbnZpcm9ubWVudF9yZWZzLmtpbmQSP2Vudmlyb25tZW50X3JlZnMgbXVzdCByZWZlcmVuY2UgcmVzb3VyY2VzIHdpdGgga2luZD1lbnZpcm9ubWVudBoPdGhpcy5raW5kID09IDUyYgZwcm90bzM", [file_ai_stigmer_commons_apiresource_io, file_buf_validate_validate]);
|
|
11
11
|
/**
|
|
12
12
|
* Describes the message ai.stigmer.agentic.workflowinstance.v1.WorkflowInstanceSpec.
|
|
13
13
|
* Use `create(WorkflowInstanceSpecSchema)` to create a new message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/agentic/workflowinstance/v1/spec_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,yIAAyI;AACzI,oBAAoB;AAKpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,sCAAsC,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,gDAAgD,GAAY,aAAa,CACpF,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"spec_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/agentic/workflowinstance/v1/spec_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,yIAAyI;AACzI,oBAAoB;AAKpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,sCAAsC,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,gDAAgD,GAAY,aAAa,CACpF,QAAQ,CAAC,qfAAqf,EAAE,CAAC,sCAAsC,EAAE,0BAA0B,CAAC,CAAC,CAAC;AA0FxkB;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,gDAAgD,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -8,7 +8,7 @@ import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt";
|
|
|
8
8
|
/**
|
|
9
9
|
* Describes the file ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind.proto.
|
|
10
10
|
*/
|
|
11
|
-
export const file_ai_stigmer_commons_apiresource_apiresourcekind_api_resource_kind = /*@__PURE__*/ fileDesc("
|
|
11
|
+
export const file_ai_stigmer_commons_apiresource_apiresourcekind_api_resource_kind = /*@__PURE__*/ fileDesc("CkZhaS9zdGlnbWVyL2NvbW1vbnMvYXBpcmVzb3VyY2UvYXBpcmVzb3VyY2VraW5kL2FwaV9yZXNvdXJjZV9raW5kLnByb3RvEi5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuYXBpcmVzb3VyY2VraW5kIswDChNBcGlSZXNvdXJjZUtpbmRNZXRhEk8KBWdyb3VwGAEgASgOMkAuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLmFwaXJlc291cmNla2luZC5BcGlSZXNvdXJjZUdyb3VwElMKB3ZlcnNpb24YAiABKA4yQi5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuYXBpcmVzb3VyY2VraW5kLkFwaVJlc291cmNlVmVyc2lvbhIMCgRuYW1lGAMgASgJEhQKDGRpc3BsYXlfbmFtZRgEIAEoCRIRCglpZF9wcmVmaXgYBSABKAkSFAoMaXNfdmVyc2lvbmVkGAYgASgIEhoKEm5vdF9zZWFyY2hfaW5kZXhlZBgHIAEoCBJKCgR0aWVyGAggASgOMjwuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLmFwaXJlc291cmNla2luZC5SZXNvdXJjZVRpZXISWgoNYXV0aG9yaXphdGlvbhgJIAEoCzJDLmFpLnN0aWdtZXIuY29tbW9ucy5hcGlyZXNvdXJjZS5hcGlyZXNvdXJjZWtpbmQuQXV0aG9yaXphdGlvbkNvbmZpZypCChJBcGlSZXNvdXJjZVZlcnNpb24SJAogYXBpX3Jlc291cmNlX3ZlcnNpb25fdW5zcGVjaWZpZWQQABIGCgJ2MRABKk4KDFJlc291cmNlVGllchIdChlyZXNvdXJjZV90aWVyX3Vuc3BlY2lmaWVkEAASDwoLb3Blbl9zb3VyY2UQARIOCgpjbG91ZF9vbmx5EAIqQQoPUGxhdGZvcm1JZFZhbHVlEiEKHXBsYXRmb3JtX2lkX3ZhbHVlX3Vuc3BlY2lmaWVkEAASCwoHc3RpZ21lchABKrQLCg9BcGlSZXNvdXJjZUtpbmQSHQoZYXBpX3Jlc291cmNlX2tpbmRfdW5rbm93bhAAElsKFGFwaV9yZXNvdXJjZV92ZXJzaW9uEAEaQar/Kz0IARABGhJBcGlSZXNvdXJjZVZlcnNpb24iFEFQSSBSZXNvdXJjZSBWZXJzaW9uKgN2ZXI4AUACSgQIBRAEEj8KCmlhbV9wb2xpY3kQChovqv8rKwgCEAEaCUlhbVBvbGljeSIKSUFNIFBvbGljeSoEaWFtcDgBQAJKBAgCEAESTgoQaWRlbnRpdHlfYWNjb3VudBALGjiq/ys0CAIQARoPSWRlbnRpdHlBY2NvdW50IhBJZGVudGl0eSBBY2NvdW50KgNpZGFAAkoECAEQAxI1CgdhcGlfa2V5EAwaKKr/KyQIAhABGgZBcGlLZXkiB0FQSSBLZXkqA2tleTgBQAJKBAgEEAESUwoRaWRlbnRpdHlfcHJvdmlkZXIQFRo8qv8rOAgCEAEaEElkZW50aXR5UHJvdmlkZXIiEUlkZW50aXR5IFByb3ZpZGVyKgNpZHA4AUACSgQIAhABEkMKDG9yZ2FuaXphdGlvbhAeGjGq/ystCAMQARoMT3JnYW5pemF0aW9uIgxPcmdhbml6YXRpb24qA29yZ0ABSgQIARABEjkKCHBsYXRmb3JtEB8aK6r/KycIAxABGghQbGF0Zm9ybSIIUGxhdGZvcm0qA3BsdDgBQAJKBAgFEAQSMgoFYWdlbnQQKBonqv8rIwgBEAEaBUFnZW50IgVBZ2VudCoDYWd0QAFKCAgCEAEqAggBEmsKD2FnZW50X2V4ZWN1dGlvbhApGlaq/ytSCAEQARoOQWdlbnRFeGVjdXRpb24iD0FnZW50IEV4ZWN1dGlvbioDYWV4QAFKJAgDEAIaHgoHc2Vzc2lvbhIHc2Vzc2lvbhoKc2Vzc2lvbl9pZBI0CgdzZXNzaW9uECoaJ6r/KyMIARABGgdTZXNzaW9uIgdTZXNzaW9uKgNzZXNAAUoECAIQARI0CgVza2lsbBArGimq/yslCAEQARoFU2tpbGwiBVNraWxsKgNza2wwAUABSggIAhABKgIIARJACgptY3Bfc2VydmVyECwaMKr/KywIARABGglNY3BTZXJ2ZXIiCk1DUCBTZXJ2ZXIqA21jcEABSggIAhABKgIIARJiCg5hZ2VudF9pbnN0YW5jZRAtGk6q/ytKCAEQARoNQWdlbnRJbnN0YW5jZSIOQWdlbnQgSW5zdGFuY2UqA2FpbkABSh4IAhABIhgKBWFnZW50EgVhZ2VudBoIYWdlbnRfaWQSOwoId29ya2Zsb3cQMhotqv8rKQgBEAEaCFdvcmtmbG93IghXb3JrZmxvdyoDd2ZsQAFKCAgCEAEqAggBEnQKEXdvcmtmbG93X2luc3RhbmNlEDMaXar/K1kIARABGhBXb3JrZmxvd0luc3RhbmNlIhFXb3JrZmxvdyBJbnN0YW5jZSoDd2luQAFKJwgCEAEiIQoId29ya2Zsb3cSCHdvcmtmbG93Ggt3b3JrZmxvd19pZBJUChJ3b3JrZmxvd19leGVjdXRpb24QNBo8qv8rOAgBEAEaEVdvcmtmbG93RXhlY3V0aW9uIhJXb3JrZmxvdyBFeGVjdXRpb24qA3dleEABSgQIAhABEkIKC2Vudmlyb25tZW50EDUaMar/Ky0IARABGgtFbnZpcm9ubWVudCILRW52aXJvbm1lbnQqA2VudkABSgYIAhABMAESUgoRZXhlY3V0aW9uX2NvbnRleHQQNho7qv8rNwgBEAEaEEV4ZWN1dGlvbkNvbnRleHQiEUV4ZWN1dGlvbiBDb250ZXh0KgRleGVjQAFKBAgFEAQSNAoHcHJvamVjdBA8Gieq/ysjCAMQARoHUHJvamVjdCIHUHJvamVjdCoDcHJqQAFKBAgCEAE6hQEKCWtpbmRfbWV0YRIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zGPW/BSABKAsyQy5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuYXBpcmVzb3VyY2VraW5kLkFwaVJlc291cmNlS2luZE1ldGFSCGtpbmRNZXRhQhtCGUFwaVJlc291cmNlS2luZE91dGVyQ2xhc3NiBnByb3RvMw", [file_ai_stigmer_commons_apiresource_apiresourcekind_api_resource_group, file_ai_stigmer_commons_apiresource_apiresourcekind_authorization_config, file_google_protobuf_descriptor]);
|
|
12
12
|
/**
|
|
13
13
|
* Describes the message ai.stigmer.commons.apiresource.apiresourcekind.ApiResourceKindMeta.
|
|
14
14
|
* Use `create(ApiResourceKindMetaSchema)` to create a new message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api_resource_kind_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,sKAAsK;AACtK,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAExF,OAAO,EAAE,sEAAsE,EAAE,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAE,wEAAwE,EAAE,MAAM,2BAA2B,CAAC;AAErH,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAGzE;;GAEG;AACH,MAAM,CAAC,MAAM,qEAAqE,GAAY,aAAa,CACzG,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"api_resource_kind_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,6 +108,14 @@ export declare const ParentRelationConfigSchema: GenMessage<ParentRelationConfig
|
|
|
108
108
|
* -> Creates: agent_instance#agent@agent:<agent_id>
|
|
109
109
|
* -> Creates: agent_instance#owner@identity_account:<creator_id>
|
|
110
110
|
*
|
|
111
|
+
* Personal resource with creator attribution (environment):
|
|
112
|
+
* scope_type: AUTHORIZATION_SCOPE_TYPE_ORGANIZATION
|
|
113
|
+
* owner_type: OWNER_ATTRIBUTION_TYPE_DIRECT
|
|
114
|
+
* requires_creator_tuple: true
|
|
115
|
+
* -> Creates: environment#organization@organization:<org_id>
|
|
116
|
+
* -> Creates: environment#owner@identity_account:<creator_id>
|
|
117
|
+
* -> Creates: environment#creator@identity_account:<creator_id>
|
|
118
|
+
*
|
|
111
119
|
* @generated from message ai.stigmer.commons.apiresource.apiresourcekind.AuthorizationConfig
|
|
112
120
|
*/
|
|
113
121
|
export type AuthorizationConfig = Message<"ai.stigmer.commons.apiresource.apiresourcekind.AuthorizationConfig"> & {
|
|
@@ -147,6 +155,18 @@ export type AuthorizationConfig = Message<"ai.stigmer.commons.apiresource.apires
|
|
|
147
155
|
* @generated from field: ai.stigmer.commons.apiresource.apiresourcekind.VisibilityConfig visibility = 5;
|
|
148
156
|
*/
|
|
149
157
|
visibility?: VisibilityConfig;
|
|
158
|
+
/**
|
|
159
|
+
* When true, creates an immutable creator relation tuple alongside the owner tuple.
|
|
160
|
+
* FGA tuple: resource#creator@identity_account:<creator_id>
|
|
161
|
+
* Used for resources where creator identity drives specific permissions
|
|
162
|
+
* (e.g., environment: only the creator can read unredacted secret values).
|
|
163
|
+
* The creator tuple uses the same identity as the owner tuple but serves
|
|
164
|
+
* a different purpose: owner is mutable (can be transferred), creator is
|
|
165
|
+
* permanent attribution.
|
|
166
|
+
*
|
|
167
|
+
* @generated from field: bool requires_creator_tuple = 6;
|
|
168
|
+
*/
|
|
169
|
+
requiresCreatorTuple: boolean;
|
|
150
170
|
};
|
|
151
171
|
/**
|
|
152
172
|
* Describes the message ai.stigmer.commons.apiresource.apiresourcekind.AuthorizationConfig.
|
|
@@ -5,7 +5,7 @@ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
|
|
|
5
5
|
/**
|
|
6
6
|
* Describes the file ai/stigmer/commons/apiresource/apiresourcekind/authorization_config.proto.
|
|
7
7
|
*/
|
|
8
|
-
export const file_ai_stigmer_commons_apiresource_apiresourcekind_authorization_config = /*@__PURE__*/ fileDesc("
|
|
8
|
+
export const file_ai_stigmer_commons_apiresource_apiresourcekind_authorization_config = /*@__PURE__*/ fileDesc("CklhaS9zdGlnbWVyL2NvbW1vbnMvYXBpcmVzb3VyY2UvYXBpcmVzb3VyY2VraW5kL2F1dGhvcml6YXRpb25fY29uZmlnLnByb3RvEi5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuYXBpcmVzb3VyY2VraW5kIisKEFZpc2liaWxpdHlDb25maWcSFwoPc3VwcG9ydHNfcHVibGljGAEgASgIIkoKFFBhcmVudFJlbGF0aW9uQ29uZmlnEgwKBGtpbmQYASABKAkSEAoIcmVsYXRpb24YAiABKAkSEgoKc3BlY19maWVsZBgDIAEoCSL5AwoTQXV0aG9yaXphdGlvbkNvbmZpZxJaCgpzY29wZV90eXBlGAEgASgOMkYuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLmFwaXJlc291cmNla2luZC5BdXRob3JpemF0aW9uU2NvcGVUeXBlElgKCm93bmVyX3R5cGUYAiABKA4yRC5haS5zdGlnbWVyLmNvbW1vbnMuYXBpcmVzb3VyY2UuYXBpcmVzb3VyY2VraW5kLk93bmVyQXR0cmlidXRpb25UeXBlElQKBnBhcmVudBgDIAEoCzJELmFpLnN0aWdtZXIuY29tbW9ucy5hcGlyZXNvdXJjZS5hcGlyZXNvdXJjZWtpbmQuUGFyZW50UmVsYXRpb25Db25maWcSYAoSYWRkaXRpb25hbF9wYXJlbnRzGAQgAygLMkQuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLmFwaXJlc291cmNla2luZC5QYXJlbnRSZWxhdGlvbkNvbmZpZxJUCgp2aXNpYmlsaXR5GAUgASgLMkAuYWkuc3RpZ21lci5jb21tb25zLmFwaXJlc291cmNlLmFwaXJlc291cmNla2luZC5WaXNpYmlsaXR5Q29uZmlnEh4KFnJlcXVpcmVzX2NyZWF0b3JfdHVwbGUYBiABKAgqhQIKFkF1dGhvcml6YXRpb25TY29wZVR5cGUSKAokQVVUSE9SSVpBVElPTl9TQ09QRV9UWVBFX1VOU1BFQ0lGSUVEEAASJQohQVVUSE9SSVpBVElPTl9TQ09QRV9UWVBFX1BMQVRGT1JNEAESKQolQVVUSE9SSVpBVElPTl9TQ09QRV9UWVBFX09SR0FOSVpBVElPThACEiMKH0FVVEhPUklaQVRJT05fU0NPUEVfVFlQRV9QQVJFTlQQAxInCiNBVVRIT1JJWkFUSU9OX1NDT1BFX1RZUEVfT1dORVJfT05MWRAEEiEKHUFVVEhPUklaQVRJT05fU0NPUEVfVFlQRV9OT05FEAUqyQEKFE93bmVyQXR0cmlidXRpb25UeXBlEiYKIk9XTkVSX0FUVFJJQlVUSU9OX1RZUEVfVU5TUEVDSUZJRUQQABIhCh1PV05FUl9BVFRSSUJVVElPTl9UWVBFX0RJUkVDVBABEiQKIE9XTkVSX0FUVFJJQlVUSU9OX1RZUEVfSU5IRVJJVEVEEAISHwobT1dORVJfQVRUUklCVVRJT05fVFlQRV9TRUxGEAMSHwobT1dORVJfQVRUUklCVVRJT05fVFlQRV9OT05FEARCGkIYQXV0aG9yaXphdGlvbkNvbmZpZ1Byb3RvYgZwcm90bzM");
|
|
9
9
|
/**
|
|
10
10
|
* Describes the message ai.stigmer.commons.apiresource.apiresourcekind.VisibilityConfig.
|
|
11
11
|
* Use `create(VisibilityConfigSchema)` to create a new message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorization_config_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,yKAAyK;AACzK,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAG/E;;GAEG;AACH,MAAM,CAAC,MAAM,wEAAwE,GAAY,aAAa,CAC5G,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"authorization_config_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/commons/apiresource/apiresourcekind/authorization_config_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,yKAAyK;AACzK,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAG/E;;GAEG;AACH,MAAM,CAAC,MAAM,wEAAwE,GAAY,aAAa,CAC5G,QAAQ,CAAC,6oDAA6oD,CAAC,CAAC;AA+B1pD;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAiC,aAAa,CAC/E,WAAW,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAC;AAsC3F;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqC,aAAa,CACvF,WAAW,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAC;AAqG3F;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAoC,aAAa,CACrF,WAAW,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAC;AAE3F;;;;;GAKG;AACH,MAAM,CAAN,IAAY,sBAiDX;AAjDD,WAAY,sBAAsB;IAChC;;OAEG;IACH,iFAAe,CAAA;IAEf;;;;;;OAMG;IACH,2EAAY,CAAA;IAEZ;;;;;;OAMG;IACH,mFAAgB,CAAA;IAEhB;;;;;;OAMG;IACH,uEAAU,CAAA;IAEV;;;;;;OAMG;IACH,+EAAc,CAAA;IAEd;;;;;OAKG;IACH,mEAAQ,CAAA;AACV,CAAC,EAjDW,sBAAsB,KAAtB,sBAAsB,QAiDjC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAoC,aAAa,CACxF,QAAQ,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAC;AAExF;;;;;GAKG;AACH,MAAM,CAAN,IAAY,oBAwCX;AAxCD,WAAY,oBAAoB;IAC9B;;OAEG;IACH,6EAAe,CAAA;IAEf;;;;;;OAMG;IACH,mEAAU,CAAA;IAEV;;;;;;OAMG;IACH,yEAAa,CAAA;IAEb;;;;;;OAMG;IACH,+DAAQ,CAAA;IAER;;;;;OAKG;IACH,+DAAQ,CAAA;AACV,CAAC,EAxCW,oBAAoB,KAApB,oBAAoB,QAwC/B;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAkC,aAAa,CACpF,QAAQ,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -163,7 +163,15 @@ export declare enum ApiResourceIamPermission {
|
|
|
163
163
|
*
|
|
164
164
|
* @generated from enum value: can_execute = 22;
|
|
165
165
|
*/
|
|
166
|
-
can_execute = 22
|
|
166
|
+
can_execute = 22,
|
|
167
|
+
/**
|
|
168
|
+
* Secret access permissions
|
|
169
|
+
*
|
|
170
|
+
* Permission to read unredacted secret values (creator-only)
|
|
171
|
+
*
|
|
172
|
+
* @generated from enum value: can_read_secrets = 25;
|
|
173
|
+
*/
|
|
174
|
+
can_read_secrets = 25
|
|
167
175
|
}
|
|
168
176
|
/**
|
|
169
177
|
* Describes the enum ai.stigmer.iam.iampolicy.v1.rpcauthorization.ApiResourceIamPermission.
|
|
@@ -5,7 +5,7 @@ import { enumDesc, fileDesc } from "@bufbuild/protobuf/codegenv1";
|
|
|
5
5
|
/**
|
|
6
6
|
* Describes the file ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission.proto.
|
|
7
7
|
*/
|
|
8
|
-
export const file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_iam_permission = /*@__PURE__*/ fileDesc("
|
|
8
|
+
export const file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_iam_permission = /*@__PURE__*/ fileDesc("CkFhaS9zdGlnbWVyL2lhbS9pYW1wb2xpY3kvdjEvcnBjYXV0aG9yaXphdGlvbi9pYW1fcGVybWlzc2lvbi5wcm90bxIsYWkuc3RpZ21lci5pYW0uaWFtcG9saWN5LnYxLnJwY2F1dGhvcml6YXRpb24qgQQKGEFwaVJlc291cmNlSWFtUGVybWlzc2lvbhIPCgt1bnNwZWNpZmllZBAAEgoKBmNyZWF0ZRABEg4KCmNhbl9kZWxldGUQAhIMCghjYW5fdmlldxADEgwKCGNhbl9lZGl0EAQSDAoIb3BlcmF0b3IQBRIMCghwbGF0Zm9ybRAGEhgKFGxvZ2luX3RvX2JhY2tfb2ZmaWNlEAcSFAoQY2FuX2dyYW50X2FjY2VzcxAIEhMKD2Nhbl92aWV3X2FjY2VzcxAJEgkKBW93bmVyEAoSCgoGbWVtYmVyEAsSFAoQaWRlbnRpdHlfYWNjb3VudBAMEhAKDG9yZ2FuaXphdGlvbhANEgsKB3Nlc3Npb24QDhIJCgVhZ2VudBAPEhQKEGNhbl9jcmVhdGVfYWdlbnQQEBIXChNjYW5fY3JlYXRlX3dvcmtmbG93EBESFgoSY2FuX2NyZWF0ZV9zZXNzaW9uEBISGwoXY2FuX2NyZWF0ZV9leGVjdXRpb25faW4QExIXChNjYW5fY3JlYXRlX2luc3RhbmNlEBQSFAoQY2FuX2NyZWF0ZV9za2lsbBAVEhYKEmNhbl9jcmVhdGVfcHJvamVjdBAXEhIKDmNhbl9jcmVhdGVfaWRwEBgSDwoLY2FuX2V4ZWN1dGUQFhIUChBjYW5fcmVhZF9zZWNyZXRzEBliBnByb3RvMw");
|
|
9
9
|
/**
|
|
10
10
|
* ApiResourceIamPermission defines the core permissions used in the authorization model.
|
|
11
11
|
* This is a simplified set for a demo project, containing only essential permissions.
|
|
@@ -168,6 +168,14 @@ export var ApiResourceIamPermission;
|
|
|
168
168
|
* @generated from enum value: can_execute = 22;
|
|
169
169
|
*/
|
|
170
170
|
ApiResourceIamPermission[ApiResourceIamPermission["can_execute"] = 22] = "can_execute";
|
|
171
|
+
/**
|
|
172
|
+
* Secret access permissions
|
|
173
|
+
*
|
|
174
|
+
* Permission to read unredacted secret values (creator-only)
|
|
175
|
+
*
|
|
176
|
+
* @generated from enum value: can_read_secrets = 25;
|
|
177
|
+
*/
|
|
178
|
+
ApiResourceIamPermission[ApiResourceIamPermission["can_read_secrets"] = 25] = "can_read_secrets";
|
|
171
179
|
})(ApiResourceIamPermission || (ApiResourceIamPermission = {}));
|
|
172
180
|
/**
|
|
173
181
|
* Describes the enum ai.stigmer.iam.iampolicy.v1.rpcauthorization.ApiResourceIamPermission.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iam_permission_pb.js","sourceRoot":"","sources":["../../../../../../../ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,+JAA+J;AAC/J,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAElE;;GAEG;AACH,MAAM,CAAC,MAAM,gEAAgE,GAAY,aAAa,CACpG,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"iam_permission_pb.js","sourceRoot":"","sources":["../../../../../../../ai/stigmer/iam/iampolicy/v1/rpcauthorization/iam_permission_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,+JAA+J;AAC/J,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAElE;;GAEG;AACH,MAAM,CAAC,MAAM,gEAAgE,GAAY,aAAa,CACpG,QAAQ,CAAC,o1BAAo1B,CAAC,CAAC;AAEj2B;;;;;GAKG;AACH,MAAM,CAAN,IAAY,wBA4LX;AA5LD,WAAY,wBAAwB;IAClC;;OAEG;IACH,qFAAe,CAAA;IAEf;;;;OAIG;IACH,2EAAU,CAAA;IAEV;;OAEG;IACH,mFAAc,CAAA;IAEd;;OAEG;IACH,+EAAY,CAAA;IAEZ;;OAEG;IACH,+EAAY,CAAA;IAEZ;;;;;;OAMG;IACH,+EAAY,CAAA;IAEZ;;;;OAIG;IACH,+EAAY,CAAA;IAEZ;;;;OAIG;IACH,uGAAwB,CAAA;IAExB;;;;;;OAMG;IACH,+FAAoB,CAAA;IAEpB;;;;OAIG;IACH,6FAAmB,CAAA;IAEnB;;;;;;OAMG;IACH,0EAAU,CAAA;IAEV;;;;OAIG;IACH,4EAAW,CAAA;IAEX;;;;;;OAMG;IACH,gGAAqB,CAAA;IAErB;;;;OAIG;IACH,wFAAiB,CAAA;IAEjB;;;;OAIG;IACH,8EAAY,CAAA;IAEZ;;;;OAIG;IACH,0EAAU,CAAA;IAEV;;;;;;OAMG;IACH,gGAAqB,CAAA;IAErB;;;;OAIG;IACH,sGAAwB,CAAA;IAExB;;;;OAIG;IACH,oGAAuB,CAAA;IAEvB;;;;OAIG;IACH,8GAA4B,CAAA;IAE5B;;;;OAIG;IACH,sGAAwB,CAAA;IAExB;;;;OAIG;IACH,gGAAqB,CAAA;IAErB;;;;OAIG;IACH,oGAAuB,CAAA;IAEvB;;;;OAIG;IACH,4FAAmB,CAAA;IAEnB;;;;;;OAMG;IACH,sFAAgB,CAAA;IAEhB;;;;;;OAMG;IACH,gGAAqB,CAAA;AACvB,CAAC,EA5LW,wBAAwB,KAAxB,wBAAwB,QA4LnC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAsC,aAAa,CAC5F,QAAQ,CAAC,gEAAgE,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHubService provides OAuth integration with GitHub.
|
|
3
|
+
*
|
|
4
|
+
* This is a platform utility service — not a domain resource.
|
|
5
|
+
* It enables the web console (and SDK consumers) to connect a user's
|
|
6
|
+
* GitHub account via OAuth, then browse and select repositories
|
|
7
|
+
* for workspace configuration.
|
|
8
|
+
*
|
|
9
|
+
* The service handles the server-side OAuth code exchange (protecting
|
|
10
|
+
* the client_secret) and provides the authorize URL so the frontend
|
|
11
|
+
* does not need to know the client_id or redirect_uri.
|
|
12
|
+
*
|
|
13
|
+
* Tokens are ephemeral — they are returned to the caller and never
|
|
14
|
+
* persisted by the backend.
|
|
15
|
+
*
|
|
16
|
+
* @generated from service ai.stigmer.platform.github.v1.GitHubService
|
|
17
|
+
*/
|
|
18
|
+
export declare const GitHubService: {
|
|
19
|
+
readonly typeName: "ai.stigmer.platform.github.v1.GitHubService";
|
|
20
|
+
readonly methods: {
|
|
21
|
+
/**
|
|
22
|
+
* Returns the GitHub OAuth authorize URL for initiating the OAuth flow.
|
|
23
|
+
*
|
|
24
|
+
* The backend constructs the URL with the registered client_id, requested
|
|
25
|
+
* scopes, and a random state parameter for CSRF protection. The frontend
|
|
26
|
+
* redirects the user to this URL, and GitHub redirects back to the
|
|
27
|
+
* provided redirect_uri with an authorization code.
|
|
28
|
+
*
|
|
29
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.GetOAuthAuthorizeUrl
|
|
30
|
+
*/
|
|
31
|
+
readonly getOAuthAuthorizeUrl: {
|
|
32
|
+
readonly name: "GetOAuthAuthorizeUrl";
|
|
33
|
+
readonly I: any;
|
|
34
|
+
readonly O: any;
|
|
35
|
+
readonly kind: any;
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Exchanges a GitHub OAuth authorization code for an access token.
|
|
39
|
+
*
|
|
40
|
+
* The frontend calls this after receiving the authorization code from
|
|
41
|
+
* GitHub's OAuth redirect. The backend makes the token exchange request
|
|
42
|
+
* to GitHub using the client_secret (which must never be exposed to
|
|
43
|
+
* the frontend).
|
|
44
|
+
*
|
|
45
|
+
* The returned access_token is NOT stored by the backend. The frontend
|
|
46
|
+
* is responsible for persisting it (e.g., in localStorage) and including
|
|
47
|
+
* it in subsequent requests that need GitHub access.
|
|
48
|
+
*
|
|
49
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.ExchangeOAuthCode
|
|
50
|
+
*/
|
|
51
|
+
readonly exchangeOAuthCode: {
|
|
52
|
+
readonly name: "ExchangeOAuthCode";
|
|
53
|
+
readonly I: any;
|
|
54
|
+
readonly O: any;
|
|
55
|
+
readonly kind: any;
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// @generated by protoc-gen-connect-es v1.6.1 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/platform/github/v1/service.proto (package ai.stigmer.platform.github.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
// @ts-nocheck
|
|
5
|
+
import { MethodKind } from "@bufbuild/protobuf";
|
|
6
|
+
/**
|
|
7
|
+
* GitHubService provides OAuth integration with GitHub.
|
|
8
|
+
*
|
|
9
|
+
* This is a platform utility service — not a domain resource.
|
|
10
|
+
* It enables the web console (and SDK consumers) to connect a user's
|
|
11
|
+
* GitHub account via OAuth, then browse and select repositories
|
|
12
|
+
* for workspace configuration.
|
|
13
|
+
*
|
|
14
|
+
* The service handles the server-side OAuth code exchange (protecting
|
|
15
|
+
* the client_secret) and provides the authorize URL so the frontend
|
|
16
|
+
* does not need to know the client_id or redirect_uri.
|
|
17
|
+
*
|
|
18
|
+
* Tokens are ephemeral — they are returned to the caller and never
|
|
19
|
+
* persisted by the backend.
|
|
20
|
+
*
|
|
21
|
+
* @generated from service ai.stigmer.platform.github.v1.GitHubService
|
|
22
|
+
*/
|
|
23
|
+
export const GitHubService = {
|
|
24
|
+
typeName: "ai.stigmer.platform.github.v1.GitHubService",
|
|
25
|
+
methods: {
|
|
26
|
+
/**
|
|
27
|
+
* Returns the GitHub OAuth authorize URL for initiating the OAuth flow.
|
|
28
|
+
*
|
|
29
|
+
* The backend constructs the URL with the registered client_id, requested
|
|
30
|
+
* scopes, and a random state parameter for CSRF protection. The frontend
|
|
31
|
+
* redirects the user to this URL, and GitHub redirects back to the
|
|
32
|
+
* provided redirect_uri with an authorization code.
|
|
33
|
+
*
|
|
34
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.GetOAuthAuthorizeUrl
|
|
35
|
+
*/
|
|
36
|
+
getOAuthAuthorizeUrl: {
|
|
37
|
+
name: "GetOAuthAuthorizeUrl",
|
|
38
|
+
I: GetOAuthAuthorizeUrlRequest,
|
|
39
|
+
O: GetOAuthAuthorizeUrlResponse,
|
|
40
|
+
kind: MethodKind.Unary,
|
|
41
|
+
},
|
|
42
|
+
/**
|
|
43
|
+
* Exchanges a GitHub OAuth authorization code for an access token.
|
|
44
|
+
*
|
|
45
|
+
* The frontend calls this after receiving the authorization code from
|
|
46
|
+
* GitHub's OAuth redirect. The backend makes the token exchange request
|
|
47
|
+
* to GitHub using the client_secret (which must never be exposed to
|
|
48
|
+
* the frontend).
|
|
49
|
+
*
|
|
50
|
+
* The returned access_token is NOT stored by the backend. The frontend
|
|
51
|
+
* is responsible for persisting it (e.g., in localStorage) and including
|
|
52
|
+
* it in subsequent requests that need GitHub access.
|
|
53
|
+
*
|
|
54
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.ExchangeOAuthCode
|
|
55
|
+
*/
|
|
56
|
+
exchangeOAuthCode: {
|
|
57
|
+
name: "ExchangeOAuthCode",
|
|
58
|
+
I: ExchangeOAuthCodeRequest,
|
|
59
|
+
O: ExchangeOAuthCodeResponse,
|
|
60
|
+
kind: MethodKind.Unary,
|
|
61
|
+
},
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=service_connect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service_connect.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/platform/github/v1/service_connect.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,0HAA0H;AAC1H,oBAAoB;AACpB,cAAc;AAGd,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,6CAA6C;IACvD,OAAO,EAAE;QACP;;;;;;;;;WASG;QACH,oBAAoB,EAAE;YACpB,IAAI,EAAE,sBAAsB;YAC5B,CAAC,EAAE,2BAA2B;YAC9B,CAAC,EAAE,4BAA4B;YAC/B,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;QACD;;;;;;;;;;;;;WAaG;QACH,iBAAiB,EAAE;YACjB,IAAI,EAAE,mBAAmB;YACzB,CAAC,EAAE,wBAAwB;YAC3B,CAAC,EAAE,yBAAyB;YAC5B,IAAI,EAAE,UAAU,CAAC,KAAK;SACvB;KACF;CACO,CAAC"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
|
|
2
|
+
import type { Message } from "@bufbuild/protobuf";
|
|
3
|
+
/**
|
|
4
|
+
* Describes the file ai/stigmer/platform/github/v1/service.proto.
|
|
5
|
+
*/
|
|
6
|
+
export declare const file_ai_stigmer_platform_github_v1_service: GenFile;
|
|
7
|
+
/**
|
|
8
|
+
* Request to get the OAuth authorize URL.
|
|
9
|
+
*
|
|
10
|
+
* @generated from message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlRequest
|
|
11
|
+
*/
|
|
12
|
+
export type GetOAuthAuthorizeUrlRequest = Message<"ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlRequest"> & {
|
|
13
|
+
/**
|
|
14
|
+
* The URI that GitHub will redirect back to after the user authorizes.
|
|
15
|
+
* Must match one of the callback URLs registered on the GitHub App.
|
|
16
|
+
*
|
|
17
|
+
* @generated from field: string redirect_uri = 1;
|
|
18
|
+
*/
|
|
19
|
+
redirectUri: string;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Describes the message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlRequest.
|
|
23
|
+
* Use `create(GetOAuthAuthorizeUrlRequestSchema)` to create a new message.
|
|
24
|
+
*/
|
|
25
|
+
export declare const GetOAuthAuthorizeUrlRequestSchema: GenMessage<GetOAuthAuthorizeUrlRequest>;
|
|
26
|
+
/**
|
|
27
|
+
* Response containing the constructed OAuth authorize URL.
|
|
28
|
+
*
|
|
29
|
+
* @generated from message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlResponse
|
|
30
|
+
*/
|
|
31
|
+
export type GetOAuthAuthorizeUrlResponse = Message<"ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlResponse"> & {
|
|
32
|
+
/**
|
|
33
|
+
* The full GitHub OAuth authorize URL to redirect the user to.
|
|
34
|
+
*
|
|
35
|
+
* @generated from field: string authorize_url = 1;
|
|
36
|
+
*/
|
|
37
|
+
authorizeUrl: string;
|
|
38
|
+
/**
|
|
39
|
+
* A random state value for CSRF protection. The frontend must verify
|
|
40
|
+
* this matches the state returned in the callback.
|
|
41
|
+
*
|
|
42
|
+
* @generated from field: string state = 2;
|
|
43
|
+
*/
|
|
44
|
+
state: string;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Describes the message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlResponse.
|
|
48
|
+
* Use `create(GetOAuthAuthorizeUrlResponseSchema)` to create a new message.
|
|
49
|
+
*/
|
|
50
|
+
export declare const GetOAuthAuthorizeUrlResponseSchema: GenMessage<GetOAuthAuthorizeUrlResponse>;
|
|
51
|
+
/**
|
|
52
|
+
* Request to exchange an authorization code for an access token.
|
|
53
|
+
*
|
|
54
|
+
* @generated from message ai.stigmer.platform.github.v1.ExchangeOAuthCodeRequest
|
|
55
|
+
*/
|
|
56
|
+
export type ExchangeOAuthCodeRequest = Message<"ai.stigmer.platform.github.v1.ExchangeOAuthCodeRequest"> & {
|
|
57
|
+
/**
|
|
58
|
+
* The authorization code received from GitHub's OAuth redirect.
|
|
59
|
+
*
|
|
60
|
+
* @generated from field: string code = 1;
|
|
61
|
+
*/
|
|
62
|
+
code: string;
|
|
63
|
+
/**
|
|
64
|
+
* The state value from the original authorize request, for CSRF verification.
|
|
65
|
+
*
|
|
66
|
+
* @generated from field: string state = 2;
|
|
67
|
+
*/
|
|
68
|
+
state: string;
|
|
69
|
+
/**
|
|
70
|
+
* The redirect_uri used in the original authorize request.
|
|
71
|
+
* GitHub requires this to match for the token exchange.
|
|
72
|
+
*
|
|
73
|
+
* @generated from field: string redirect_uri = 3;
|
|
74
|
+
*/
|
|
75
|
+
redirectUri: string;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Describes the message ai.stigmer.platform.github.v1.ExchangeOAuthCodeRequest.
|
|
79
|
+
* Use `create(ExchangeOAuthCodeRequestSchema)` to create a new message.
|
|
80
|
+
*/
|
|
81
|
+
export declare const ExchangeOAuthCodeRequestSchema: GenMessage<ExchangeOAuthCodeRequest>;
|
|
82
|
+
/**
|
|
83
|
+
* Response containing the exchanged access token.
|
|
84
|
+
*
|
|
85
|
+
* @generated from message ai.stigmer.platform.github.v1.ExchangeOAuthCodeResponse
|
|
86
|
+
*/
|
|
87
|
+
export type ExchangeOAuthCodeResponse = Message<"ai.stigmer.platform.github.v1.ExchangeOAuthCodeResponse"> & {
|
|
88
|
+
/**
|
|
89
|
+
* The GitHub access token for API calls.
|
|
90
|
+
*
|
|
91
|
+
* @generated from field: string access_token = 1;
|
|
92
|
+
*/
|
|
93
|
+
accessToken: string;
|
|
94
|
+
/**
|
|
95
|
+
* The token type (typically "bearer").
|
|
96
|
+
*
|
|
97
|
+
* @generated from field: string token_type = 2;
|
|
98
|
+
*/
|
|
99
|
+
tokenType: string;
|
|
100
|
+
/**
|
|
101
|
+
* The granted OAuth scopes (comma-separated).
|
|
102
|
+
*
|
|
103
|
+
* @generated from field: string scope = 3;
|
|
104
|
+
*/
|
|
105
|
+
scope: string;
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Describes the message ai.stigmer.platform.github.v1.ExchangeOAuthCodeResponse.
|
|
109
|
+
* Use `create(ExchangeOAuthCodeResponseSchema)` to create a new message.
|
|
110
|
+
*/
|
|
111
|
+
export declare const ExchangeOAuthCodeResponseSchema: GenMessage<ExchangeOAuthCodeResponse>;
|
|
112
|
+
/**
|
|
113
|
+
* GitHubService provides OAuth integration with GitHub.
|
|
114
|
+
*
|
|
115
|
+
* This is a platform utility service — not a domain resource.
|
|
116
|
+
* It enables the web console (and SDK consumers) to connect a user's
|
|
117
|
+
* GitHub account via OAuth, then browse and select repositories
|
|
118
|
+
* for workspace configuration.
|
|
119
|
+
*
|
|
120
|
+
* The service handles the server-side OAuth code exchange (protecting
|
|
121
|
+
* the client_secret) and provides the authorize URL so the frontend
|
|
122
|
+
* does not need to know the client_id or redirect_uri.
|
|
123
|
+
*
|
|
124
|
+
* Tokens are ephemeral — they are returned to the caller and never
|
|
125
|
+
* persisted by the backend.
|
|
126
|
+
*
|
|
127
|
+
* @generated from service ai.stigmer.platform.github.v1.GitHubService
|
|
128
|
+
*/
|
|
129
|
+
export declare const GitHubService: GenService<{
|
|
130
|
+
/**
|
|
131
|
+
* Returns the GitHub OAuth authorize URL for initiating the OAuth flow.
|
|
132
|
+
*
|
|
133
|
+
* The backend constructs the URL with the registered client_id, requested
|
|
134
|
+
* scopes, and a random state parameter for CSRF protection. The frontend
|
|
135
|
+
* redirects the user to this URL, and GitHub redirects back to the
|
|
136
|
+
* provided redirect_uri with an authorization code.
|
|
137
|
+
*
|
|
138
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.GetOAuthAuthorizeUrl
|
|
139
|
+
*/
|
|
140
|
+
getOAuthAuthorizeUrl: {
|
|
141
|
+
methodKind: "unary";
|
|
142
|
+
input: typeof GetOAuthAuthorizeUrlRequestSchema;
|
|
143
|
+
output: typeof GetOAuthAuthorizeUrlResponseSchema;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* Exchanges a GitHub OAuth authorization code for an access token.
|
|
147
|
+
*
|
|
148
|
+
* The frontend calls this after receiving the authorization code from
|
|
149
|
+
* GitHub's OAuth redirect. The backend makes the token exchange request
|
|
150
|
+
* to GitHub using the client_secret (which must never be exposed to
|
|
151
|
+
* the frontend).
|
|
152
|
+
*
|
|
153
|
+
* The returned access_token is NOT stored by the backend. The frontend
|
|
154
|
+
* is responsible for persisting it (e.g., in localStorage) and including
|
|
155
|
+
* it in subsequent requests that need GitHub access.
|
|
156
|
+
*
|
|
157
|
+
* @generated from rpc ai.stigmer.platform.github.v1.GitHubService.ExchangeOAuthCode
|
|
158
|
+
*/
|
|
159
|
+
exchangeOAuthCode: {
|
|
160
|
+
methodKind: "unary";
|
|
161
|
+
input: typeof ExchangeOAuthCodeRequestSchema;
|
|
162
|
+
output: typeof ExchangeOAuthCodeResponseSchema;
|
|
163
|
+
};
|
|
164
|
+
}>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
|
|
2
|
+
// @generated from file ai/stigmer/platform/github/v1/service.proto (package ai.stigmer.platform.github.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
|
|
5
|
+
import { file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_method_options } from "../../../iam/iampolicy/v1/rpcauthorization/method_options_pb";
|
|
6
|
+
import { file_buf_validate_validate } from "../../../../../buf/validate/validate_pb";
|
|
7
|
+
/**
|
|
8
|
+
* Describes the file ai/stigmer/platform/github/v1/service.proto.
|
|
9
|
+
*/
|
|
10
|
+
export const file_ai_stigmer_platform_github_v1_service = /*@__PURE__*/ fileDesc("CithaS9zdGlnbWVyL3BsYXRmb3JtL2dpdGh1Yi92MS9zZXJ2aWNlLnByb3RvEh1haS5zdGlnbWVyLnBsYXRmb3JtLmdpdGh1Yi52MSI8ChtHZXRPQXV0aEF1dGhvcml6ZVVybFJlcXVlc3QSHQoMcmVkaXJlY3RfdXJpGAEgASgJQge6SARyAhABIkQKHEdldE9BdXRoQXV0aG9yaXplVXJsUmVzcG9uc2USFQoNYXV0aG9yaXplX3VybBgBIAEoCRINCgVzdGF0ZRgCIAEoCSJoChhFeGNoYW5nZU9BdXRoQ29kZVJlcXVlc3QSFQoEY29kZRgBIAEoCUIHukgEcgIQARIWCgVzdGF0ZRgCIAEoCUIHukgEcgIQARIdCgxyZWRpcmVjdF91cmkYAyABKAlCB7pIBHICEAEiVAoZRXhjaGFuZ2VPQXV0aENvZGVSZXNwb25zZRIUCgxhY2Nlc3NfdG9rZW4YASABKAkSEgoKdG9rZW5fdHlwZRgCIAEoCRINCgVzY29wZRgDIAEoCTK2AgoNR2l0SHViU2VydmljZRKVAQoUR2V0T0F1dGhBdXRob3JpemVVcmwSOi5haS5zdGlnbWVyLnBsYXRmb3JtLmdpdGh1Yi52MS5HZXRPQXV0aEF1dGhvcml6ZVVybFJlcXVlc3QaOy5haS5zdGlnbWVyLnBsYXRmb3JtLmdpdGh1Yi52MS5HZXRPQXV0aEF1dGhvcml6ZVVybFJlc3BvbnNlIgTQuBgBEowBChFFeGNoYW5nZU9BdXRoQ29kZRI3LmFpLnN0aWdtZXIucGxhdGZvcm0uZ2l0aHViLnYxLkV4Y2hhbmdlT0F1dGhDb2RlUmVxdWVzdBo4LmFpLnN0aWdtZXIucGxhdGZvcm0uZ2l0aHViLnYxLkV4Y2hhbmdlT0F1dGhDb2RlUmVzcG9uc2UiBNC4GAFiBnByb3RvMw", [file_ai_stigmer_iam_iampolicy_v1_rpcauthorization_method_options, file_buf_validate_validate]);
|
|
11
|
+
/**
|
|
12
|
+
* Describes the message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlRequest.
|
|
13
|
+
* Use `create(GetOAuthAuthorizeUrlRequestSchema)` to create a new message.
|
|
14
|
+
*/
|
|
15
|
+
export const GetOAuthAuthorizeUrlRequestSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_platform_github_v1_service, 0);
|
|
16
|
+
/**
|
|
17
|
+
* Describes the message ai.stigmer.platform.github.v1.GetOAuthAuthorizeUrlResponse.
|
|
18
|
+
* Use `create(GetOAuthAuthorizeUrlResponseSchema)` to create a new message.
|
|
19
|
+
*/
|
|
20
|
+
export const GetOAuthAuthorizeUrlResponseSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_platform_github_v1_service, 1);
|
|
21
|
+
/**
|
|
22
|
+
* Describes the message ai.stigmer.platform.github.v1.ExchangeOAuthCodeRequest.
|
|
23
|
+
* Use `create(ExchangeOAuthCodeRequestSchema)` to create a new message.
|
|
24
|
+
*/
|
|
25
|
+
export const ExchangeOAuthCodeRequestSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_platform_github_v1_service, 2);
|
|
26
|
+
/**
|
|
27
|
+
* Describes the message ai.stigmer.platform.github.v1.ExchangeOAuthCodeResponse.
|
|
28
|
+
* Use `create(ExchangeOAuthCodeResponseSchema)` to create a new message.
|
|
29
|
+
*/
|
|
30
|
+
export const ExchangeOAuthCodeResponseSchema = /*@__PURE__*/ messageDesc(file_ai_stigmer_platform_github_v1_service, 3);
|
|
31
|
+
/**
|
|
32
|
+
* GitHubService provides OAuth integration with GitHub.
|
|
33
|
+
*
|
|
34
|
+
* This is a platform utility service — not a domain resource.
|
|
35
|
+
* It enables the web console (and SDK consumers) to connect a user's
|
|
36
|
+
* GitHub account via OAuth, then browse and select repositories
|
|
37
|
+
* for workspace configuration.
|
|
38
|
+
*
|
|
39
|
+
* The service handles the server-side OAuth code exchange (protecting
|
|
40
|
+
* the client_secret) and provides the authorize URL so the frontend
|
|
41
|
+
* does not need to know the client_id or redirect_uri.
|
|
42
|
+
*
|
|
43
|
+
* Tokens are ephemeral — they are returned to the caller and never
|
|
44
|
+
* persisted by the backend.
|
|
45
|
+
*
|
|
46
|
+
* @generated from service ai.stigmer.platform.github.v1.GitHubService
|
|
47
|
+
*/
|
|
48
|
+
export const GitHubService = /*@__PURE__*/ serviceDesc(file_ai_stigmer_platform_github_v1_service, 0);
|
|
49
|
+
//# sourceMappingURL=service_pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service_pb.js","sourceRoot":"","sources":["../../../../../../ai/stigmer/platform/github/v1/service_pb.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,0HAA0H;AAC1H,oBAAoB;AAGpB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,gEAAgE,EAAE,MAAM,8DAA8D,CAAC;AAChJ,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAGrF;;GAEG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAY,aAAa,CAC9E,QAAQ,CAAC,o8BAAo8B,EAAE,CAAC,gEAAgE,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAiBjjC;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA4C,aAAa,CACrG,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAwB7D;;;GAGG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAA6C,aAAa,CACvG,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AA+B7D;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAyC,aAAa,CAC/F,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AA8B7D;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAA0C,aAAa,CACjG,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,aAAa,GAmCrB,aAAa,CAChB,WAAW,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC"}
|