Files
PaperClipAI/packages/shared/src/validators/index.ts
T
DottaandPaperclip b6b3cb3761 Fix unavailable workspace branches with an inline repair and retry (#15726)
## Thinking Path

> - Paperclip manages AI agents and their work.
> - Isolated workspaces must resolve a starting Git ref before an agent
starts.
> - A task can explicitly select a branch that the repository does not
have.
> - The current recovery notice calls this a missing secret and offers
no branch repair.
> - This pull request explains the branch failure and adds a task-scoped
repair action.
> - Operators can correct the branch and request a guarded retry from
the task thread.

## Linked Issues or Issue Description

Related: Refs #11892 added unresolved-ref recovery. Refs #15719 added
bounded failure diagnostics. This change uses that recovery path and
adds its operator repair UI.

**What happened?**

A task that selects `main` in a repository with only `master` stops
before the adapter starts. The task shows a missing-secret message and a
generic retry. Repeating the run cannot fix the stored branch setting.

**Expected behavior**

Explain that the starting ref could not be resolved. Offer a verified
repository default, or let the operator enter a branch. Save only the
task's starting branch and retry its recorded owner through the existing
admission gates.

**Steps to reproduce**

1. Create an isolated-workspace task in a repository with `master` and
no `main`.
2. Set the task's base ref to `main` and assign an agent.
3. Wait for the configuration failure.
4. Use the inline branch repair and confirm the agent completes in a
worktree based on `master`.

## What Changed

- Replace the missing-secret diagnosis for unresolved workspace refs.
Keep uncertain fetch/access failures described as uncertain.
- Read the remote's advertised default branch with the existing Git
credentials and a bounded timeout. Do not guess or silently change the
branch.
- Add an atomic branch repair to the existing recovery resolution
endpoint. Check company access, board runtime permission, incident
identity, current owner, task/project state, dependencies, interactions,
approvals, budget, and active execution before requesting a retry.
- Preserve the effective inherited workspace setup when saving the task
branch override, and attach one repair notice per failed run even when
the incident is reused.
- Bind the shared repair card to the exact recovery notice and failed
run in both task-thread renderers. Validate branch syntax and prevent
duplicate submissions.
- Add Storybook examples, regression tests, and a documented local
acceptance fixture with a real Git repository and process adapter.

## Verification

- Red/green regressions cover the repair endpoint and preservation of
inherited agent setup. The regression failed before each fix and passed
afterward.
- Focused integration suite: 162 tests passed; task-thread/card suite:
230 passed. After review refinements, all 13 repair-route tests, 10 card
tests, 77 recovery-action tests, and the repeated-failure heartbeat
regression passed locally.
- Real browser acceptance passed for suggested-branch and custom-entry
repairs. Invalid syntax left the task blocked. Both valid repairs ran
the authenticated worker in a real isolated worktree and reached Done;
reload preserved the result.
- Repeated failures reused the recovery incident and retained an
actionable notice on the latest run. The inherited-setup journey
verified the provisioned file, agent branch template, worktree parent
directory, and actual Git commit before completing. [Before/after
screenshots](https://github.com/paperclipai/paperclip/pull/15726#issuecomment-6088734666).
- Full local typecheck and build passed; server typecheck passed again
after review fixes. Token gates passed.
- The monolithic local Vitest run was stopped after resource-contention
timeouts and stale assertions. Targeted regressions were rerun; the full
CI matrix passed on final revision
`26c543ff490bec29ddc77a49ee532c7f84fb96dc`. One signoff E2E
worker-cancellation failure passed on a rerun without code changes. The
two opt-in Storybook workflow jobs were skipped; the Storybook journey
was checked manually.
- Repeat the live journey with `tests/e2e/workspace-base-ref/README.md`.
Storybook examples use simulated callbacks and are not the live
acceptance proof.

## Risks

- Default-branch discovery can add up to 10 seconds to an unresolved-ref
failure. Lookup failure leaves manual entry available.
- A valid branch name can still be absent or inaccessible. The retried
workspace preparation remains authoritative and can block again with new
evidence.
- Retry remains subject to normal admission gates. The repair changes
only the task override; it does not alter project or agent defaults.
- No database migration or new dependency.

## Model Used

OpenAI GPT-6 through Codex, with tool execution, repository analysis,
and browser testing. The exact serving variant and context-window size
are not exposed in this session.

## Checklist

- [x] I have included a thinking path that traces from project context
to this change
- [x] I have specified the model used (with version and capability
details)
- [x] I have checked ROADMAP.md and confirmed this PR does not duplicate
planned core work
- [x] I have searched GitHub for duplicate or related PRs and linked
them above
- [x] I have either (a) linked existing issues with `Fixes: #` / `Closes
#` / `Refs #` OR (b) described the issue in-PR following the relevant
issue template
- [x] I have not referenced internal/instance-local Paperclip issues or
links (only public GitHub `#NNN` / `github.com/paperclipai/paperclip`
URLs)
- [x] My branch name describes the change (e.g. `docs/...`, `fix/...`)
and contains no internal Paperclip ticket id or instance-derived details
- [x] I have run tests locally and they pass
- [x] I have added or updated tests where applicable
- [x] I have updated relevant documentation to reflect my changes
- [x] I have considered and documented any risks above
- [x] All Paperclip CI gates are green
- [x] Greptile is 5/5 with no open P2s, recommendations, or follow-ups
- [x] I will address all Greptile and reviewer comments before
requesting merge

---------

Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-10-09 15:56:14 -05:00

999 lines
30 KiB
TypeScript

export {
connectionsSearchInputSchema,
connectionRequestInputSchema,
completeConnectionIntentSchema,
declineConnectionIntentSchema,
type ConnectionsSearchInput,
type ConnectionRequestInput,
type CompleteConnectionIntent,
type DeclineConnectionIntent,
} from "./connection-intent.js";
export {
nativeFinalizationResultSchema,
nativeFinalizationResultV1Schema,
nativeReportedWorkDispositionSchema,
type NativeFinalizationResultInput,
} from "./native-finalization.js";
export {
decisionEffectStalenessSchema,
decisionOptionStyleSchema,
commentOnIssueDecisionEffectSchema,
createIssueDecisionEffectSchema,
updateIssueStatusDecisionEffectSchema,
assignIssueDecisionEffectSchema,
cancelIssueTreeDecisionEffectSchema,
resolveBlockerDecisionEffectSchema,
decisionEffectSchema,
decisionInputSchema,
decisionOptionSchema,
decisionOptionsSchema,
decisionInputsSchema,
decisionSpecSchema,
type DecisionEffectInput,
type DecisionOptionInput,
type DecisionInputInput,
type DecisionSpecInput,
} from "./decision.js";
export {
instanceSettingsSchema,
instanceGeneralSettingsSchema,
patchInstanceGeneralSettingsSchema,
type InstanceGeneralSettings,
type PatchInstanceGeneralSettings,
instanceExperimentalSettingsSchema,
instanceExperimentalSettingsWithManagedSchema,
managedSettingMetadataSchema,
patchInstanceExperimentalSettingsSchema,
patchInstanceSettingsSchema,
type InstanceExperimentalSettings,
type PatchInstanceExperimentalSettings,
type PatchInstanceSettings,
} from "./instance.js";
export {
upsertBudgetPolicySchema,
resolveBudgetIncidentSchema,
type UpsertBudgetPolicy,
type ResolveBudgetIncident,
} from "./budget.js";
export {
createSmokeRunSchema,
updateSmokeRunSchema,
recordSmokeRunStepSchema,
smokeRunStatusSchema,
smokeRunStepPathSchema,
smokeRunStepStatusSchema,
smokeRunTriggerSchema,
type CreateSmokeRun,
type UpdateSmokeRun,
type RecordSmokeRunStep,
} from "./smoke-lab.js";
export {
createCompanySchema,
interactionResolverGovernanceSchema,
updateCompanySchema,
updateCompanyBrandingSchema,
type CreateCompany,
type UpdateCompany,
type UpdateCompanyBranding,
} from "./company.js";
export {
environmentDriverSchema,
environmentStatusSchema,
environmentLeaseStatusSchema,
environmentLeaseCleanupStatusSchema,
createEnvironmentSchema,
updateEnvironmentSchema,
probeEnvironmentConfigSchema,
type CreateEnvironment,
type UpdateEnvironment,
type ProbeEnvironmentConfig,
} from "./environment.js";
export {
environmentCustomImageTemplateKindSchema,
environmentCustomImageTemplateStatusSchema,
environmentCustomImageSetupSessionStatusSchema,
environmentCustomImageSetupConnectionTypeSchema,
environmentCustomImageSetupConnectionSummarySchema,
environmentCustomImageTemplateSchema,
environmentCustomImageSetupSessionSchema,
startEnvironmentCustomImageSetupSessionSchema,
finishEnvironmentCustomImageSetupSessionSchema,
cancelEnvironmentCustomImageSetupSessionSchema,
relinkEnvironmentCustomImageTemplateSchema,
createEnvironmentCustomImageTerminalSessionTokenSchema,
environmentCustomImageTerminalSessionTokenSchema,
type EnvironmentCustomImageSetupConnectionSummary,
type EnvironmentCustomImageTemplate,
type EnvironmentCustomImageSetupSession,
type StartEnvironmentCustomImageSetupSession,
type FinishEnvironmentCustomImageSetupSession,
type CancelEnvironmentCustomImageSetupSession,
type RelinkEnvironmentCustomImageTemplate,
type CreateEnvironmentCustomImageTerminalSessionToken,
type EnvironmentCustomImageTerminalSessionToken,
} from "./environment-custom-images.js";
export {
feedbackDataSharingPreferenceSchema,
feedbackTargetTypeSchema,
feedbackTraceStatusSchema,
feedbackVoteValueSchema,
upsertIssueFeedbackVoteSchema,
type UpsertIssueFeedbackVote,
} from "./feedback.js";
export {
sidebarOrderPreferenceSchema,
upsertSidebarOrderPreferenceSchema,
type UpsertSidebarOrderPreference,
} from "./sidebar-preferences.js";
export {
resourceMembershipStateSchema,
updateDocumentResourceMembershipSchema,
updateResourceMembershipSchema,
type UpdateDocumentResourceMembership,
type UpdateResourceMembership,
} from "./resource-memberships.js";
export {
generateSummarySlotSchema,
summarySlotKeySchema,
summarySlotQuerySchema,
summarySlotScopeKindSchema,
summarySlotScopeSelectorSchema,
summarySlotStatusSchema,
writeSummarySlotSchema,
type GenerateSummarySlotInput,
type SummarySlotScopeSelectorInput,
type WriteSummarySlotInput,
} from "./summary-slot.js";
export * from "./status-card.js";
export {
externalObjectStatusCategorySchema,
externalObjectStatusToneSchema,
externalObjectLivenessStateSchema,
externalObjectMentionSourceKindSchema,
externalObjectMentionConfidenceSchema,
externalObjectProviderKeySchema,
externalObjectTypeSchema,
externalObjectCanonicalIdentitySchema,
externalObjectMentionSourceSchema,
type ExternalObjectCanonicalIdentityInput,
type ExternalObjectMentionSourceInput,
type ExternalObjectProviderKeyInput,
type ExternalObjectTypeInput,
} from "./external-object.js";
export {
companySkillSourceTypeSchema,
companySkillTrustLevelSchema,
companySkillCompatibilitySchema,
companySkillSourceBadgeSchema,
companySkillSharingScopeSchema,
companySkillListSortSchema,
companySkillListIncludeSchema,
companySkillFileInventoryEntrySchema,
companySkillVersionFileInventoryEntrySchema,
companySkillSchema,
companySkillListItemSchema,
companySkillUsageAgentSchema,
companySkillListQuerySchema,
companySkillCategoryCountSchema,
companySkillVersionSchema,
companySkillDetailSchema,
companySkillVersionCreateSchema,
companySkillStarResultSchema,
companySkillCommentSchema,
companySkillCommentCreateSchema,
companySkillCommentUpdateSchema,
companySkillForkSchema,
companySkillOriginalSummarySchema,
companySkillForkSummarySchema,
companySkillForkReassignmentSchema,
companySkillForkResultSchema,
companySkillForkPrecheckResultSchema,
companySkillRenameSchema,
companySkillRenameResultSchema,
companySkillUpdateSchema,
companySkillUpdateStatusSchema,
companySkillAuditFindingSchema,
companySkillAuditResultSchema,
companySkillImportSchema,
companySkillProjectScanRequestSchema,
companySkillProjectBrowseRequestSchema,
companySkillProjectBrowseEntrySchema,
companySkillProjectBrowseResultSchema,
companySkillProjectScanSkippedSchema,
companySkillProjectScanConflictSchema,
companySkillProjectScanResultSchema,
companySkillCreateSchema,
companySkillFileDetailSchema,
companySkillFileUpdateSchema,
companySkillFileDeleteSchema,
companySkillTestRunStatusSchema,
companySkillTestInputSchema,
companySkillTestInputCreateSchema,
companySkillTestInputUpdateSchema,
companySkillTestRunTemplateSchema,
companySkillTestRunTemplateCreateSchema,
companySkillTestRunTemplateUpdateSchema,
companySkillTestRunTemplateSnapshotSchema,
companySkillTestRunCostSummarySchema,
companySkillTestRunSchema,
companySkillTestRunCreateSchema,
companySkillTestRunListQuerySchema,
catalogSkillKindSchema,
catalogSkillFileSchema,
catalogSkillGitHubSourceSchema,
catalogSkillSourceSchema,
catalogSkillSchema,
catalogSkillListQuerySchema,
catalogSkillFileDetailSchema,
companySkillInstallCatalogSchema,
companySkillInstallCatalogResultSchema,
companySkillInstallUpdateSchema,
companySkillResetSchema,
type CompanySkillImport,
type CompanySkillListQuery,
type CompanySkillProjectScan,
type CompanySkillProjectBrowse,
type CompanySkillCreate,
type CompanySkillFileUpdate,
type CompanySkillTestInputCreate,
type CompanySkillTestInputUpdate,
type CompanySkillTestRunTemplateCreate,
type CompanySkillTestRunTemplateUpdate,
type CompanySkillTestRunCreate,
type CompanySkillTestRunListQuery,
type CompanySkillVersionCreate,
type CompanySkillCommentCreate,
type CompanySkillCommentUpdate,
type CompanySkillFork,
type CompanySkillRename,
type CatalogSkillListQuery,
type CompanySkillInstallCatalog,
type CompanySkillInstallUpdate,
type CompanySkillReset,
} from "./company-skill.js";
export {
folderKindSchema,
folderSlugSchema,
folderSchema,
folderListItemSchema,
folderListResultSchema,
createFolderSchema,
updateFolderSchema,
moveFolderSchema,
moveFolderItemSchema,
ensureMySkillFolderSchema,
type CreateFolder,
type UpdateFolder,
type MoveFolder,
type MoveFolderItem,
type EnsureMySkillFolder,
} from "./folder.js";
export {
catalogTeamKindSchema,
catalogTeamTrustLevelSchema,
catalogTeamCompatibilitySchema,
catalogTeamFileKindSchema,
catalogTeamSkillRequirementTypeSchema,
catalogTeamSkillRequirementSchema,
catalogTeamEnvInputSummarySchema,
catalogTeamSourceRefSchema,
catalogTeamFileSchema,
catalogTeamSchema,
catalogTeamListQuerySchema,
catalogTeamFileDetailSchema,
catalogTeamSourcePolicySchema,
catalogTeamPreviewSchema,
catalogTeamInstallSchema,
catalogTeamSkillPreparationSchema,
type CatalogTeamListQuery,
type CatalogTeamPreview,
type CatalogTeamInstall,
} from "./teams-catalog.js";
export {
agentSkillStateSchema,
agentSkillSyncModeSchema,
agentSkillAssignmentModeSchema,
agentDesiredSkillEntrySchema,
agentDesiredSkillSelectionSchema,
agentSkillEntrySchema,
agentSkillSnapshotSchema,
agentSkillSyncSchema,
type AgentSkillSync,
} from "./adapter-skills.js";
export {
portabilityIncludeSchema,
portabilityEnvInputSchema,
portabilityCompanyManifestEntrySchema,
portabilitySidebarOrderSchema,
portabilityAgentManifestEntrySchema,
portabilitySkillManifestEntrySchema,
portabilityManifestSchema,
portabilitySourceSchema,
portabilityTargetSchema,
portabilityAgentSelectionSchema,
portabilityCollisionStrategySchema,
companyPortabilityExportSchema,
companyPortabilityPreviewSchema,
companyPortabilityImportSchema,
type CompanyPortabilityExport,
type CompanyPortabilityPreview,
type CompanyPortabilityImport,
} from "./company-portability.js";
export {
trustPresetSchema,
lowTrustBoundarySchema,
lowTrustReviewPresetPolicySchema,
assignmentAuthorizationPolicySchema,
protectedAgentAuthorizationPolicySchema,
trustAuthorizationPolicySchema,
sourceTrustArtifactKindSchema,
sourceTrustMetadataSchema,
type TrustPresetInput,
type LowTrustBoundaryInput,
type TrustAuthorizationPolicyInput,
type SourceTrustMetadataInput,
} from "./trust-policy.js";
export {
createAgentSchema,
builtInAgentEmptyMutationSchema,
builtInAgentProvisionSchema,
builtInAgentResetSchema,
createAgentHireSchema,
updateAgentSchema,
agentRuntimeConfigSchema,
agentInstructionsBundleModeSchema,
updateAgentInstructionsBundleSchema,
upsertAgentInstructionsFileSchema,
updateAgentInstructionsPathSchema,
agentApiKeyScopeSchema,
normalizeAgentApiKeyScope,
standardAgentKeyScopeSchema,
taskBridgeAgentKeyScopeSchema,
skillTestAgentKeyScopeSchema,
createAgentKeySchema,
agentMineInboxQuerySchema,
wakeAgentSchema,
resetAgentSessionSchema,
testAdapterEnvironmentSchema,
agentPermissionsSchema,
updateAgentPermissionsSchema,
type CreateAgent,
type BuiltInAgentProvision,
type BuiltInAgentReset,
type CreateAgentHire,
type UpdateAgent,
type UpdateAgentInstructionsBundle,
type UpsertAgentInstructionsFile,
type UpdateAgentInstructionsPath,
type AgentApiKeyScope,
type TaskBridgeAgentKeyScope,
type SkillTestAgentKeyScope,
type CreateAgentKey,
type AgentMineInboxQuery,
type WakeAgent,
type ResetAgentSession,
type TestAdapterEnvironment,
type UpdateAgentPermissions,
} from "./agent.js";
export {
projectDiscoverySchema,
createProjectSchema,
updateProjectSchema,
addProjectAccessMemberSchema,
createProjectWorkspaceSchema,
updateProjectWorkspaceSchema,
projectExecutionWorkspacePolicySchema,
projectWorkspaceRuntimeConfigSchema,
type CreateProject,
type UpdateProject,
type AddProjectAccessMember,
type CreateProjectWorkspace,
type UpdateProjectWorkspace,
type ProjectExecutionWorkspacePolicy,
} from "./project.js";
export {
createDocumentAnnotationCommentSchema,
createDocumentAnnotationThreadSchema,
documentAnnotationAnchorConfidenceSchema,
documentAnnotationAnchorSelectorSchema,
documentAnnotationAnchorStateSchema,
documentAnnotationTextPositionSelectorSchema,
documentAnnotationTextQuoteSelectorSchema,
documentAnnotationThreadStatusSchema,
updateDocumentAnnotationThreadSchema,
type CreateDocumentAnnotationComment,
type CreateDocumentAnnotationThread,
type UpdateDocumentAnnotationThread,
} from "./document-annotation.js";
export {
createIssueSchema,
setIssueTitleSchema,
type SetIssueTitle,
createIssueInputSchema,
createChildIssueSchema,
createAcceptedPlanDecompositionSchema,
resolveCreateIssueStatusDefault,
createIssueLabelSchema,
issueBlockedInboxAttentionSchema,
issueBlockedInboxIssueRefSchema,
issueBlockedInboxReasonSchema,
issueBlockedInboxSeveritySchema,
issueBlockedInboxStateSchema,
updateIssueSchema,
stalledReviewDecisionSchema,
issueExecutionPolicySchema,
issueExecutionMonitorPolicySchema,
issueExecutionStateSchema,
issueRecoveryActionReadModelSchema,
resolveIssueRecoveryActionSchema,
isValidExistingBranchName,
retryWorkspaceExportSchema,
issueReviewRequestSchema,
issueExecutionWorkspaceSettingsSchema,
checkoutIssueSchema,
issueCommentAuthorTypeSchema,
issueCommentPresentationSchema,
issueCommentMetadataRowSchema,
issueCommentMetadataSectionSchema,
issueCommentMetadataSchema,
addIssueCommentSchema,
issueThreadInteractionStatusSchema,
issueThreadInteractionKindSchema,
issueThreadInteractionCanonicalResolverPolicySchema,
issueThreadInteractionResolverPolicySchema,
issueThreadInteractionResolverPolicyProvenanceSchema,
issueThreadInteractionEffectiveResolverPolicySourceSchema,
issueThreadInteractionContinuationPolicySchema,
connectionIntentPhaseSchema,
connectionIntentPayloadSchema,
connectionIntentResultSchema,
suggestedTaskDraftSchema,
suggestTasksPayloadSchema,
suggestTasksResultCreatedTaskSchema,
suggestTasksResultSchema,
askUserQuestionsQuestionOptionSchema,
askUserQuestionsQuestionSchema,
paperclipQuestionSetPayloadSchema,
askUserQuestionsPayloadSchema,
askUserQuestionsAnswerSchema,
askUserQuestionsResultSchema,
requestConfirmationIssueDocumentTargetSchema,
requestConfirmationCustomTargetSchema,
requestConfirmationTargetSchema,
requestConfirmationPayloadSchema,
requestConfirmationResumeFailureSchema,
requestConfirmationResultSchema,
requestConfirmationSecretProposalPayloadSchema,
requestConfirmationSecretProposalResultSchema,
requestCheckboxConfirmationOptionSchema,
requestCheckboxConfirmationPayloadSchema,
requestCheckboxConfirmationResultSchema,
requestItemVerdictValueSchema,
requestItemVerdictsItemSchema,
requestItemVerdictsPayloadSchema,
requestItemVerdictsResultItemSchema,
requestItemVerdictsResultSchema,
createIssueThreadInteractionSchema,
acceptIssueThreadInteractionSchema,
resolveConfirmationFromCommentSchema,
type ResolveConfirmationFromComment,
rejectIssueThreadInteractionSchema,
cancelIssueThreadInteractionSchema,
skipIssueThreadInteractionSchema,
withdrawIssueThreadInteractionSchema,
respondIssueThreadInteractionSchema,
submitIssueThreadInteractionVerdictsSchema,
linkIssueApprovalSchema,
createIssueAttachmentMetadataSchema,
issueDocumentFormatSchema,
issueDocumentKeySchema,
upsertIssueDocumentSchema,
restoreIssueDocumentRevisionSchema,
upsertIssueWatchdogSchema,
type CreateIssue,
type CreateChildIssue,
type CreateAcceptedPlanDecomposition,
type CreateIssueLabel,
type UpdateIssue,
type StalledReviewDecision,
type IssueExecutionWorkspaceSettings,
type IssueRecoveryActionReadModel,
type ResolveIssueRecoveryAction,
type CheckoutIssue,
type AddIssueComment,
type CreateIssueThreadInteraction,
type CreateIssueThreadInteractionInput,
type AcceptIssueThreadInteraction,
type RejectIssueThreadInteraction,
type CancelIssueThreadInteraction,
type SkipIssueThreadInteraction,
type WithdrawIssueThreadInteraction,
type RespondIssueThreadInteraction,
type SubmitIssueThreadInteractionVerdicts,
type LinkIssueApproval,
type CreateIssueAttachmentMetadata,
type IssueDocumentFormat,
type UpsertIssueDocument,
type RestoreIssueDocumentRevision,
type UpsertIssueWatchdog,
} from "./issue.js";
export {
COMPANY_SEARCH_EXTRACT_DEFAULT_LIMIT,
COMPANY_SEARCH_EXTRACT_DEFAULT_MATCHES_PER_ISSUE,
COMPANY_SEARCH_EXTRACT_MAX_LIMIT,
COMPANY_SEARCH_EXTRACT_MAX_MATCHES_PER_ISSUE,
COMPANY_SEARCH_EXTRACT_MAX_OFFSET,
COMPANY_SEARCH_DEFAULT_LIMIT,
COMPANY_SEARCH_MAX_LIMIT,
COMPANY_SEARCH_MAX_OFFSET,
COMPANY_SEARCH_MAX_QUERY_LENGTH,
COMPANY_SEARCH_MAX_TOKENS,
companySearchQuerySchema,
companySearchExtractQuerySchema,
type CompanySearchExtractQuery,
type CompanySearchQuery,
} from "./search.js";
export {
createIssueTreeHoldSchema,
issueTreeControlModeSchema,
issueTreeHoldReleasePolicySchema,
previewIssueTreeControlSchema,
releaseIssueTreeHoldSchema,
type CreateIssueTreeHold,
type PreviewIssueTreeControl,
type ReleaseIssueTreeHold,
} from "./issue-tree-control.js";
export {
createIssueWorkProductSchema,
issueWorkProductMetadataSchema,
updateIssueWorkProductSchema,
attachmentArtifactWorkProductMetadataSchema,
issueWorkProductTypeSchema,
issueWorkProductStatusSchema,
issueWorkProductReviewStateSchema,
type CreateIssueWorkProduct,
type IssueWorkProductMetadata,
type UpdateIssueWorkProduct,
} from "./work-product.js";
export {
COMPANY_ARTIFACTS_DEFAULT_LIMIT,
COMPANY_ARTIFACTS_MAX_LIMIT,
COMPANY_ARTIFACTS_MAX_QUERY_LENGTH,
companyArtifactGroupBySchema,
companyArtifactGroupSchema,
companyArtifactMediaKindSchema,
companyArtifactSchema,
companyArtifactSourceSchema,
companyArtifactsQuerySchema,
companyArtifactsResponseSchema,
type CompanyArtifactsQuery,
} from "./artifact.js";
export {
executionWorkspaceConfigSchema,
reconcileExecutionWorkspaceBranchSchema,
updateExecutionWorkspaceSchema,
workspaceOverviewQuerySchema,
executionWorkspaceDeliveryStateSchema,
executionWorkspaceStatusSchema,
executionWorkspaceCloseActionKindSchema,
executionWorkspaceCloseActionSchema,
executionWorkspaceCloseGitReadinessSchema,
executionWorkspaceCloseLinkedIssueSchema,
executionWorkspaceCloseReadinessSchema,
executionWorkspaceCloseReadinessStateSchema,
type ReconcileExecutionWorkspaceBranch,
type UpdateExecutionWorkspace,
type WorkspaceOverviewQuery,
} from "./execution-workspace.js";
export {
normalizedWorkspaceFileAvailabilityQuerySchema,
resolvedWorkspaceResourceSchema,
workspaceFileAvailabilityRequestSchema,
workspaceFileAvailabilityResponseSchema,
workspaceFileAvailabilityResultSchema,
workspaceFileListModeSchema,
workspaceFileListQuerySchema,
workspaceFileContentSchema,
workspaceFilePreviewKindSchema,
workspaceFileRefSchema,
workspaceFileResourceKindSchema,
workspaceFileResourceQuerySchema,
workspaceFileSelectorSchema,
workspaceFileWorkspaceKindSchema,
type WorkspaceFileAvailabilityRequestInput,
type WorkspaceFileListQuery,
type WorkspaceFileResourceQuery,
} from "./workspace-file-resource.js";
export {
createGoalSchema,
updateGoalSchema,
type CreateGoal,
type UpdateGoal,
} from "./goal.js";
export {
applyOnboardingSeedSchema,
type ApplyOnboardingSeed,
} from "./onboarding-seed.js";
export {
createApprovalSchema,
resolveApprovalSchema,
requestApprovalRevisionSchema,
resubmitApprovalSchema,
addApprovalCommentSchema,
type CreateApproval,
type ResolveApproval,
type RequestApprovalRevision,
type ResubmitApproval,
type AddApprovalComment,
} from "./approval.js";
export {
envBindingPlainSchema,
envBindingSecretRefSchema,
envBindingUserSecretRefSchema,
envBindingSchema,
envConfigSchema,
createSecretSchema,
createUserSecretDefinitionSchema,
updateUserSecretDefinitionSchema,
createUserSecretValueSchema,
updateUserSecretValueSchema,
rotateUserSecretValueSchema,
createUserSecretDeclarationSchema,
createSecretProviderConfigSchema,
updateSecretProviderConfigSchema,
secretProviderConfigDiscoveryPreviewSchema,
remoteSecretImportPreviewSchema,
remoteSecretImportSchema,
remoteSecretImportSelectionSchema,
localEncryptedProviderConfigSchema,
awsSecretsManagerProviderConfigSchema,
gcpSecretManagerProviderConfigSchema,
vaultProviderConfigSchema,
secretProviderConfigPayloadSchema,
createSecretBindingSchema,
rotateSecretSchema,
secretBindingTargetSchema,
updateSecretSchema,
type CreateSecretBinding,
type CreateSecret,
type CreateUserSecretDefinition,
type UpdateUserSecretDefinition,
type CreateUserSecretValue,
type UpdateUserSecretValue,
type CreateUserSecretDeclaration,
type CreateSecretProviderConfig,
type UpdateSecretProviderConfig,
type SecretProviderConfigDiscoveryPreview,
type RemoteSecretImportPreview,
type RemoteSecretImport,
type RemoteSecretImportSelection,
type RotateSecret,
type UpdateSecret,
} from "./secret.js";
export {
createRoutineSchema,
updateRoutineSchema,
createRoutineTriggerSchema,
updateRoutineTriggerSchema,
routineVariableSchema,
routineRevisionSnapshotRoutineV1Schema,
routineRevisionSnapshotTriggerV1Schema,
routineRevisionSnapshotV1Schema,
routineRevisionSnapshotSchema,
runRoutineSchema,
rotateRoutineTriggerSecretSchema,
type CreateRoutine,
type UpdateRoutine,
type CreateRoutineTrigger,
type UpdateRoutineTrigger,
type RunRoutine,
type RotateRoutineTriggerSecret,
} from "./routine.js";
export {
createCostEventSchema, createServiceCostEventSchema,
updateBudgetSchema,
type CreateCostEvent,
type UpdateBudget,
} from "./cost.js";
export {
createFinanceEventSchema,
type CreateFinanceEvent,
} from "./finance.js";
export {
ASSET_NAMESPACE_MAX_LENGTH,
ASSET_NAMESPACE_RULE,
createAssetImageMetadataSchema,
sanitizeAssetNamespace,
type CreateAssetImageMetadata,
} from "./asset.js";
export {
pipelineAutomationRetryCleanupOptionsSchema,
pipelineAutomationRetryRequestSchema,
pipelineAutomationRetryScopeSchema,
pipelineStageAutomationSchema,
pipelineStageApproverSchema,
pipelineStageConfigSchema,
pipelineStageKindSchema,
pipelineStageOnEnterSchema,
pipelineStageVariableSchema,
type PipelineAutomationRetryCleanupOptions,
type PipelineAutomationRetryRequest,
type PipelineAutomationRetryScope,
type PipelineStageAutomationConfig,
type PipelineStageApprover,
type PipelineStageConfig,
type PipelineStageKind,
type PipelineStageOnEnter,
type PipelineStageVariable,
} from "./pipeline.js";
export {
createCompanyInviteSchema,
createOpenClawInvitePromptSchema,
acceptInviteSchema,
listCompanyInvitesQuerySchema,
listJoinRequestsQuerySchema,
claimJoinRequestApiKeySchema,
boardCliAuthAccessLevelSchema,
createCliAuthChallengeSchema,
resolveCliAuthChallengeSchema,
createBoardApiKeySchema,
currentUserProfileSchema,
authSessionSchema,
updateCurrentUserProfileSchema,
updateCompanyMemberSchema,
updateCompanyMemberWithPermissionsSchema,
archiveCompanyMemberSchema,
updateMemberPermissionsSchema,
searchAdminUsersQuerySchema,
updateUserCompanyAccessSchema,
type CreateCompanyInvite,
type CreateOpenClawInvitePrompt,
type AcceptInvite,
type ListCompanyInvitesQuery,
type ListJoinRequestsQuery,
type ClaimJoinRequestApiKey,
type BoardCliAuthAccessLevel,
type CreateCliAuthChallenge,
type ResolveCliAuthChallenge,
type CreateBoardApiKey,
type CurrentUserProfile,
type AuthSession,
type UpdateCurrentUserProfile,
type UpdateCompanyMember,
type UpdateCompanyMemberWithPermissions,
type ArchiveCompanyMember,
type UpdateMemberPermissions,
type SearchAdminUsersQuery,
type UpdateUserCompanyAccess,
} from "./access.js";
export {
jsonSchemaSchema,
pluginJobDeclarationSchema,
pluginWebhookDeclarationSchema,
pluginToolDeclarationSchema,
pluginEnvironmentDriverDeclarationSchema,
sandboxProviderCapabilitiesSchema,
pluginUiSlotDeclarationSchema,
pluginLauncherActionDeclarationSchema,
pluginLauncherRenderDeclarationSchema,
pluginLauncherDeclarationSchema,
pluginDatabaseDeclarationSchema,
pluginManagedSkillFileDeclarationSchema,
pluginManagedSkillDeclarationSchema,
pluginApiRouteDeclarationSchema,
pluginManifestV1Schema,
installPluginSchema,
upsertPluginConfigSchema,
patchPluginConfigSchema,
updatePluginStatusSchema,
uninstallPluginSchema,
pluginStateScopeKeySchema,
setPluginStateSchema,
listPluginStateSchema,
type PluginJobDeclarationInput,
type PluginWebhookDeclarationInput,
type PluginToolDeclarationInput,
type PluginEnvironmentDriverDeclarationInput,
type SandboxProviderCapabilitiesInput,
type PluginUiSlotDeclarationInput,
type PluginLauncherActionDeclarationInput,
type PluginLauncherRenderDeclarationInput,
type PluginLauncherDeclarationInput,
type PluginDatabaseDeclarationInput,
type PluginManagedSkillFileDeclarationInput,
type PluginManagedSkillDeclarationInput,
type PluginApiRouteDeclarationInput,
type PluginManifestV1Input,
type InstallPlugin,
type UpsertPluginConfig,
type PatchPluginConfig,
type UpdatePluginStatus,
type UninstallPlugin,
type PluginStateScopeKey,
type SetPluginState,
type ListPluginState,
} from "./plugin.js";
export {
createToolActionRequestSchema,
toolApplicationTypeSchema,
toolApplicationStatusSchema,
toolAuditEventTypeSchema,
toolAuditOutcomeSchema,
toolCatalogEntryKindSchema,
toolCatalogEntryStatusSchema,
toolConnectionHealthStatusSchema,
toolConnectionKindSchema,
toolConnectionStatusSchema,
toolConnectionPurposeSchema,
toolConnectionTransportSchema,
toolCredentialSecretRefSchema,
toolCredentialPlacementSchema,
toolInvocationApprovalStateSchema,
toolInvocationStatusSchema,
toolMcpGatewayAuthConfigSchema,
toolMcpGatewayContextScopeTypeSchema,
toolMcpGatewayDefaultProfileModeSchema,
toolMcpGatewayHeaderPolicySchema,
toolMcpGatewayMetadataPolicySchema,
toolMcpGatewayOnDemandToolsConfigSchema,
toolMcpGatewayStatusSchema,
toolMcpGatewayTokenActionSchema,
toolMcpGatewayTokenSubjectTypeSchema,
toolPolicyDecisionSchema,
toolPolicyTypeSchema,
toolProfileBindingTargetTypeSchema,
toolProfileDefaultActionSchema,
toolProfileEntryEffectSchema,
toolProfileEntrySelectorTypeSchema,
toolProfileStatusSchema,
toolRateLimitWindowKindSchema,
toolRedactedValueSummarySchema,
toolRiskLevelSchema,
toolRuntimeKindSchema,
toolRuntimeSlotStatusSchema,
toolTransportConfigSchema,
toolAccessSelectorSchema,
toolPolicyConditionsSchema,
toolRateLimitRuleSchema,
toolTrustRuleArgumentFiltersSchema,
toolTrustRuleBatchApprovalSchema,
toolTrustRuleScopeSchema,
toolConnectionTestCallSchema,
connectionTokenIssuancePathSchema,
connectionTokenRequestSchema,
connectionTokenScopeSchema,
connectionTokenSubjectSchema,
startConnectionAuthorizationSchema,
createConnectionGrantDelegationSchema,
replaceConnectionGrantMembersSchema,
createToolTrustRuleFromActionRequestSchema,
revokeToolTrustRuleSchema,
toolPolicyTestRequestSchema,
importMcpJsonSchema,
mcpConnectionCredentialRefSchema,
createToolApplicationSchema,
connectToolAppSchema,
GENERIC_MCP_AUTH_MODES,
genericMcpAuthModeSchema,
genericMcpOAuthClientSchema,
type GenericMcpAuthMode,
type GenericMcpOAuthClient,
reconnectToolAppSchema,
finishToolAppSchema,
finalizeOAuthAccessSchema,
startToolOAuthSchema,
updateToolApplicationSchema,
createToolConnectionSchema,
createToolMcpGatewaySchema,
createToolMcpGatewayTokenSchema,
createToolStdioCommandTemplateSchema,
disableToolStdioCommandTemplateSchema,
updateToolConnectionSchema,
putToolConnectionInstallsSchema,
updateToolMcpGatewaySchema,
createToolInvocationSchema,
createToolPolicySchema,
createToolProfileBindingForProfileSchema,
createToolProfileBindingSchema,
createToolProfileEntryForProfileSchema,
createToolProfileEntrySchema,
createToolProfileSchema,
createToolProfileWithEntriesSchema,
deleteToolProfileSchema,
duplicateToolPolicySchema,
duplicateToolProfileSchema,
reorderToolPoliciesSchema,
reviewToolProfileNewToolsSchema,
unbindToolProfileBindingSchema,
updateToolPolicySchema,
updateToolProfileEntrySchema,
updateToolProfileSchema,
updateToolProfileWithEntriesSchema,
upsertToolCatalogEntrySchema,
type CreateToolActionRequest,
type ConnectToolApp,
type ReconnectToolApp,
type CreateToolApplication,
type FinishToolApp,
type FinalizeOAuthAccess,
type StartToolOAuth,
type UpdateToolApplication,
type CreateToolConnection,
type CreateToolMcpGateway,
type CreateToolMcpGatewayToken,
type CreateToolStdioCommandTemplate,
type DisableToolStdioCommandTemplate,
type UpdateToolConnection,
type PutToolConnectionInstalls,
type UpdateToolMcpGateway,
type CreateToolInvocation,
type CreateToolPolicy,
type CreateToolProfile,
type CreateToolProfileBinding,
type CreateToolProfileBindingForProfile,
type CreateToolProfileEntry,
type CreateToolProfileEntryForProfile,
type CreateToolProfileWithEntries,
type DeleteToolProfile,
type DuplicateToolPolicy,
type DuplicateToolProfile,
type ImportMcpJson,
type ReviewToolProfileNewTools,
type ReorderToolPolicies,
type UpdateToolPolicy,
type UpdateToolProfileEntry,
type UpdateToolProfile,
type UpdateToolProfileWithEntries,
type UnbindToolProfileBinding,
type UpsertToolCatalogEntry,
type ConnectionTokenRequestInput,
type CreateConnectionGrantDelegation,
type ReplaceConnectionGrantMembersInput,
type ToolPolicyTestRequestInput,
type CreateToolTrustRuleFromActionRequest,
type RevokeToolTrustRule,
} from "./tool-access.js";
export * from "./skill-policy.js";
export * from "./provider-trace.js";
export * from "./app-definition.js";
export * from "./chat-channels.js";
export * from "./chat-github.js";
export * from "./email.js";
export { restoreAgentInstructionSchema } from "./agent.js";
export * from "./skill-source.js";
export * from "./agent-commentary.js";