@opengeni/contracts 2.15.2 → 3.0.1-canary.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/atlassian.js +10 -9
- package/dist/{chunk-NPYLOZAP.js → chunk-5LYFSZ7O.js} +12 -12
- package/dist/{chunk-QP3BIGSC.js → chunk-FBXZZSXA.js} +7668 -7654
- package/dist/chunk-FBXZZSXA.js.map +1 -0
- package/dist/chunk-FY5DZL7T.js +348 -0
- package/dist/chunk-FY5DZL7T.js.map +1 -0
- package/dist/{chunk-6TCVR53X.js → chunk-O5LEQHDM.js} +2 -2
- package/dist/chunk-P3HLDT77.js +59 -0
- package/dist/chunk-P3HLDT77.js.map +1 -0
- package/dist/chunk-TEMFILR7.js +143 -0
- package/dist/chunk-TEMFILR7.js.map +1 -0
- package/dist/connect.d.ts +325 -0
- package/dist/connect.js +182 -0
- package/dist/connect.js.map +1 -0
- package/dist/connection-authority.js +28 -334
- package/dist/connection-authority.js.map +1 -1
- package/dist/editable-artifact-codec-registry.js +2 -2
- package/dist/editable-artifact-live.js +2 -2
- package/dist/editable-artifact-serialized-commit.js +3 -3
- package/dist/editable-artifacts.js +24 -24
- package/dist/external-identities.d.ts +620 -0
- package/dist/external-identities.js +34 -0
- package/dist/external-identities.js.map +1 -0
- package/dist/google-drive.js +12 -11
- package/dist/google-drive.js.map +1 -1
- package/dist/host-mcp-bindings.d.ts +297 -0
- package/dist/host-mcp-bindings.js +195 -0
- package/dist/host-mcp-bindings.js.map +1 -0
- package/dist/index.d.ts +150 -72
- package/dist/index.js +89 -81
- package/dist/personal-github.js +10 -9
- package/dist/personal-github.js.map +1 -1
- package/dist/sandbox-snapshots.d.ts +18 -0
- package/package.json +13 -1
- package/src/connect.ts +202 -0
- package/src/external-identities.ts +213 -0
- package/src/host-mcp-bindings.ts +226 -0
- package/src/index.ts +165 -69
- package/src/sandbox-snapshots.ts +67 -3
- package/dist/chunk-QP3BIGSC.js.map +0 -1
- /package/dist/{chunk-NPYLOZAP.js.map → chunk-5LYFSZ7O.js.map} +0 -0
- /package/dist/{chunk-6TCVR53X.js.map → chunk-O5LEQHDM.js.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -610,6 +610,7 @@ import {
|
|
|
610
610
|
HostExportCursor,
|
|
611
611
|
HostExportInitiator,
|
|
612
612
|
HostExportInitiatorContext,
|
|
613
|
+
HostMcpCreateSelections,
|
|
613
614
|
HostSessionEvent,
|
|
614
615
|
HostUsageEvent,
|
|
615
616
|
HostUsageExport,
|
|
@@ -965,7 +966,6 @@ import {
|
|
|
965
966
|
PackInstallationStatus,
|
|
966
967
|
PackRigResolution,
|
|
967
968
|
PackUninstallPreview,
|
|
968
|
-
Permission,
|
|
969
969
|
PersonalResourceAttachmentIntent,
|
|
970
970
|
PersonalResourceAttachmentSummary,
|
|
971
971
|
PersonalResourceRetentionMode,
|
|
@@ -1126,8 +1126,6 @@ import {
|
|
|
1126
1126
|
SESSION_AUTHORIZATION_LIST_SCOPE_MAX_IDS,
|
|
1127
1127
|
SESSION_EFFECTIVE_TOOL_POLICY_ID_LIMIT,
|
|
1128
1128
|
SESSION_EFFECTIVE_TOOL_POLICY_ID_MAX_LENGTH,
|
|
1129
|
-
SESSION_END_USER_ID_MAX_CHARS,
|
|
1130
|
-
SESSION_END_USER_SOURCE_MAX_CHARS,
|
|
1131
1129
|
SESSION_EVENT_CLIENT_EVENT_ID_MAX_BYTES,
|
|
1132
1130
|
SESSION_EVENT_DUPLICATE_REASON_MAX_BYTES,
|
|
1133
1131
|
SESSION_EVENT_ENVELOPE_MAX_BYTES,
|
|
@@ -1213,7 +1211,6 @@ import {
|
|
|
1213
1211
|
SessionControlResponse,
|
|
1214
1212
|
SessionControlState,
|
|
1215
1213
|
SessionEffectiveToolPolicy,
|
|
1216
|
-
SessionEndUser,
|
|
1217
1214
|
SessionEvent,
|
|
1218
1215
|
SessionEventLatestClass,
|
|
1219
1216
|
SessionEventPayloadMode,
|
|
@@ -1259,6 +1256,7 @@ import {
|
|
|
1259
1256
|
SessionRealtimeModel,
|
|
1260
1257
|
SessionRealtimeMutationResponse,
|
|
1261
1258
|
SessionRealtimeState,
|
|
1259
|
+
SessionScopeSubjectId,
|
|
1262
1260
|
SessionSkill,
|
|
1263
1261
|
SessionSkills,
|
|
1264
1262
|
SessionSpawnDenial,
|
|
@@ -1747,6 +1745,7 @@ import {
|
|
|
1747
1745
|
bundledSkillSelectionFromMetadata,
|
|
1748
1746
|
canonicalCodexFleetReplayJsonV1,
|
|
1749
1747
|
canonicalModalCheckpointProviderBinding,
|
|
1748
|
+
canonicalSkillReviewQuestion,
|
|
1750
1749
|
canonicalizeSlackTaskPolicy,
|
|
1751
1750
|
canonicalizeWorkspaceLearningSourceOverrides,
|
|
1752
1751
|
capabilityCatalogItemIsTrustedForExposure,
|
|
@@ -1799,6 +1798,7 @@ import {
|
|
|
1799
1798
|
omitInlineWorkspaceArchiveWhenObjectRefPresent,
|
|
1800
1799
|
parseSkillFrontmatter,
|
|
1801
1800
|
parseWorkspaceArchiveDescriptor,
|
|
1801
|
+
parseWorkspaceArchiveObjectKey,
|
|
1802
1802
|
parseWorkspaceArchiveObjectRef,
|
|
1803
1803
|
prefixedMcpToolName,
|
|
1804
1804
|
readCodexCredentialPolicySnapshotV1,
|
|
@@ -1847,10 +1847,12 @@ import {
|
|
|
1847
1847
|
signStreamToken,
|
|
1848
1848
|
skillReviewHumanInput,
|
|
1849
1849
|
stableJson,
|
|
1850
|
+
storedSessionMemoryScope,
|
|
1850
1851
|
toolResultSpillFilename,
|
|
1851
1852
|
toolResultSpillSandboxPath,
|
|
1852
1853
|
turnExecutionPolicyAuditMetadata,
|
|
1853
1854
|
validateSkillTextFiles,
|
|
1855
|
+
validateWorkspaceArchiveObjectRef,
|
|
1854
1856
|
variableSetVariableNameReservation,
|
|
1855
1857
|
verifyDelegatedAccessToken,
|
|
1856
1858
|
verifyEnrollToken,
|
|
@@ -1864,7 +1866,7 @@ import {
|
|
|
1864
1866
|
workspaceLearningPolicyRouterContext,
|
|
1865
1867
|
workspaceLearningSourceKey,
|
|
1866
1868
|
workspaceSlackReactionChannelAllowed
|
|
1867
|
-
} from "./chunk-
|
|
1869
|
+
} from "./chunk-FBXZZSXA.js";
|
|
1868
1870
|
import {
|
|
1869
1871
|
CONNECTOR_ATTACHMENT_FILENAME_MAX_UTF8_BYTES,
|
|
1870
1872
|
CONNECTOR_ATTACHMENT_MAX_BYTES,
|
|
@@ -1896,7 +1898,7 @@ import {
|
|
|
1896
1898
|
assertCanonicalEditableArtifactSerializedCommit,
|
|
1897
1899
|
decodeEditableArtifactSerializedCommit,
|
|
1898
1900
|
encodeEditableArtifactSerializedCommit
|
|
1899
|
-
} from "./chunk-
|
|
1901
|
+
} from "./chunk-O5LEQHDM.js";
|
|
1900
1902
|
import {
|
|
1901
1903
|
WORKSPACE_XAI_PROVIDER_ACCOUNT_AUTHORITY_SNAPSHOT_V1,
|
|
1902
1904
|
XaiProviderAccountAuthoritySnapshotV1
|
|
@@ -1924,6 +1926,29 @@ import {
|
|
|
1924
1926
|
MAX_COMMITTED_TRANSACTION_OPERATIONS,
|
|
1925
1927
|
decodeCommittedTransactionSummary
|
|
1926
1928
|
} from "./chunk-3SIZGL3O.js";
|
|
1929
|
+
import {
|
|
1930
|
+
EDITABLE_ARTIFACT_COMMAND_MAX_BYTES,
|
|
1931
|
+
EDITABLE_ARTIFACT_INTENT_MAX_BYTES,
|
|
1932
|
+
EDITABLE_ARTIFACT_INTENT_MAX_CAUSAL_ACTORS,
|
|
1933
|
+
EDITABLE_ARTIFACT_INTENT_MAX_UNDO_TARGETS,
|
|
1934
|
+
EDITABLE_ARTIFACT_INTENT_PROTOCOL_VERSION,
|
|
1935
|
+
EDITABLE_ARTIFACT_INTENT_VERSION,
|
|
1936
|
+
EDITABLE_ARTIFACT_KERNEL_VERSION_MAX_BYTES,
|
|
1937
|
+
EDITABLE_ARTIFACT_PRODUCT_MAX_SNAPSHOT_BYTES,
|
|
1938
|
+
assertEditableArtifactRequestHash,
|
|
1939
|
+
decodeEditableArtifactMutationIntent,
|
|
1940
|
+
encodeEditableArtifactMutationIntent,
|
|
1941
|
+
hashEditableArtifactMutationIntent,
|
|
1942
|
+
hashEditableArtifactMutationIntentBytes
|
|
1943
|
+
} from "./chunk-NVJMJWLL.js";
|
|
1944
|
+
import {
|
|
1945
|
+
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_MAX_BYTES,
|
|
1946
|
+
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_MAX_REPLICAS,
|
|
1947
|
+
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_VERSION,
|
|
1948
|
+
assertCanonicalEditableArtifactCausalFrontierBytes,
|
|
1949
|
+
decodeEditableArtifactCausalFrontier,
|
|
1950
|
+
encodeEditableArtifactCausalFrontier
|
|
1951
|
+
} from "./chunk-YRKRZ6OF.js";
|
|
1927
1952
|
import {
|
|
1928
1953
|
CanonicalHumanBindingOperationRequest,
|
|
1929
1954
|
CanonicalHumanIdentityMutationOutcome,
|
|
@@ -2005,59 +2030,34 @@ import {
|
|
|
2005
2030
|
OrganizationRecoveryUnavailableReason,
|
|
2006
2031
|
StartOrganizationRecoveryOperationRequest
|
|
2007
2032
|
} from "./chunk-BCS7WHCK.js";
|
|
2008
|
-
import {
|
|
2009
|
-
SiteSessionPathError,
|
|
2010
|
-
siteSessionPath
|
|
2011
|
-
} from "./chunk-UGTBTPTQ.js";
|
|
2012
|
-
import {
|
|
2013
|
-
ConnectorDocumentDestination,
|
|
2014
|
-
ConnectorDocumentDestinationAuthority,
|
|
2015
|
-
ConnectorDocumentDestinationSelection,
|
|
2016
|
-
bindConnectorDocumentDestination,
|
|
2017
|
-
connectorDestinationDocumentAuthority,
|
|
2018
|
-
connectorDocumentDestinationCollectionId,
|
|
2019
|
-
legacyWorkspaceConnectorDocumentDestination,
|
|
2020
|
-
resolveConnectorDocumentDestination
|
|
2021
|
-
} from "./chunk-WYBDERIY.js";
|
|
2022
|
-
import {
|
|
2023
|
-
AUTOMATIC_SESSION_TITLE_FALLBACK,
|
|
2024
|
-
AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
|
|
2025
|
-
SESSION_TITLE_MAX_CHARACTERS,
|
|
2026
|
-
boundAutomaticSessionTitle,
|
|
2027
|
-
containsSensitiveAutomaticSessionTitleValue,
|
|
2028
|
-
deriveAutomaticSessionTitlePreview,
|
|
2029
|
-
deriveSessionDisplayTitle,
|
|
2030
|
-
normalizeAutomaticSessionTitle,
|
|
2031
|
-
sessionTitleIsPending
|
|
2032
|
-
} from "./chunk-7ABONTXE.js";
|
|
2033
|
-
import {
|
|
2034
|
-
EDITABLE_ARTIFACT_COMMAND_MAX_BYTES,
|
|
2035
|
-
EDITABLE_ARTIFACT_INTENT_MAX_BYTES,
|
|
2036
|
-
EDITABLE_ARTIFACT_INTENT_MAX_CAUSAL_ACTORS,
|
|
2037
|
-
EDITABLE_ARTIFACT_INTENT_MAX_UNDO_TARGETS,
|
|
2038
|
-
EDITABLE_ARTIFACT_INTENT_PROTOCOL_VERSION,
|
|
2039
|
-
EDITABLE_ARTIFACT_INTENT_VERSION,
|
|
2040
|
-
EDITABLE_ARTIFACT_KERNEL_VERSION_MAX_BYTES,
|
|
2041
|
-
EDITABLE_ARTIFACT_PRODUCT_MAX_SNAPSHOT_BYTES,
|
|
2042
|
-
assertEditableArtifactRequestHash,
|
|
2043
|
-
decodeEditableArtifactMutationIntent,
|
|
2044
|
-
encodeEditableArtifactMutationIntent,
|
|
2045
|
-
hashEditableArtifactMutationIntent,
|
|
2046
|
-
hashEditableArtifactMutationIntentBytes
|
|
2047
|
-
} from "./chunk-NVJMJWLL.js";
|
|
2048
|
-
import {
|
|
2049
|
-
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_MAX_BYTES,
|
|
2050
|
-
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_MAX_REPLICAS,
|
|
2051
|
-
EDITABLE_ARTIFACT_CAUSAL_FRONTIER_VERSION,
|
|
2052
|
-
assertCanonicalEditableArtifactCausalFrontierBytes,
|
|
2053
|
-
decodeEditableArtifactCausalFrontier,
|
|
2054
|
-
encodeEditableArtifactCausalFrontier
|
|
2055
|
-
} from "./chunk-YRKRZ6OF.js";
|
|
2056
2033
|
import {
|
|
2057
2034
|
EDITABLE_ARTIFACT_CODEC_REGISTRY,
|
|
2058
2035
|
currentEditableArtifactCompatibility,
|
|
2059
2036
|
editableArtifactCodecFor
|
|
2060
|
-
} from "./chunk-
|
|
2037
|
+
} from "./chunk-5LYFSZ7O.js";
|
|
2038
|
+
import {
|
|
2039
|
+
SPREADSHEET_ARTIFACT_METADATA_MAX_SHEETS,
|
|
2040
|
+
SPREADSHEET_ARTIFACT_METADATA_MIN_RESPONSE_BYTES,
|
|
2041
|
+
SPREADSHEET_ARTIFACT_PROJECTION_MAX_BYTES,
|
|
2042
|
+
SPREADSHEET_ARTIFACT_PROJECTION_MAX_STRING_BYTES,
|
|
2043
|
+
SPREADSHEET_ARTIFACT_QUERY_MAX_BYTES,
|
|
2044
|
+
SPREADSHEET_ARTIFACT_QUERY_VERSION,
|
|
2045
|
+
SPREADSHEET_ARTIFACT_VIEWPORT_MAX_AREA,
|
|
2046
|
+
SPREADSHEET_ARTIFACT_VIEWPORT_MAX_CELLS,
|
|
2047
|
+
SPREADSHEET_ARTIFACT_VIEWPORT_MIN_RESPONSE_BYTES,
|
|
2048
|
+
assertCanonicalSpreadsheetArtifactKernelProjectionBytes,
|
|
2049
|
+
assertCanonicalSpreadsheetArtifactKernelQueryBytes,
|
|
2050
|
+
decodeSpreadsheetArtifactKernelProjection,
|
|
2051
|
+
decodeSpreadsheetArtifactKernelQuery,
|
|
2052
|
+
decodeSpreadsheetMetadataKernelProjection,
|
|
2053
|
+
decodeSpreadsheetViewportKernelProjection,
|
|
2054
|
+
encodeSpreadsheetArtifactKernelProjection,
|
|
2055
|
+
encodeSpreadsheetArtifactKernelQuery,
|
|
2056
|
+
encodeSpreadsheetMetadataKernelProjection,
|
|
2057
|
+
encodeSpreadsheetMetadataKernelQuery,
|
|
2058
|
+
encodeSpreadsheetViewportKernelProjection,
|
|
2059
|
+
encodeSpreadsheetViewportKernelQuery
|
|
2060
|
+
} from "./chunk-Y3KNXVTD.js";
|
|
2061
2061
|
import {
|
|
2062
2062
|
PRESENTATION_ARTIFACT_COMMAND_MAX_BYTES,
|
|
2063
2063
|
PRESENTATION_ARTIFACT_COMMAND_MAX_COMMANDS,
|
|
@@ -2090,29 +2090,6 @@ import {
|
|
|
2090
2090
|
encodePresentationArtifactQuery,
|
|
2091
2091
|
encodePresentationArtifactQueryResponse
|
|
2092
2092
|
} from "./chunk-D2HKF2EF.js";
|
|
2093
|
-
import {
|
|
2094
|
-
SPREADSHEET_ARTIFACT_METADATA_MAX_SHEETS,
|
|
2095
|
-
SPREADSHEET_ARTIFACT_METADATA_MIN_RESPONSE_BYTES,
|
|
2096
|
-
SPREADSHEET_ARTIFACT_PROJECTION_MAX_BYTES,
|
|
2097
|
-
SPREADSHEET_ARTIFACT_PROJECTION_MAX_STRING_BYTES,
|
|
2098
|
-
SPREADSHEET_ARTIFACT_QUERY_MAX_BYTES,
|
|
2099
|
-
SPREADSHEET_ARTIFACT_QUERY_VERSION,
|
|
2100
|
-
SPREADSHEET_ARTIFACT_VIEWPORT_MAX_AREA,
|
|
2101
|
-
SPREADSHEET_ARTIFACT_VIEWPORT_MAX_CELLS,
|
|
2102
|
-
SPREADSHEET_ARTIFACT_VIEWPORT_MIN_RESPONSE_BYTES,
|
|
2103
|
-
assertCanonicalSpreadsheetArtifactKernelProjectionBytes,
|
|
2104
|
-
assertCanonicalSpreadsheetArtifactKernelQueryBytes,
|
|
2105
|
-
decodeSpreadsheetArtifactKernelProjection,
|
|
2106
|
-
decodeSpreadsheetArtifactKernelQuery,
|
|
2107
|
-
decodeSpreadsheetMetadataKernelProjection,
|
|
2108
|
-
decodeSpreadsheetViewportKernelProjection,
|
|
2109
|
-
encodeSpreadsheetArtifactKernelProjection,
|
|
2110
|
-
encodeSpreadsheetArtifactKernelQuery,
|
|
2111
|
-
encodeSpreadsheetMetadataKernelProjection,
|
|
2112
|
-
encodeSpreadsheetMetadataKernelQuery,
|
|
2113
|
-
encodeSpreadsheetViewportKernelProjection,
|
|
2114
|
-
encodeSpreadsheetViewportKernelQuery
|
|
2115
|
-
} from "./chunk-Y3KNXVTD.js";
|
|
2116
2093
|
import {
|
|
2117
2094
|
SPREADSHEET_ARTIFACT_COMMAND_MAX_BYTES,
|
|
2118
2095
|
SPREADSHEET_ARTIFACT_COMMAND_MAX_CELLS,
|
|
@@ -2163,6 +2140,34 @@ import {
|
|
|
2163
2140
|
SPREADSHEET_ARTIFACT_MODEL_SCHEMA_VERSION,
|
|
2164
2141
|
SPREADSHEET_COLLABORATION_SNAPSHOT_VERSION
|
|
2165
2142
|
} from "./chunk-PX3VCKAU.js";
|
|
2143
|
+
import {
|
|
2144
|
+
SiteSessionPathError,
|
|
2145
|
+
siteSessionPath
|
|
2146
|
+
} from "./chunk-UGTBTPTQ.js";
|
|
2147
|
+
import {
|
|
2148
|
+
ConnectorDocumentDestination,
|
|
2149
|
+
ConnectorDocumentDestinationAuthority,
|
|
2150
|
+
ConnectorDocumentDestinationSelection,
|
|
2151
|
+
bindConnectorDocumentDestination,
|
|
2152
|
+
connectorDestinationDocumentAuthority,
|
|
2153
|
+
connectorDocumentDestinationCollectionId,
|
|
2154
|
+
legacyWorkspaceConnectorDocumentDestination,
|
|
2155
|
+
resolveConnectorDocumentDestination
|
|
2156
|
+
} from "./chunk-WYBDERIY.js";
|
|
2157
|
+
import {
|
|
2158
|
+
Permission
|
|
2159
|
+
} from "./chunk-P3HLDT77.js";
|
|
2160
|
+
import {
|
|
2161
|
+
AUTOMATIC_SESSION_TITLE_FALLBACK,
|
|
2162
|
+
AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
|
|
2163
|
+
SESSION_TITLE_MAX_CHARACTERS,
|
|
2164
|
+
boundAutomaticSessionTitle,
|
|
2165
|
+
containsSensitiveAutomaticSessionTitleValue,
|
|
2166
|
+
deriveAutomaticSessionTitlePreview,
|
|
2167
|
+
deriveSessionDisplayTitle,
|
|
2168
|
+
normalizeAutomaticSessionTitle,
|
|
2169
|
+
sessionTitleIsPending
|
|
2170
|
+
} from "./chunk-7ABONTXE.js";
|
|
2166
2171
|
export {
|
|
2167
2172
|
AGENT_AUTHORED_COMPANY_PROFILE_CONTENT_MAX_UTF8_BYTES,
|
|
2168
2173
|
AGENT_AUTHORED_COMPANY_PROFILE_ENTRY_MAX_CHARS,
|
|
@@ -2858,6 +2863,7 @@ export {
|
|
|
2858
2863
|
HostExportCursor,
|
|
2859
2864
|
HostExportInitiator,
|
|
2860
2865
|
HostExportInitiatorContext,
|
|
2866
|
+
HostMcpCreateSelections,
|
|
2861
2867
|
HostSessionEvent,
|
|
2862
2868
|
HostUsageEvent,
|
|
2863
2869
|
HostUsageExport,
|
|
@@ -3434,8 +3440,6 @@ export {
|
|
|
3434
3440
|
SESSION_AUTHORIZATION_LIST_SCOPE_MAX_IDS,
|
|
3435
3441
|
SESSION_EFFECTIVE_TOOL_POLICY_ID_LIMIT,
|
|
3436
3442
|
SESSION_EFFECTIVE_TOOL_POLICY_ID_MAX_LENGTH,
|
|
3437
|
-
SESSION_END_USER_ID_MAX_CHARS,
|
|
3438
|
-
SESSION_END_USER_SOURCE_MAX_CHARS,
|
|
3439
3443
|
SESSION_EVENT_CLIENT_EVENT_ID_MAX_BYTES,
|
|
3440
3444
|
SESSION_EVENT_DUPLICATE_REASON_MAX_BYTES,
|
|
3441
3445
|
SESSION_EVENT_ENVELOPE_MAX_BYTES,
|
|
@@ -3539,7 +3543,6 @@ export {
|
|
|
3539
3543
|
SessionControlResponse,
|
|
3540
3544
|
SessionControlState,
|
|
3541
3545
|
SessionEffectiveToolPolicy,
|
|
3542
|
-
SessionEndUser,
|
|
3543
3546
|
SessionEvent,
|
|
3544
3547
|
SessionEventLatestClass,
|
|
3545
3548
|
SessionEventPayloadMode,
|
|
@@ -3585,6 +3588,7 @@ export {
|
|
|
3585
3588
|
SessionRealtimeModel,
|
|
3586
3589
|
SessionRealtimeMutationResponse,
|
|
3587
3590
|
SessionRealtimeState,
|
|
3591
|
+
SessionScopeSubjectId,
|
|
3588
3592
|
SessionSkill,
|
|
3589
3593
|
SessionSkills,
|
|
3590
3594
|
SessionSpawnDenial,
|
|
@@ -4113,6 +4117,7 @@ export {
|
|
|
4113
4117
|
bundledSkillSelectionFromMetadata,
|
|
4114
4118
|
canonicalCodexFleetReplayJsonV1,
|
|
4115
4119
|
canonicalModalCheckpointProviderBinding,
|
|
4120
|
+
canonicalSkillReviewQuestion,
|
|
4116
4121
|
canonicalizeSlackTaskPolicy,
|
|
4117
4122
|
canonicalizeWorkspaceLearningSourceOverrides,
|
|
4118
4123
|
capabilityCatalogItemIsTrustedForExposure,
|
|
@@ -4212,6 +4217,7 @@ export {
|
|
|
4212
4217
|
parseConnectorAttachmentTransferEnvelope,
|
|
4213
4218
|
parseSkillFrontmatter,
|
|
4214
4219
|
parseWorkspaceArchiveDescriptor,
|
|
4220
|
+
parseWorkspaceArchiveObjectKey,
|
|
4215
4221
|
parseWorkspaceArchiveObjectRef,
|
|
4216
4222
|
prefixedMcpToolName,
|
|
4217
4223
|
readCodexCredentialPolicySnapshotV1,
|
|
@@ -4270,11 +4276,13 @@ export {
|
|
|
4270
4276
|
skillReviewHumanInput,
|
|
4271
4277
|
spreadsheetSheetId,
|
|
4272
4278
|
stableJson,
|
|
4279
|
+
storedSessionMemoryScope,
|
|
4273
4280
|
toolResultSpillFilename,
|
|
4274
4281
|
toolResultSpillSandboxPath,
|
|
4275
4282
|
turnExecutionPolicyAuditMetadata,
|
|
4276
4283
|
validateRetainedOutputEvidence,
|
|
4277
4284
|
validateSkillTextFiles,
|
|
4285
|
+
validateWorkspaceArchiveObjectRef,
|
|
4278
4286
|
variableSetVariableNameReservation,
|
|
4279
4287
|
verifyDelegatedAccessToken,
|
|
4280
4288
|
verifyEnrollToken,
|
package/dist/personal-github.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ConnectionMetadata
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FBXZZSXA.js";
|
|
4
4
|
import "./chunk-YBW5JSA3.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-O5LEQHDM.js";
|
|
6
6
|
import "./chunk-GRG7PHWQ.js";
|
|
7
7
|
import "./chunk-MRWYRAS5.js";
|
|
8
8
|
import "./chunk-3SIZGL3O.js";
|
|
9
|
+
import "./chunk-NVJMJWLL.js";
|
|
10
|
+
import "./chunk-YRKRZ6OF.js";
|
|
9
11
|
import "./chunk-JUFK3T4Q.js";
|
|
10
12
|
import "./chunk-M5ZGRVIQ.js";
|
|
11
13
|
import "./chunk-BCS7WHCK.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-WYBDERIY.js";
|
|
14
|
-
import "./chunk-7ABONTXE.js";
|
|
15
|
-
import "./chunk-NVJMJWLL.js";
|
|
16
|
-
import "./chunk-YRKRZ6OF.js";
|
|
17
|
-
import "./chunk-NPYLOZAP.js";
|
|
18
|
-
import "./chunk-D2HKF2EF.js";
|
|
14
|
+
import "./chunk-5LYFSZ7O.js";
|
|
19
15
|
import "./chunk-Y3KNXVTD.js";
|
|
16
|
+
import "./chunk-D2HKF2EF.js";
|
|
20
17
|
import "./chunk-TXTQIYCV.js";
|
|
21
18
|
import "./chunk-RIY7GYQS.js";
|
|
22
19
|
import "./chunk-MYBZRDTY.js";
|
|
23
20
|
import "./chunk-PX3VCKAU.js";
|
|
21
|
+
import "./chunk-UGTBTPTQ.js";
|
|
22
|
+
import "./chunk-WYBDERIY.js";
|
|
23
|
+
import "./chunk-P3HLDT77.js";
|
|
24
|
+
import "./chunk-7ABONTXE.js";
|
|
24
25
|
|
|
25
26
|
// src/personal-github.ts
|
|
26
27
|
import { z } from "zod";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/personal-github.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { ConnectionMetadata } from \"./index\";\n\nexport const PERSONAL_GITHUB_PROVIDER_DOMAIN = \"github.com\" as const;\nexport const PERSONAL_GITHUB_PROVIDER_FAMILY = \"github\" as const;\nexport const PERSONAL_GITHUB_CREDENTIAL_ROLE = \"opengeni_github_personal\" as const;\nexport const PERSONAL_GITHUB_CONNECTION_SURFACE_ID = \"github:personal\" as const;\nexport const PERSONAL_GITHUB_REQUESTED_SCOPES = [\"repo\"] as const;\nexport const PERSONAL_GITHUB_AUTHORIZATION_URL =\n \"https://github.com/login/oauth/authorize\" as const;\nexport const PERSONAL_GITHUB_TOKEN_URL = \"https://github.com/login/oauth/access_token\" as const;\nexport const PERSONAL_GITHUB_USER_URL = \"https://api.github.com/user\" as const;\nexport const PERSONAL_GITHUB_API_ORIGIN = \"https://api.github.com\" as const;\nexport const PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX = 100 as const;\n\nexport const PersonalGitHubRepositoryId = z.string().regex(/^[1-9]\\d*$/u);\nexport type PersonalGitHubRepositoryId = z.infer<typeof PersonalGitHubRepositoryId>;\n\nexport const PersonalGitHubRepositoryAccess = z.enum([\"read\", \"write\"]);\nexport type PersonalGitHubRepositoryAccess = z.infer<typeof PersonalGitHubRepositoryAccess>;\n\nexport const PersonalGitHubRepositoryPermissions = z\n .object({\n pull: z.boolean(),\n push: z.boolean(),\n admin: z.boolean(),\n maintain: z.boolean(),\n triage: z.boolean(),\n })\n .strict();\nexport type PersonalGitHubRepositoryPermissions = z.infer<\n typeof PersonalGitHubRepositoryPermissions\n>;\n\nexport const PersonalGitHubRepositoryVisibility = z.enum([\"public\", \"private\", \"internal\"]);\nexport type PersonalGitHubRepositoryVisibility = z.infer<typeof PersonalGitHubRepositoryVisibility>;\n\nconst PersonalGitHubRepositoryFullName = z\n .string()\n .min(3)\n .max(140)\n .regex(/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,38})\\/[A-Za-z0-9_.-]{1,100}$/u);\n\nexport function canonicalPersonalGitHubRepositoryUrl(fullName: string): string {\n return `https://github.com/${fullName}`;\n}\n\n/** A bounded, credential-free projection verified directly against GitHub. */\nexport const PersonalGitHubRepository = z\n .object({\n repositoryId: PersonalGitHubRepositoryId,\n fullName: PersonalGitHubRepositoryFullName,\n canonicalUrl: z.string().url().max(512),\n defaultBranch: z.string().min(1).max(255),\n visibility: PersonalGitHubRepositoryVisibility,\n private: z.boolean(),\n archived: z.boolean(),\n disabled: z.boolean(),\n permissions: PersonalGitHubRepositoryPermissions,\n })\n .strict()\n .superRefine((repository, context) => {\n if (repository.canonicalUrl !== canonicalPersonalGitHubRepositoryUrl(repository.fullName)) {\n context.addIssue({\n code: \"custom\",\n path: [\"canonicalUrl\"],\n message: \"canonicalUrl must be derived from fullName\",\n });\n }\n if (repository.private !== (repository.visibility === \"private\")) {\n context.addIssue({\n code: \"custom\",\n path: [\"private\"],\n message: \"private must agree with visibility\",\n });\n }\n });\nexport type PersonalGitHubRepository = z.infer<typeof PersonalGitHubRepository>;\n\nexport const PersonalGitHubSelectedRepository = PersonalGitHubRepository.safeExtend({\n selectedAccess: PersonalGitHubRepositoryAccess,\n selectionGeneration: z.number().int().positive(),\n selectedAt: z.string().datetime({ offset: true }),\n lastVerifiedAt: z.string().datetime({ offset: true }),\n}).strict();\nexport type PersonalGitHubSelectedRepository = z.infer<typeof PersonalGitHubSelectedRepository>;\n\nexport const PersonalGitHubRepositorySelectionState = z\n .object({\n connectionAuthorityGeneration: z.number().int().positive(),\n credentialBindingId: z.string().uuid(),\n providerPrincipalId: PersonalGitHubRepositoryId,\n selectionGeneration: z.number().int().nonnegative(),\n repositories: z\n .array(PersonalGitHubSelectedRepository)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n })\n .strict();\nexport type PersonalGitHubRepositorySelectionState = z.infer<\n typeof PersonalGitHubRepositorySelectionState\n>;\n\nexport const ListPersonalGitHubRepositoriesQuery = z\n .object({\n cursor: z.coerce.number().int().positive().max(10_000).default(1),\n limit: z.coerce.number().int().min(1).max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX).default(50),\n })\n .strict();\nexport type ListPersonalGitHubRepositoriesQuery = z.infer<\n typeof ListPersonalGitHubRepositoriesQuery\n>;\n\nexport const PersonalGitHubRepositoryCatalogItem = PersonalGitHubRepository.safeExtend({\n selectedAccess: PersonalGitHubRepositoryAccess.nullable(),\n}).strict();\nexport type PersonalGitHubRepositoryCatalogItem = z.infer<\n typeof PersonalGitHubRepositoryCatalogItem\n>;\n\nexport const ListPersonalGitHubRepositoriesResponse = z\n .object({\n repositories: z\n .array(PersonalGitHubRepositoryCatalogItem)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n nextCursor: z.number().int().positive().nullable(),\n selection: PersonalGitHubRepositorySelectionState,\n })\n .strict();\nexport type ListPersonalGitHubRepositoriesResponse = z.infer<\n typeof ListPersonalGitHubRepositoriesResponse\n>;\n\nexport const PersonalGitHubRepositorySelectionInput = z\n .object({\n repositoryId: PersonalGitHubRepositoryId,\n fullName: PersonalGitHubRepositoryFullName,\n access: PersonalGitHubRepositoryAccess,\n })\n .strict();\nexport type PersonalGitHubRepositorySelectionInput = z.infer<\n typeof PersonalGitHubRepositorySelectionInput\n>;\n\nexport const ReplacePersonalGitHubRepositorySelectionsRequest = z\n .object({\n expectedConnectionAuthorityGeneration: z.number().int().positive(),\n expectedSelectionGeneration: z.number().int().nonnegative(),\n idempotencyKey: z.string().trim().min(1).max(200),\n repositories: z\n .array(PersonalGitHubRepositorySelectionInput)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n })\n .strict()\n .superRefine((request, context) => {\n const repositoryIds = new Set<string>();\n const fullNames = new Set<string>();\n request.repositories.forEach((repository, index) => {\n const normalizedFullName = repository.fullName.toLowerCase();\n if (repositoryIds.has(repository.repositoryId)) {\n context.addIssue({\n code: \"custom\",\n path: [\"repositories\", index, \"repositoryId\"],\n message: \"repositoryId must be unique\",\n });\n }\n if (fullNames.has(normalizedFullName)) {\n context.addIssue({\n code: \"custom\",\n path: [\"repositories\", index, \"fullName\"],\n message: \"fullName must be unique\",\n });\n }\n repositoryIds.add(repository.repositoryId);\n fullNames.add(normalizedFullName);\n });\n });\nexport type ReplacePersonalGitHubRepositorySelectionsRequest = z.infer<\n typeof ReplacePersonalGitHubRepositorySelectionsRequest\n>;\n\nexport const VerifyPersonalGitHubRepositorySelectionsRequest = z\n .object({\n expectedConnectionAuthorityGeneration: z.number().int().positive(),\n expectedSelectionGeneration: z.number().int().nonnegative(),\n idempotencyKey: z.string().trim().min(1).max(200),\n })\n .strict();\nexport type VerifyPersonalGitHubRepositorySelectionsRequest = z.infer<\n typeof VerifyPersonalGitHubRepositorySelectionsRequest\n>;\n\n/**\n * Owner-visible, credential-free metadata for one dedicated personal GitHub\n * OAuth connection. Repository selections are a separate authority and never\n * live in this credential record.\n */\nexport const PersonalGitHubConnectionMetadata = z\n .object({\n credentialRole: z.literal(PERSONAL_GITHUB_CREDENTIAL_ROLE),\n providerFamily: z.literal(PERSONAL_GITHUB_PROVIDER_FAMILY),\n providerPrincipalId: z.string().regex(/^\\d+$/u),\n githubUserId: z.string().regex(/^\\d+$/u),\n githubLogin: z.string().min(1).max(100),\n oauthEnvironment: z.string().min(1).max(128),\n oauthClientMarker: z.string().regex(/^[a-f0-9]{32}$/u),\n credentialBindingId: z.string().uuid(),\n connectedAt: z.string().datetime({ offset: true }),\n lastVerifiedAt: z.string().datetime({ offset: true }),\n disconnectedAt: z.string().datetime({ offset: true }).nullable().optional(),\n refreshTokenExpiresAt: z.string().datetime({ offset: true }).nullable().optional(),\n })\n .passthrough();\nexport type PersonalGitHubConnectionMetadata = z.infer<typeof PersonalGitHubConnectionMetadata>;\n\nexport const PersonalGitHubOAuthStartRequest = z\n .object({\n /** Existing exact connection generation to re-authorize in place. */\n connectionId: z.string().uuid().optional(),\n /** Same-workspace UI path restored after the callback. */\n returnPath: z.string().min(1).max(2048).optional(),\n })\n .strict();\nexport type PersonalGitHubOAuthStartRequest = z.infer<typeof PersonalGitHubOAuthStartRequest>;\n\nexport const PersonalGitHubOAuthStartResponse = z\n .object({\n authorizationUrl: z.string().url(),\n expiresAt: z.string().datetime({ offset: true }),\n })\n .strict();\nexport type PersonalGitHubOAuthStartResponse = z.infer<typeof PersonalGitHubOAuthStartResponse>;\n\nexport const PersonalGitHubConnectionStatusResponse = z\n .object({\n enabled: z.boolean(),\n connection: ConnectionMetadata.nullable(),\n reviewUrl: z.string().url().nullable(),\n })\n .strict();\nexport type PersonalGitHubConnectionStatusResponse = z.infer<\n typeof PersonalGitHubConnectionStatusResponse\n>;\n\nexport const PersonalGitHubDisconnectRequest = z\n .object({\n expectedVersion: z.number().int().positive(),\n idempotencyKey: z.string().trim().min(1).max(200),\n })\n .strict();\nexport type PersonalGitHubDisconnectRequest = z.infer<typeof PersonalGitHubDisconnectRequest>;\n\nexport function isPersonalGitHubConnection(\n connection: Pick<z.infer<typeof ConnectionMetadata>, \"providerDomain\" | \"kind\" | \"metadata\">,\n): boolean {\n return (\n connection.providerDomain.toLowerCase() === PERSONAL_GITHUB_PROVIDER_DOMAIN &&\n connection.kind === \"oauth2\" &&\n PersonalGitHubConnectionMetadata.safeParse(connection.metadata).success\n );\n}\n\nexport function hasReservedPersonalGitHubMetadata(\n metadata: Record<string, unknown> | undefined,\n): boolean {\n return metadata?.credentialRole === PERSONAL_GITHUB_CREDENTIAL_ROLE;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,SAAS;AAIX,IAAM,kCAAkC;AACxC,IAAM,kCAAkC;AACxC,IAAM,kCAAkC;AACxC,IAAM,wCAAwC;AAC9C,IAAM,mCAAmC,CAAC,MAAM;AAChD,IAAM,oCACX;AACK,IAAM,4BAA4B;AAClC,IAAM,2BAA2B;AACjC,IAAM,6BAA6B;AACnC,IAAM,yCAAyC;AAE/C,IAAM,6BAA6B,EAAE,OAAO,EAAE,MAAM,aAAa;AAGjE,IAAM,iCAAiC,EAAE,KAAK,CAAC,QAAQ,OAAO,CAAC;AAG/D,IAAM,sCAAsC,EAChD,OAAO;AAAA,EACN,MAAM,EAAE,QAAQ;AAAA,EAChB,MAAM,EAAE,QAAQ;AAAA,EAChB,OAAO,EAAE,QAAQ;AAAA,EACjB,UAAU,EAAE,QAAQ;AAAA,EACpB,QAAQ,EAAE,QAAQ;AACpB,CAAC,EACA,OAAO;AAKH,IAAM,qCAAqC,EAAE,KAAK,CAAC,UAAU,WAAW,UAAU,CAAC;AAG1F,IAAM,mCAAmC,EACtC,OAAO,EACP,IAAI,CAAC,EACL,IAAI,GAAG,EACP,MAAM,6DAA6D;AAE/D,SAAS,qCAAqC,UAA0B;AAC7E,SAAO,sBAAsB,QAAQ;AACvC;AAGO,IAAM,2BAA2B,EACrC,OAAO;AAAA,EACN,cAAc;AAAA,EACd,UAAU;AAAA,EACV,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG;AAAA,EACtC,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACxC,YAAY;AAAA,EACZ,SAAS,EAAE,QAAQ;AAAA,EACnB,UAAU,EAAE,QAAQ;AAAA,EACpB,UAAU,EAAE,QAAQ;AAAA,EACpB,aAAa;AACf,CAAC,EACA,OAAO,EACP,YAAY,CAAC,YAAY,YAAY;AACpC,MAAI,WAAW,iBAAiB,qCAAqC,WAAW,QAAQ,GAAG;AACzF,YAAQ,SAAS;AAAA,MACf,MAAM;AAAA,MACN,MAAM,CAAC,cAAc;AAAA,MACrB,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACA,MAAI,WAAW,aAAa,WAAW,eAAe,YAAY;AAChE,YAAQ,SAAS;AAAA,MACf,MAAM;AAAA,MACN,MAAM,CAAC,SAAS;AAAA,MAChB,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACF,CAAC;AAGI,IAAM,mCAAmC,yBAAyB,WAAW;AAAA,EAClF,gBAAgB;AAAA,EAChB,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC/C,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC;AAAA,EAChD,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC;AACtD,CAAC,EAAE,OAAO;AAGH,IAAM,yCAAyC,EACnD,OAAO;AAAA,EACN,+BAA+B,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACzD,qBAAqB,EAAE,OAAO,EAAE,KAAK;AAAA,EACrC,qBAAqB;AAAA,EACrB,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EAClD,cAAc,EACX,MAAM,gCAAgC,EACtC,IAAI,sCAAsC;AAC/C,CAAC,EACA,OAAO;AAKH,IAAM,sCAAsC,EAChD,OAAO;AAAA,EACN,QAAQ,EAAE,OAAO,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAM,EAAE,QAAQ,CAAC;AAAA,EAChE,OAAO,EAAE,OAAO,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,sCAAsC,EAAE,QAAQ,EAAE;AAC9F,CAAC,EACA,OAAO;AAKH,IAAM,sCAAsC,yBAAyB,WAAW;AAAA,EACrF,gBAAgB,+BAA+B,SAAS;AAC1D,CAAC,EAAE,OAAO;AAKH,IAAM,yCAAyC,EACnD,OAAO;AAAA,EACN,cAAc,EACX,MAAM,mCAAmC,EACzC,IAAI,sCAAsC;AAAA,EAC7C,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS;AAAA,EACjD,WAAW;AACb,CAAC,EACA,OAAO;AAKH,IAAM,yCAAyC,EACnD,OAAO;AAAA,EACN,cAAc;AAAA,EACd,UAAU;AAAA,EACV,QAAQ;AACV,CAAC,EACA,OAAO;AAKH,IAAM,mDAAmD,EAC7D,OAAO;AAAA,EACN,uCAAuC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACjE,6BAA6B,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EAC1D,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAChD,cAAc,EACX,MAAM,sCAAsC,EAC5C,IAAI,sCAAsC;AAC/C,CAAC,EACA,OAAO,EACP,YAAY,CAAC,SAAS,YAAY;AACjC,QAAM,gBAAgB,oBAAI,IAAY;AACtC,QAAM,YAAY,oBAAI,IAAY;AAClC,UAAQ,aAAa,QAAQ,CAAC,YAAY,UAAU;AAClD,UAAM,qBAAqB,WAAW,SAAS,YAAY;AAC3D,QAAI,cAAc,IAAI,WAAW,YAAY,GAAG;AAC9C,cAAQ,SAAS;AAAA,QACf,MAAM;AAAA,QACN,MAAM,CAAC,gBAAgB,OAAO,cAAc;AAAA,QAC5C,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AACA,QAAI,UAAU,IAAI,kBAAkB,GAAG;AACrC,cAAQ,SAAS;AAAA,QACf,MAAM;AAAA,QACN,MAAM,CAAC,gBAAgB,OAAO,UAAU;AAAA,QACxC,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AACA,kBAAc,IAAI,WAAW,YAAY;AACzC,cAAU,IAAI,kBAAkB;AAAA,EAClC,CAAC;AACH,CAAC;AAKI,IAAM,kDAAkD,EAC5D,OAAO;AAAA,EACN,uCAAuC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACjE,6BAA6B,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EAC1D,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAClD,CAAC,EACA,OAAO;AAUH,IAAM,mCAAmC,EAC7C,OAAO;AAAA,EACN,gBAAgB,EAAE,QAAQ,+BAA+B;AAAA,EACzD,gBAAgB,EAAE,QAAQ,+BAA+B;AAAA,EACzD,qBAAqB,EAAE,OAAO,EAAE,MAAM,QAAQ;AAAA,EAC9C,cAAc,EAAE,OAAO,EAAE,MAAM,QAAQ;AAAA,EACvC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACtC,kBAAkB,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC3C,mBAAmB,EAAE,OAAO,EAAE,MAAM,iBAAiB;AAAA,EACrD,qBAAqB,EAAE,OAAO,EAAE,KAAK;AAAA,EACrC,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC;AAAA,EACjD,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC;AAAA,EACpD,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS;AAAA,EAC1E,uBAAuB,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS;AACnF,CAAC,EACA,YAAY;AAGR,IAAM,kCAAkC,EAC5C,OAAO;AAAA;AAAA,EAEN,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;AAAA;AAAA,EAEzC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,SAAS;AACnD,CAAC,EACA,OAAO;AAGH,IAAM,mCAAmC,EAC7C,OAAO;AAAA,EACN,kBAAkB,EAAE,OAAO,EAAE,IAAI;AAAA,EACjC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK,CAAC;AACjD,CAAC,EACA,OAAO;AAGH,IAAM,yCAAyC,EACnD,OAAO;AAAA,EACN,SAAS,EAAE,QAAQ;AAAA,EACnB,YAAY,mBAAmB,SAAS;AAAA,EACxC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AACvC,CAAC,EACA,OAAO;AAKH,IAAM,kCAAkC,EAC5C,OAAO;AAAA,EACN,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC3C,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAClD,CAAC,EACA,OAAO;AAGH,SAAS,2BACd,YACS;AACT,SACE,WAAW,eAAe,YAAY,MAAM,mCAC5C,WAAW,SAAS,YACpB,iCAAiC,UAAU,WAAW,QAAQ,EAAE;AAEpE;AAEO,SAAS,kCACd,UACS;AACT,SAAO,UAAU,mBAAmB;AACtC;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/personal-github.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { ConnectionMetadata } from \"./index\";\n\nexport const PERSONAL_GITHUB_PROVIDER_DOMAIN = \"github.com\" as const;\nexport const PERSONAL_GITHUB_PROVIDER_FAMILY = \"github\" as const;\nexport const PERSONAL_GITHUB_CREDENTIAL_ROLE = \"opengeni_github_personal\" as const;\nexport const PERSONAL_GITHUB_CONNECTION_SURFACE_ID = \"github:personal\" as const;\nexport const PERSONAL_GITHUB_REQUESTED_SCOPES = [\"repo\"] as const;\nexport const PERSONAL_GITHUB_AUTHORIZATION_URL =\n \"https://github.com/login/oauth/authorize\" as const;\nexport const PERSONAL_GITHUB_TOKEN_URL = \"https://github.com/login/oauth/access_token\" as const;\nexport const PERSONAL_GITHUB_USER_URL = \"https://api.github.com/user\" as const;\nexport const PERSONAL_GITHUB_API_ORIGIN = \"https://api.github.com\" as const;\nexport const PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX = 100 as const;\n\nexport const PersonalGitHubRepositoryId = z.string().regex(/^[1-9]\\d*$/u);\nexport type PersonalGitHubRepositoryId = z.infer<typeof PersonalGitHubRepositoryId>;\n\nexport const PersonalGitHubRepositoryAccess = z.enum([\"read\", \"write\"]);\nexport type PersonalGitHubRepositoryAccess = z.infer<typeof PersonalGitHubRepositoryAccess>;\n\nexport const PersonalGitHubRepositoryPermissions = z\n .object({\n pull: z.boolean(),\n push: z.boolean(),\n admin: z.boolean(),\n maintain: z.boolean(),\n triage: z.boolean(),\n })\n .strict();\nexport type PersonalGitHubRepositoryPermissions = z.infer<\n typeof PersonalGitHubRepositoryPermissions\n>;\n\nexport const PersonalGitHubRepositoryVisibility = z.enum([\"public\", \"private\", \"internal\"]);\nexport type PersonalGitHubRepositoryVisibility = z.infer<typeof PersonalGitHubRepositoryVisibility>;\n\nconst PersonalGitHubRepositoryFullName = z\n .string()\n .min(3)\n .max(140)\n .regex(/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,38})\\/[A-Za-z0-9_.-]{1,100}$/u);\n\nexport function canonicalPersonalGitHubRepositoryUrl(fullName: string): string {\n return `https://github.com/${fullName}`;\n}\n\n/** A bounded, credential-free projection verified directly against GitHub. */\nexport const PersonalGitHubRepository = z\n .object({\n repositoryId: PersonalGitHubRepositoryId,\n fullName: PersonalGitHubRepositoryFullName,\n canonicalUrl: z.string().url().max(512),\n defaultBranch: z.string().min(1).max(255),\n visibility: PersonalGitHubRepositoryVisibility,\n private: z.boolean(),\n archived: z.boolean(),\n disabled: z.boolean(),\n permissions: PersonalGitHubRepositoryPermissions,\n })\n .strict()\n .superRefine((repository, context) => {\n if (repository.canonicalUrl !== canonicalPersonalGitHubRepositoryUrl(repository.fullName)) {\n context.addIssue({\n code: \"custom\",\n path: [\"canonicalUrl\"],\n message: \"canonicalUrl must be derived from fullName\",\n });\n }\n if (repository.private !== (repository.visibility === \"private\")) {\n context.addIssue({\n code: \"custom\",\n path: [\"private\"],\n message: \"private must agree with visibility\",\n });\n }\n });\nexport type PersonalGitHubRepository = z.infer<typeof PersonalGitHubRepository>;\n\nexport const PersonalGitHubSelectedRepository = PersonalGitHubRepository.safeExtend({\n selectedAccess: PersonalGitHubRepositoryAccess,\n selectionGeneration: z.number().int().positive(),\n selectedAt: z.string().datetime({ offset: true }),\n lastVerifiedAt: z.string().datetime({ offset: true }),\n}).strict();\nexport type PersonalGitHubSelectedRepository = z.infer<typeof PersonalGitHubSelectedRepository>;\n\nexport const PersonalGitHubRepositorySelectionState = z\n .object({\n connectionAuthorityGeneration: z.number().int().positive(),\n credentialBindingId: z.string().uuid(),\n providerPrincipalId: PersonalGitHubRepositoryId,\n selectionGeneration: z.number().int().nonnegative(),\n repositories: z\n .array(PersonalGitHubSelectedRepository)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n })\n .strict();\nexport type PersonalGitHubRepositorySelectionState = z.infer<\n typeof PersonalGitHubRepositorySelectionState\n>;\n\nexport const ListPersonalGitHubRepositoriesQuery = z\n .object({\n cursor: z.coerce.number().int().positive().max(10_000).default(1),\n limit: z.coerce.number().int().min(1).max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX).default(50),\n })\n .strict();\nexport type ListPersonalGitHubRepositoriesQuery = z.infer<\n typeof ListPersonalGitHubRepositoriesQuery\n>;\n\nexport const PersonalGitHubRepositoryCatalogItem = PersonalGitHubRepository.safeExtend({\n selectedAccess: PersonalGitHubRepositoryAccess.nullable(),\n}).strict();\nexport type PersonalGitHubRepositoryCatalogItem = z.infer<\n typeof PersonalGitHubRepositoryCatalogItem\n>;\n\nexport const ListPersonalGitHubRepositoriesResponse = z\n .object({\n repositories: z\n .array(PersonalGitHubRepositoryCatalogItem)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n nextCursor: z.number().int().positive().nullable(),\n selection: PersonalGitHubRepositorySelectionState,\n })\n .strict();\nexport type ListPersonalGitHubRepositoriesResponse = z.infer<\n typeof ListPersonalGitHubRepositoriesResponse\n>;\n\nexport const PersonalGitHubRepositorySelectionInput = z\n .object({\n repositoryId: PersonalGitHubRepositoryId,\n fullName: PersonalGitHubRepositoryFullName,\n access: PersonalGitHubRepositoryAccess,\n })\n .strict();\nexport type PersonalGitHubRepositorySelectionInput = z.infer<\n typeof PersonalGitHubRepositorySelectionInput\n>;\n\nexport const ReplacePersonalGitHubRepositorySelectionsRequest = z\n .object({\n expectedConnectionAuthorityGeneration: z.number().int().positive(),\n expectedSelectionGeneration: z.number().int().nonnegative(),\n idempotencyKey: z.string().trim().min(1).max(200),\n repositories: z\n .array(PersonalGitHubRepositorySelectionInput)\n .max(PERSONAL_GITHUB_REPOSITORY_CATALOG_MAX),\n })\n .strict()\n .superRefine((request, context) => {\n const repositoryIds = new Set<string>();\n const fullNames = new Set<string>();\n request.repositories.forEach((repository, index) => {\n const normalizedFullName = repository.fullName.toLowerCase();\n if (repositoryIds.has(repository.repositoryId)) {\n context.addIssue({\n code: \"custom\",\n path: [\"repositories\", index, \"repositoryId\"],\n message: \"repositoryId must be unique\",\n });\n }\n if (fullNames.has(normalizedFullName)) {\n context.addIssue({\n code: \"custom\",\n path: [\"repositories\", index, \"fullName\"],\n message: \"fullName must be unique\",\n });\n }\n repositoryIds.add(repository.repositoryId);\n fullNames.add(normalizedFullName);\n });\n });\nexport type ReplacePersonalGitHubRepositorySelectionsRequest = z.infer<\n typeof ReplacePersonalGitHubRepositorySelectionsRequest\n>;\n\nexport const VerifyPersonalGitHubRepositorySelectionsRequest = z\n .object({\n expectedConnectionAuthorityGeneration: z.number().int().positive(),\n expectedSelectionGeneration: z.number().int().nonnegative(),\n idempotencyKey: z.string().trim().min(1).max(200),\n })\n .strict();\nexport type VerifyPersonalGitHubRepositorySelectionsRequest = z.infer<\n typeof VerifyPersonalGitHubRepositorySelectionsRequest\n>;\n\n/**\n * Owner-visible, credential-free metadata for one dedicated personal GitHub\n * OAuth connection. Repository selections are a separate authority and never\n * live in this credential record.\n */\nexport const PersonalGitHubConnectionMetadata = z\n .object({\n credentialRole: z.literal(PERSONAL_GITHUB_CREDENTIAL_ROLE),\n providerFamily: z.literal(PERSONAL_GITHUB_PROVIDER_FAMILY),\n providerPrincipalId: z.string().regex(/^\\d+$/u),\n githubUserId: z.string().regex(/^\\d+$/u),\n githubLogin: z.string().min(1).max(100),\n oauthEnvironment: z.string().min(1).max(128),\n oauthClientMarker: z.string().regex(/^[a-f0-9]{32}$/u),\n credentialBindingId: z.string().uuid(),\n connectedAt: z.string().datetime({ offset: true }),\n lastVerifiedAt: z.string().datetime({ offset: true }),\n disconnectedAt: z.string().datetime({ offset: true }).nullable().optional(),\n refreshTokenExpiresAt: z.string().datetime({ offset: true }).nullable().optional(),\n })\n .passthrough();\nexport type PersonalGitHubConnectionMetadata = z.infer<typeof PersonalGitHubConnectionMetadata>;\n\nexport const PersonalGitHubOAuthStartRequest = z\n .object({\n /** Existing exact connection generation to re-authorize in place. */\n connectionId: z.string().uuid().optional(),\n /** Same-workspace UI path restored after the callback. */\n returnPath: z.string().min(1).max(2048).optional(),\n })\n .strict();\nexport type PersonalGitHubOAuthStartRequest = z.infer<typeof PersonalGitHubOAuthStartRequest>;\n\nexport const PersonalGitHubOAuthStartResponse = z\n .object({\n authorizationUrl: z.string().url(),\n expiresAt: z.string().datetime({ offset: true }),\n })\n .strict();\nexport type PersonalGitHubOAuthStartResponse = z.infer<typeof PersonalGitHubOAuthStartResponse>;\n\nexport const PersonalGitHubConnectionStatusResponse = z\n .object({\n enabled: z.boolean(),\n connection: ConnectionMetadata.nullable(),\n reviewUrl: z.string().url().nullable(),\n })\n .strict();\nexport type PersonalGitHubConnectionStatusResponse = z.infer<\n typeof PersonalGitHubConnectionStatusResponse\n>;\n\nexport const PersonalGitHubDisconnectRequest = z\n .object({\n expectedVersion: z.number().int().positive(),\n idempotencyKey: z.string().trim().min(1).max(200),\n })\n .strict();\nexport type PersonalGitHubDisconnectRequest = z.infer<typeof PersonalGitHubDisconnectRequest>;\n\nexport function isPersonalGitHubConnection(\n connection: Pick<z.infer<typeof ConnectionMetadata>, \"providerDomain\" | \"kind\" | \"metadata\">,\n): boolean {\n return (\n connection.providerDomain.toLowerCase() === PERSONAL_GITHUB_PROVIDER_DOMAIN &&\n connection.kind === \"oauth2\" &&\n PersonalGitHubConnectionMetadata.safeParse(connection.metadata).success\n );\n}\n\nexport function hasReservedPersonalGitHubMetadata(\n metadata: Record<string, unknown> | undefined,\n): boolean {\n return metadata?.credentialRole === PERSONAL_GITHUB_CREDENTIAL_ROLE;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -50,13 +50,31 @@ export type WorkspaceArchiveObjectRef = {
|
|
|
50
50
|
bytes: number;
|
|
51
51
|
backend: string;
|
|
52
52
|
};
|
|
53
|
+
export type WorkspaceArchiveObjectKey = {
|
|
54
|
+
accountId: string;
|
|
55
|
+
workspaceId: string;
|
|
56
|
+
sandboxGroupId: string;
|
|
57
|
+
revision: string;
|
|
58
|
+
uploadId: string | null;
|
|
59
|
+
};
|
|
60
|
+
export declare function parseWorkspaceArchiveObjectKey(value: unknown): WorkspaceArchiveObjectKey | null;
|
|
53
61
|
export declare function parseWorkspaceArchiveObjectRef(value: unknown): WorkspaceArchiveObjectRef | null;
|
|
54
62
|
export declare function workspaceArchiveObjectKey(input: {
|
|
55
63
|
accountId: string;
|
|
56
64
|
workspaceId: string;
|
|
57
65
|
sandboxGroupId: string;
|
|
58
66
|
revision: string;
|
|
67
|
+
/** New upload invocations supply a fresh randomUUID; omission is legacy-only. */
|
|
68
|
+
uploadId?: string;
|
|
59
69
|
}): string;
|
|
70
|
+
/** Bind a stored locator to its publication/restore scope and verified tar
|
|
71
|
+
* descriptor. A logical revision never substitutes for the exact physical key. */
|
|
72
|
+
export declare function validateWorkspaceArchiveObjectRef(value: unknown, input: {
|
|
73
|
+
accountId: string;
|
|
74
|
+
workspaceId: string;
|
|
75
|
+
sandboxGroupId: string;
|
|
76
|
+
descriptor: WorkspaceArchiveDescriptor;
|
|
77
|
+
}): WorkspaceArchiveObjectRef | null;
|
|
60
78
|
export declare function workspaceArchivePayloadPresent(sessionState: Record<string, unknown> | null | undefined): boolean;
|
|
61
79
|
/** Restore may inline object bytes in memory for hydrate. That copy must never
|
|
62
80
|
* be published onto a lease when a durable object-storage ref exists. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeni/contracts",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.1-canary.0",
|
|
4
4
|
"description": "Shared zod schemas and wire-contract types for the OpenGeni API.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -18,6 +18,18 @@
|
|
|
18
18
|
"module": "./dist/index.js",
|
|
19
19
|
"types": "./dist/index.d.ts",
|
|
20
20
|
"exports": {
|
|
21
|
+
"./host-mcp-bindings": {
|
|
22
|
+
"types": "./dist/host-mcp-bindings.d.ts",
|
|
23
|
+
"import": "./dist/host-mcp-bindings.js"
|
|
24
|
+
},
|
|
25
|
+
"./external-identities": {
|
|
26
|
+
"types": "./dist/external-identities.d.ts",
|
|
27
|
+
"import": "./dist/external-identities.js"
|
|
28
|
+
},
|
|
29
|
+
"./connect": {
|
|
30
|
+
"types": "./dist/connect.d.ts",
|
|
31
|
+
"import": "./dist/connect.js"
|
|
32
|
+
},
|
|
21
33
|
"./site-session-http": {
|
|
22
34
|
"types": "./dist/site-session-http.d.ts",
|
|
23
35
|
"import": "./dist/site-session-http.js"
|