workspace

package
v0.2.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2026 License: MPL-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultArtifactSupports added in v0.2.14

func DefaultArtifactSupports() []spec.ArtifactSupport

func DefaultDecoders added in v0.2.14

func DefaultDecoders() []providerapi.Decoder

DefaultDecoders returns only the decoders owned by Workspace. Shared artifact-family decoders are registered by their owning providers.

func NewCollectionCodec added in v0.2.20

func NewCollectionCodec() providerapi.SchemaCodec

Types

type API added in v0.2.10

type API struct {
	// contains filtered or unexported fields
}

API is the workspace aggregate boundary for HTTP, Wails, CLI, and other application transports. It owns API-safe projections and never exposes raw source configuration or artifact-store composition details.

func New added in v0.2.13

func New(
	dependencies Dependencies,
	config Config,
) (*API, error)

func (*API) AdoptWorkspaceOccurrence added in v0.2.13

func (a *API) AdoptWorkspaceOccurrence(
	ctx context.Context,
	request *AdoptWorkspaceOccurrenceRequest,
) (*AdoptWorkspaceOccurrenceResponse, error)

func (*API) AttachWorkspaceSource added in v0.2.10

func (a *API) AttachWorkspaceSource(
	ctx context.Context,
	request *AttachWorkspaceSourceRequest,
) (*AttachWorkspaceSourceResponse, error)

func (*API) Close added in v0.2.10

func (a *API) Close() error

func (*API) ComposeWorkspaceContext added in v0.2.10

func (a *API) ComposeWorkspaceContext(
	ctx context.Context,
	request *ComposeWorkspaceContextRequest,
) (*ComposeWorkspaceContextResponse, error)

func (*API) CreateEmptyWorkspace added in v0.2.10

func (a *API) CreateEmptyWorkspace(
	ctx context.Context,
	request *CreateEmptyWorkspaceRequest,
) (*CreateEmptyWorkspaceResponse, error)

func (*API) CreateFilesystemWorkspace added in v0.2.10

func (a *API) CreateFilesystemWorkspace(
	ctx context.Context,
	request *CreateFilesystemWorkspaceRequest,
) (*CreateFilesystemWorkspaceResponse, error)

func (*API) DetachWorkspaceSource added in v0.2.10

func (a *API) DetachWorkspaceSource(
	ctx context.Context,
	request *DetachWorkspaceSourceRequest,
) (*DetachWorkspaceSourceResponse, error)

func (*API) GetWorkspace added in v0.2.10

func (a *API) GetWorkspace(
	ctx context.Context,
	request *GetWorkspaceRequest,
) (*GetWorkspaceResponse, error)

func (*API) GetWorkspaceArtifact added in v0.2.13

func (a *API) GetWorkspaceArtifact(
	ctx context.Context,
	request *GetWorkspaceArtifactRequest,
) (*GetWorkspaceArtifactResponse, error)

func (*API) GetWorkspaceCatalog added in v0.2.10

func (a *API) GetWorkspaceCatalog(
	ctx context.Context,
	request *GetWorkspaceCatalogRequest,
) (*GetWorkspaceCatalogResponse, error)

func (*API) ListWorkspaceArtifacts added in v0.2.13

func (a *API) ListWorkspaceArtifacts(
	ctx context.Context,
	request *ListWorkspaceArtifactsRequest,
) (*ListWorkspaceArtifactsResponse, error)

func (*API) ListWorkspaceContexts added in v0.2.11

func (a *API) ListWorkspaceContexts(
	ctx context.Context,
	request *ListWorkspaceContextsRequest,
) (*ListWorkspaceContextsResponse, error)

func (*API) ListWorkspaceSkills added in v0.2.10

func (a *API) ListWorkspaceSkills(
	ctx context.Context,
	request *ListWorkspaceSkillsRequest,
) (*ListWorkspaceSkillsResponse, error)

func (*API) ListWorkspaceSuppressions added in v0.2.13

func (a *API) ListWorkspaceSuppressions(
	ctx context.Context,
	request *ListWorkspaceSuppressionsRequest,
) (*ListWorkspaceSuppressionsResponse, error)

func (*API) ListWorkspaces added in v0.2.10

func (a *API) ListWorkspaces(
	ctx context.Context,
	request *ListWorkspacesRequest,
) (*ListWorkspacesResponse, error)

func (*API) LoadWorkspaceContexts added in v0.2.11

func (a *API) LoadWorkspaceContexts(
	ctx context.Context,
	request *LoadWorkspaceContextsRequest,
) (*LoadWorkspaceContextsResponse, error)

func (*API) LoadWorkspaceSkills added in v0.2.10

func (a *API) LoadWorkspaceSkills(
	ctx context.Context,
	request *LoadWorkspaceSkillsRequest,
) (*LoadWorkspaceSkillsResponse, error)

func (*API) PinWorkspaceArtifact added in v0.2.13

func (a *API) PinWorkspaceArtifact(
	ctx context.Context,
	request *PinWorkspaceArtifactRequest,
) (*PinWorkspaceArtifactResponse, error)

func (*API) PurgeWorkspace added in v0.2.13

func (a *API) PurgeWorkspace(
	ctx context.Context,
	request *PurgeWorkspaceRequest,
) (*PurgeWorkspaceResponse, error)

func (*API) PurgeWorkspaceArtifact added in v0.2.13

func (a *API) PurgeWorkspaceArtifact(
	ctx context.Context,
	request *PurgeWorkspaceArtifactRequest,
) (*PurgeWorkspaceArtifactResponse, error)

func (*API) Ready added in v0.2.13

func (a *API) Ready() error

func (*API) RefreshWorkspace added in v0.2.10

func (a *API) RefreshWorkspace(
	ctx context.Context,
	request *RefreshWorkspaceRequest,
) (*RefreshWorkspaceResponse, error)

func (*API) RetireWorkspace added in v0.2.13

func (a *API) RetireWorkspace(
	ctx context.Context,
	request *RetireWorkspaceRequest,
) (*RetireWorkspaceResponse, error)

func (*API) SetWorkspaceArtifactEnabled added in v0.2.13

func (a *API) SetWorkspaceArtifactEnabled(
	ctx context.Context,
	request *SetWorkspaceArtifactEnabledRequest,
) (*SetWorkspaceArtifactEnabledResponse, error)

func (*API) SetWorkspaceArtifactRuntimeDisabled added in v0.2.13

func (a *API) SetWorkspaceArtifactRuntimeDisabled(
	ctx context.Context,
	request *SetWorkspaceArtifactRuntimeDisabledRequest,
) (*SetWorkspaceArtifactRuntimeDisabledResponse, error)

func (*API) SetWorkspacePrimarySource added in v0.2.13

func (a *API) SetWorkspacePrimarySource(
	ctx context.Context,
	request *SetWorkspacePrimarySourceRequest,
) (*SetWorkspacePrimarySourceResponse, error)

func (*API) SkillAdapter added in v0.2.11

func (a *API) SkillAdapter() *workspaceadapter.Adapter

SkillAdapter returns the Workspace-owned Skill source adapter. Consumers may list or load Workspace Skills, but lifecycle policy remains outside workspace.

func (*API) SuppressWorkspaceBinding added in v0.2.13

func (a *API) SuppressWorkspaceBinding(
	ctx context.Context,
	request *SuppressWorkspaceBindingRequest,
) (*SuppressWorkspaceBindingResponse, error)

func (*API) UnadoptWorkspaceArtifact added in v0.2.13

func (a *API) UnadoptWorkspaceArtifact(
	ctx context.Context,
	request *UnadoptWorkspaceArtifactRequest,
) (*UnadoptWorkspaceArtifactResponse, error)

func (*API) UnsuppressWorkspaceBinding added in v0.2.13

func (a *API) UnsuppressWorkspaceBinding(
	ctx context.Context,
	request *UnsuppressWorkspaceBindingRequest,
) (*UnsuppressWorkspaceBindingResponse, error)

func (*API) UpdateWorkspace added in v0.2.10

func (a *API) UpdateWorkspace(
	ctx context.Context,
	request *UpdateWorkspaceRequest,
) (*UpdateWorkspaceResponse, error)

func (*API) UpdateWorkspaceAttachment added in v0.2.10

func (a *API) UpdateWorkspaceAttachment(
	ctx context.Context,
	request *UpdateWorkspaceAttachmentRequest,
) (*UpdateWorkspaceAttachmentResponse, error)

type AdoptWorkspaceOccurrenceRequest added in v0.2.13

type AdoptWorkspaceOccurrenceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *AdoptWorkspaceOccurrenceRequestBody
}

type AdoptWorkspaceOccurrenceRequestBody added in v0.2.13

type AdoptWorkspaceOccurrenceRequestBody struct {
	ExpectedCatalogRevision uint64                    `json:"expectedCatalogRevision" required:"true"`
	Occurrence              WorkspaceOccurrenceRef    `json:"occurrence"              required:"true"`
	ArtifactID              basespec.ArtifactID       `json:"artifactID"              required:"true"`
	Name                    string                    `json:"name,omitempty"`
	Enabled                 bool                      `json:"enabled"                 required:"true"`
	Settings                WorkspaceArtifactSettings `json:"settings"`
}

type AdoptWorkspaceOccurrenceResponse added in v0.2.13

type AdoptWorkspaceOccurrenceResponse struct {
	Body *WorkspaceArtifactView
}

type AttachWorkspaceSourceRequest added in v0.2.10

type AttachWorkspaceSourceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *AttachWorkspaceSourceRequestBody
}

type AttachWorkspaceSourceRequestBody added in v0.2.10

type AttachWorkspaceSourceRequestBody struct {
	ExpectedCollectionRevision uint64                      `json:"expectedCollectionRevision" required:"true"`
	SourceID                   basespec.SourceID           `json:"sourceID"                   required:"true"`
	Role                       basespec.AttachmentRole     `json:"role"                       required:"true"`
	Enabled                    bool                        `json:"enabled"                    required:"true"`
	Settings                   WorkspaceAttachmentSettings `json:"settings"`
}

type AttachWorkspaceSourceResponse added in v0.2.10

type AttachWorkspaceSourceResponse struct {
	Body *WorkspaceView
}

type ComposeWorkspaceContextRequest added in v0.2.10

type ComposeWorkspaceContextRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *ComposeWorkspaceContextRequestBody
}

type ComposeWorkspaceContextRequestBody added in v0.2.10

type ComposeWorkspaceContextRequestBody struct {
	Artifacts []artifact.ArtifactRef `json:"artifacts,omitempty"`
}

type ComposeWorkspaceContextResponse added in v0.2.10

type ComposeWorkspaceContextResponse struct {
	Body *WorkspaceContextLoadPlan
}

type Config added in v0.2.10

type Config struct {
	WorkspaceRootID    basespec.RootID
	Supports           []spec.ArtifactSupport
	ContextComposition contextadapter.CompositionPolicy
	SourceUsePolicy    artifactadapter.SourceUsePolicy
}

func DefaultConfig added in v0.2.10

func DefaultConfig() Config

func (Config) ProviderConfig added in v0.2.20

func (c Config) ProviderConfig() ProviderConfig

ProviderConfig returns the provider configuration that shares this Workspace API configuration's root and supported Artifact matrix. Provider planning settings remain explicit provider-composition settings.

type CreateEmptyWorkspaceRequest added in v0.2.10

type CreateEmptyWorkspaceRequest struct {
	Body *CreateEmptyWorkspaceRequestBody
}

type CreateEmptyWorkspaceRequestBody added in v0.2.10

type CreateEmptyWorkspaceRequestBody struct {
	WorkspaceID basespec.CollectionID `json:"workspaceID"           required:"true"`
	DisplayName string                `json:"displayName"           required:"true"`
	Description string                `json:"description,omitempty"`
	Discovery   WorkspaceDiscovery    `json:"discovery"`
}

type CreateEmptyWorkspaceResponse added in v0.2.10

type CreateEmptyWorkspaceResponse struct {
	Body *WorkspaceView
}

type CreateFilesystemWorkspaceRequest added in v0.2.10

type CreateFilesystemWorkspaceRequest struct {
	Body *CreateFilesystemWorkspaceRequestBody
}

type CreateFilesystemWorkspaceRequestBody added in v0.2.10

type CreateFilesystemWorkspaceRequestBody struct {
	WorkspaceID      basespec.CollectionID `json:"workspaceID"           required:"true"`
	SourceID         basespec.SourceID     `json:"sourceID"              required:"true"`
	SourceStorageKey basespec.StorageKey   `json:"sourceStorageKey"      required:"true"`
	DisplayName      string                `json:"displayName"           required:"true"`
	Description      string                `json:"description,omitempty"`
	RootPath         string                `json:"rootPath"              required:"true"`
	Discovery        WorkspaceDiscovery    `json:"discovery"`
}

type CreateFilesystemWorkspaceResponse added in v0.2.10

type CreateFilesystemWorkspaceResponse struct {
	Body *WorkspaceView
}

type Dependencies added in v0.2.13

type Dependencies struct {
	Store artifactAPI.ConsumerAPI
}

func (Dependencies) Validate added in v0.2.13

func (d Dependencies) Validate() error

type DetachWorkspaceSourceRequest added in v0.2.10

type DetachWorkspaceSourceRequest struct {
	Workspace                  WorkspaceRef      `json:"workspace"                  required:"true"`
	SourceID                   basespec.SourceID `json:"sourceID"                   required:"true"`
	ExpectedCollectionRevision uint64            `json:"expectedCollectionRevision" required:"true"`
	ExpectedAttachmentRevision uint64            `json:"expectedAttachmentRevision" required:"true"`
}

type DetachWorkspaceSourceResponse added in v0.2.10

type DetachWorkspaceSourceResponse struct {
	Body *WorkspaceView
}

type GetWorkspaceArtifactRequest added in v0.2.13

type GetWorkspaceArtifactRequest struct {
	Workspace WorkspaceRef         `json:"workspace" required:"true"`
	Artifact  artifact.ArtifactRef `json:"artifact"  required:"true"`
}

type GetWorkspaceArtifactResponse added in v0.2.13

type GetWorkspaceArtifactResponse struct {
	Body *WorkspaceArtifactView
}

type GetWorkspaceCatalogRequest added in v0.2.10

type GetWorkspaceCatalogRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type GetWorkspaceCatalogResponse added in v0.2.10

type GetWorkspaceCatalogResponse struct {
	Body *WorkspaceCatalogView
}

type GetWorkspaceRequest added in v0.2.10

type GetWorkspaceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type GetWorkspaceResponse added in v0.2.10

type GetWorkspaceResponse struct {
	Body *WorkspaceView
}

type ListWorkspaceArtifactsRequest added in v0.2.13

type ListWorkspaceArtifactsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type ListWorkspaceArtifactsResponse added in v0.2.13

type ListWorkspaceArtifactsResponse struct {
	Body *ListWorkspaceArtifactsResponseBody
}

type ListWorkspaceArtifactsResponseBody added in v0.2.13

type ListWorkspaceArtifactsResponseBody struct {
	Artifacts []WorkspaceArtifactView `json:"artifacts"`
}

type ListWorkspaceContextsRequest added in v0.2.11

type ListWorkspaceContextsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type ListWorkspaceContextsResponse added in v0.2.11

type ListWorkspaceContextsResponse struct {
	Body *ListWorkspaceContextsResponseBody
}

type ListWorkspaceContextsResponseBody added in v0.2.11

type ListWorkspaceContextsResponseBody struct {
	Contexts []WorkspaceContextView `json:"contexts"`
}

type ListWorkspaceSkillsRequest added in v0.2.10

type ListWorkspaceSkillsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type ListWorkspaceSkillsResponse added in v0.2.10

type ListWorkspaceSkillsResponse struct {
	Body *ListWorkspaceSkillsResponseBody
}

type ListWorkspaceSkillsResponseBody added in v0.2.10

type ListWorkspaceSkillsResponseBody struct {
	Skills []WorkspaceSkillView `json:"skills"`
}

type ListWorkspaceSuppressionsRequest added in v0.2.13

type ListWorkspaceSuppressionsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type ListWorkspaceSuppressionsResponse added in v0.2.13

type ListWorkspaceSuppressionsResponse struct {
	Body *ListWorkspaceSuppressionsResponseBody
}

type ListWorkspaceSuppressionsResponseBody added in v0.2.13

type ListWorkspaceSuppressionsResponseBody struct {
	Suppressions []WorkspaceSuppressionView `json:"suppressions"`
}

type ListWorkspacesRequest added in v0.2.10

type ListWorkspacesRequest struct{}

type ListWorkspacesResponse added in v0.2.10

type ListWorkspacesResponse struct {
	Body *ListWorkspacesResponseBody
}

type ListWorkspacesResponseBody added in v0.2.10

type ListWorkspacesResponseBody struct {
	Workspaces []WorkspaceView `json:"workspaces"`
}

type LoadWorkspaceContextsRequest added in v0.2.11

type LoadWorkspaceContextsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *LoadWorkspaceContextsRequestBody
}

type LoadWorkspaceContextsRequestBody added in v0.2.11

type LoadWorkspaceContextsRequestBody struct {
	Artifacts []artifact.ArtifactRef `json:"artifacts,omitempty"`
}

type LoadWorkspaceContextsResponse added in v0.2.11

type LoadWorkspaceContextsResponse struct {
	Body *WorkspaceContextInspectionView
}

type LoadWorkspaceSkillsRequest added in v0.2.10

type LoadWorkspaceSkillsRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *LoadWorkspaceSkillsRequestBody
}

type LoadWorkspaceSkillsRequestBody added in v0.2.10

type LoadWorkspaceSkillsRequestBody struct {
	Artifacts []artifact.ArtifactRef `json:"artifacts"`
}

type LoadWorkspaceSkillsResponse added in v0.2.10

type LoadWorkspaceSkillsResponse struct {
	Body *WorkspaceSkillLoadView
}

type PinWorkspaceArtifactRequest added in v0.2.13

type PinWorkspaceArtifactRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *PinWorkspaceArtifactRequestBody
}

type PinWorkspaceArtifactRequestBody added in v0.2.13

type PinWorkspaceArtifactRequestBody struct {
	ExpectedCollectionRevision uint64                    `json:"expectedCollectionRevision" required:"true"`
	Binding                    artifact.SourceBinding    `json:"binding"                    required:"true"`
	ArtifactID                 basespec.ArtifactID       `json:"artifactID"                 required:"true"`
	Name                       string                    `json:"name"                       required:"true"`
	Enabled                    bool                      `json:"enabled"                    required:"true"`
	Settings                   WorkspaceArtifactSettings `json:"settings"`
}

type PinWorkspaceArtifactResponse added in v0.2.13

type PinWorkspaceArtifactResponse struct {
	Body *WorkspaceArtifactView
}

type Provider added in v0.2.20

type Provider struct {
	// contains filtered or unexported fields
}

Provider registers Workspace's schema codec, context decoder, and collection-kind behavior as one Artifact Store plugin.

func NewProvider added in v0.2.20

func NewProvider(config ProviderConfig) (*Provider, error)

func (*Provider) Descriptor added in v0.2.20

func (p *Provider) Descriptor() providerapi.Descriptor

type ProviderConfig added in v0.2.20

type ProviderConfig struct {
	WorkspaceRootID         basespec.RootID
	Supports                []spec.ArtifactSupport
	DiscoveryProfiles       spec.DiscoveryProfiles
	DiscoveryPolicyRevision string
	SkillRoots              []basespec.Locator
}

ProviderConfig contains Workspace's inbound Artifact Store behavior configuration. It is supplied while Artifact Store providers are registered, before metadata is opened or a Workspace is refreshed.

func DefaultProviderConfig added in v0.2.20

func DefaultProviderConfig() ProviderConfig

DefaultProviderConfig returns the application Workspace provider behavior.

type PurgeWorkspaceArtifactRequest added in v0.2.13

type PurgeWorkspaceArtifactRequest struct {
	Workspace        WorkspaceRef         `json:"workspace"        required:"true"`
	Artifact         artifact.ArtifactRef `json:"artifact"         required:"true"`
	ExpectedRevision uint64               `json:"expectedRevision" required:"true"`
}

type PurgeWorkspaceArtifactResponse added in v0.2.13

type PurgeWorkspaceArtifactResponse struct {
	Body *PurgeWorkspaceArtifactResponseBody
}

type PurgeWorkspaceArtifactResponseBody added in v0.2.13

type PurgeWorkspaceArtifactResponseBody struct {
	Artifact artifact.ArtifactRef `json:"artifact"`
}

type PurgeWorkspaceRequest added in v0.2.13

type PurgeWorkspaceRequest struct {
	Workspace        WorkspaceRef `json:"workspace"        required:"true"`
	ExpectedRevision uint64       `json:"expectedRevision" required:"true"`
}

type PurgeWorkspaceResponse added in v0.2.13

type PurgeWorkspaceResponse struct {
	Body *PurgeWorkspaceResponseBody
}

type PurgeWorkspaceResponseBody added in v0.2.13

type PurgeWorkspaceResponseBody struct {
	Workspace WorkspaceRef `json:"workspace"`
}

type RefreshWorkspaceRequest added in v0.2.10

type RefreshWorkspaceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
}

type RefreshWorkspaceResponse added in v0.2.10

type RefreshWorkspaceResponse struct {
	Body *WorkspaceRefreshResult
}

type RetireWorkspaceRequest added in v0.2.13

type RetireWorkspaceRequest struct {
	Workspace        WorkspaceRef `json:"workspace"        required:"true"`
	ExpectedRevision uint64       `json:"expectedRevision" required:"true"`
}

type RetireWorkspaceResponse added in v0.2.13

type RetireWorkspaceResponse struct {
	Body *RetireWorkspaceResponseBody
}

type RetireWorkspaceResponseBody added in v0.2.13

type RetireWorkspaceResponseBody struct {
	Workspace WorkspaceRef `json:"workspace"`
	Revision  uint64       `json:"revision"`
}

type SetWorkspaceArtifactEnabledRequest added in v0.2.13

type SetWorkspaceArtifactEnabledRequest struct {
	Workspace WorkspaceRef         `json:"workspace" required:"true"`
	Artifact  artifact.ArtifactRef `json:"artifact"  required:"true"`
	Body      *SetWorkspaceArtifactEnabledRequestBody
}

type SetWorkspaceArtifactEnabledRequestBody added in v0.2.13

type SetWorkspaceArtifactEnabledRequestBody struct {
	ExpectedRevision uint64 `json:"expectedRevision" required:"true"`
	Enabled          bool   `json:"enabled"          required:"true"`
}

type SetWorkspaceArtifactEnabledResponse added in v0.2.13

type SetWorkspaceArtifactEnabledResponse struct {
	Body *WorkspaceArtifactView
}

type SetWorkspaceArtifactRuntimeDisabledRequest added in v0.2.13

type SetWorkspaceArtifactRuntimeDisabledRequest struct {
	Workspace WorkspaceRef         `json:"workspace" required:"true"`
	Artifact  artifact.ArtifactRef `json:"artifact"  required:"true"`
	Body      *SetWorkspaceArtifactRuntimeDisabledRequestBody
}

type SetWorkspaceArtifactRuntimeDisabledRequestBody added in v0.2.13

type SetWorkspaceArtifactRuntimeDisabledRequestBody struct {
	ExpectedRevision uint64 `json:"expectedRevision" required:"true"`
	RuntimeDisabled  bool   `json:"runtimeDisabled"  required:"true"`
}

type SetWorkspaceArtifactRuntimeDisabledResponse added in v0.2.13

type SetWorkspaceArtifactRuntimeDisabledResponse struct {
	Body *WorkspaceArtifactView
}

type SetWorkspacePrimarySourceRequest added in v0.2.13

type SetWorkspacePrimarySourceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *SetWorkspacePrimarySourceRequestBody
}

type SetWorkspacePrimarySourceRequestBody added in v0.2.13

type SetWorkspacePrimarySourceRequestBody struct {
	ExpectedCollectionRevision         uint64            `json:"expectedCollectionRevision"                   required:"true"`
	PreviousSourceID                   basespec.SourceID `json:"previousSourceID,omitempty"`
	ExpectedPreviousAttachmentRevision uint64            `json:"expectedPreviousAttachmentRevision,omitempty"`
	SourceID                           basespec.SourceID `json:"sourceID,omitempty"`
	Clear                              bool              `json:"clear,omitempty"`
}

type SetWorkspacePrimarySourceResponse added in v0.2.13

type SetWorkspacePrimarySourceResponse struct {
	Body *WorkspaceView
}

type SuppressWorkspaceBindingRequest added in v0.2.13

type SuppressWorkspaceBindingRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *SuppressWorkspaceBindingRequestBody
}

type SuppressWorkspaceBindingRequestBody added in v0.2.13

type SuppressWorkspaceBindingRequestBody struct {
	ExpectedCollectionRevision uint64                 `json:"expectedCollectionRevision" required:"true"`
	Binding                    artifact.SourceBinding `json:"binding"                    required:"true"`
}

type SuppressWorkspaceBindingResponse added in v0.2.13

type SuppressWorkspaceBindingResponse struct {
	Body *WorkspaceSuppressionView
}

type UnadoptWorkspaceArtifactRequest added in v0.2.13

type UnadoptWorkspaceArtifactRequest struct {
	Workspace        WorkspaceRef         `json:"workspace"        required:"true"`
	Artifact         artifact.ArtifactRef `json:"artifact"         required:"true"`
	ExpectedRevision uint64               `json:"expectedRevision" required:"true"`
	Suppress         bool                 `json:"suppress"`
}

type UnadoptWorkspaceArtifactResponse added in v0.2.13

type UnadoptWorkspaceArtifactResponse struct {
	Body *UnadoptWorkspaceArtifactResponseBody
}

type UnadoptWorkspaceArtifactResponseBody added in v0.2.13

type UnadoptWorkspaceArtifactResponseBody struct {
	Artifact artifact.ArtifactRef `json:"artifact"`
}

type UnsuppressWorkspaceBindingRequest added in v0.2.13

type UnsuppressWorkspaceBindingRequest struct {
	Workspace        WorkspaceRef           `json:"workspace"        required:"true"`
	Binding          artifact.SourceBinding `json:"binding"          required:"true"`
	ExpectedRevision uint64                 `json:"expectedRevision" required:"true"`
}

type UnsuppressWorkspaceBindingResponse added in v0.2.13

type UnsuppressWorkspaceBindingResponse struct {
	Body *UnsuppressWorkspaceBindingResponseBody
}

type UnsuppressWorkspaceBindingResponseBody added in v0.2.13

type UnsuppressWorkspaceBindingResponseBody struct {
	Workspace WorkspaceRef           `json:"workspace"`
	Binding   artifact.SourceBinding `json:"binding"`
}

type UpdateWorkspaceAttachmentRequest added in v0.2.10

type UpdateWorkspaceAttachmentRequest struct {
	Workspace WorkspaceRef      `json:"workspace" required:"true"`
	SourceID  basespec.SourceID `json:"sourceID"  required:"true"`
	Body      *UpdateWorkspaceAttachmentRequestBody
}

type UpdateWorkspaceAttachmentRequestBody added in v0.2.10

type UpdateWorkspaceAttachmentRequestBody struct {
	ExpectedCollectionRevision uint64                      `json:"expectedCollectionRevision" required:"true"`
	ExpectedAttachmentRevision uint64                      `json:"expectedAttachmentRevision" required:"true"`
	Role                       basespec.AttachmentRole     `json:"role"                       required:"true"`
	Enabled                    bool                        `json:"enabled"                    required:"true"`
	Settings                   WorkspaceAttachmentSettings `json:"settings"`
}

type UpdateWorkspaceAttachmentResponse added in v0.2.10

type UpdateWorkspaceAttachmentResponse struct {
	Body *WorkspaceView
}

type UpdateWorkspaceRequest added in v0.2.9

type UpdateWorkspaceRequest struct {
	Workspace WorkspaceRef `json:"workspace" required:"true"`
	Body      *UpdateWorkspaceRequestBody
}

type UpdateWorkspaceRequestBody added in v0.2.10

type UpdateWorkspaceRequestBody struct {
	ExpectedRevision uint64             `json:"expectedRevision"      required:"true"`
	DisplayName      string             `json:"displayName"           required:"true"`
	Description      string             `json:"description,omitempty"`
	Enabled          bool               `json:"enabled"               required:"true"`
	Discovery        WorkspaceDiscovery `json:"discovery"`
}

type UpdateWorkspaceResponse added in v0.2.10

type UpdateWorkspaceResponse struct {
	Body *WorkspaceView
}

type WorkspaceArtifactSettings added in v0.2.13

type WorkspaceArtifactSettings struct {
	RuntimeDisabled bool `json:"runtimeDisabled"`
}

type WorkspaceArtifactView added in v0.2.13

type WorkspaceArtifactView struct {
	Artifact           artifact.ArtifactRef        `json:"artifact"`
	Revision           uint64                      `json:"revision"`
	Name               string                      `json:"name"`
	Kind               basespec.ArtifactKind       `json:"kind"`
	Enabled            bool                        `json:"enabled"`
	State              artifact.State              `json:"state"`
	Adoption           artifact.AdoptionMode       `json:"adoption"`
	ResolvedDefinition *cryptoutil.Digest          `json:"resolvedDefinition,omitempty"`
	SourceID           basespec.SourceID           `json:"sourceID"`
	Locator            basespec.Locator            `json:"locator"`
	SubresourceLocator basespec.SubresourceLocator `json:"subresourceLocator,omitempty"`
	RuntimeDisabled    bool                        `json:"runtimeDisabled"`
	Diagnostics        []providerapi.Diagnostic    `json:"diagnostics,omitempty"`
}

type WorkspaceAttachmentSettings added in v0.2.10

type WorkspaceAttachmentSettings struct {
	Recursive     *bool `json:"recursive,omitempty"`
	Authoritative *bool `json:"authoritative,omitempty"`
}

type WorkspaceAttachmentView added in v0.2.10

type WorkspaceAttachmentView struct {
	SourceID          basespec.SourceID           `json:"sourceID"`
	Revision          uint64                      `json:"revision"`
	Role              basespec.AttachmentRole     `json:"role"`
	Enabled           bool                        `json:"enabled"`
	SourceDisplayName string                      `json:"sourceDisplayName,omitempty"`
	SourceKind        string                      `json:"sourceKind,omitempty"`
	Path              string                      `json:"path,omitempty"`
	Settings          WorkspaceAttachmentSettings `json:"settings"`
	Diagnostics       []providerapi.Diagnostic    `json:"diagnostics,omitempty"`
}

type WorkspaceCatalogView added in v0.2.10

type WorkspaceCatalogView struct {
	Workspace               WorkspaceView                `json:"workspace"`
	CatalogRevision         uint64                       `json:"catalogRevision"`
	CatalogCurrent          bool                         `json:"catalogCurrent"`
	Diagnostics             []providerapi.Diagnostic     `json:"diagnostics,omitempty"`
	Resources               []WorkspaceResourceView      `json:"resources"`
	Groups                  []WorkspaceResourceGroupView `json:"groups"`
	Occurrences             []WorkspaceOccurrenceView    `json:"occurrences"`
	ValidOccurrences        []WorkspaceOccurrenceView    `json:"validOccurrences"`
	InvalidOccurrences      []WorkspaceOccurrenceView    `json:"invalidOccurrences"`
	MissingOccurrences      []WorkspaceOccurrenceView    `json:"missingOccurrences"`
	UnrecordedOccurrences   []WorkspaceOccurrenceView    `json:"unrecordedOccurrences"`
	UnresolvedArtifacts     []WorkspaceArtifactView      `json:"unresolvedArtifacts"`
	UnrecordedCount         int                          `json:"unrecordedCount"`
	UnresolvedArtifactCount int                          `json:"unresolvedArtifactCount"`
}

type WorkspaceContextContribution added in v0.2.10

type WorkspaceContextContribution struct {
	Artifact         artifact.ArtifactRef                      `json:"artifact"`
	RecordRevision   uint64                                    `json:"recordRevision"`
	DefinitionDigest cryptoutil.Digest                         `json:"definitionDigest"`
	SourceID         basespec.SourceID                         `json:"sourceID"`
	Locator          basespec.Locator                          `json:"locator"`
	Name             string                                    `json:"name"`
	Role             artifactbuiltin.WorkspaceContextRole      `json:"role"`
	MediaType        artifactbuiltin.WorkspaceContextMediaType `json:"mediaType"`
	Content          string                                    `json:"content"`
	ConventionOrder  int                                       `json:"conventionOrder"`
	OriginalBytes    int                                       `json:"originalBytes"`
	IncludedBytes    int                                       `json:"includedBytes"`
	Truncated        bool                                      `json:"truncated"`
}

type WorkspaceContextDecision added in v0.2.11

type WorkspaceContextDecision struct {
	Artifact      artifact.ArtifactRef             `json:"artifact"`
	Status        contextadapter.CompositionStatus `json:"status"`
	Code          string                           `json:"code,omitempty"`
	OriginalBytes int                              `json:"originalBytes"`
	IncludedBytes int                              `json:"includedBytes"`
}

type WorkspaceContextInspectionView added in v0.2.11

type WorkspaceContextInspectionView struct {
	Workspace       WorkspaceRef                   `json:"workspace"`
	CatalogRevision uint64                         `json:"catalogRevision"`
	Contributions   []WorkspaceContextContribution `json:"contributions"`
	Diagnostics     []providerapi.Diagnostic       `json:"diagnostics,omitempty"`
}

type WorkspaceContextLoadPlan added in v0.2.10

type WorkspaceContextLoadPlan struct {
	Workspace       WorkspaceRef                   `json:"workspace"`
	CatalogRevision uint64                         `json:"catalogRevision"`
	Contributions   []WorkspaceContextContribution `json:"contributions"`
	Prompt          string                         `json:"prompt"`
	Diagnostics     []providerapi.Diagnostic       `json:"diagnostics,omitempty"`
	Decisions       []WorkspaceContextDecision     `json:"decisions"`
	PromptBytes     int                            `json:"promptBytes"`
}

type WorkspaceContextView added in v0.2.11

type WorkspaceContextView struct {
	Artifact         artifact.ArtifactRef                      `json:"artifact"`
	RecordRevision   uint64                                    `json:"recordRevision"`
	DefinitionDigest cryptoutil.Digest                         `json:"definitionDigest"`
	SourceID         basespec.SourceID                         `json:"sourceID"`
	Locator          basespec.Locator                          `json:"locator"`
	Name             string                                    `json:"name"`
	Role             artifactbuiltin.WorkspaceContextRole      `json:"role"`
	MediaType        artifactbuiltin.WorkspaceContextMediaType `json:"mediaType"`
	Enabled          bool                                      `json:"enabled"`
	State            artifact.State                            `json:"state"`
	CatalogCurrent   bool                                      `json:"catalogCurrent"`
	ProjectionValid  bool                                      `json:"projectionValid"`
	RuntimeDisabled  bool                                      `json:"runtimeDisabled"`
	Diagnostics      []providerapi.Diagnostic                  `json:"diagnostics,omitempty"`
}

type WorkspaceDiscovery added in v0.2.10

type WorkspaceDiscovery struct {
	AdditionalLocators []basespec.Locator       `json:"additionalLocators,omitempty"`
	AdditionalRoots    []WorkspaceDiscoveryRoot `json:"additionalRoots,omitempty"`
	IncludeReadme      bool                     `json:"includeReadme,omitempty"`
}

type WorkspaceDiscoveryRoot added in v0.2.10

type WorkspaceDiscoveryRoot struct {
	Root            basespec.Locator `json:"root"`
	Recursive       bool             `json:"recursive"`
	IncludePatterns []string         `json:"includePatterns,omitempty"`
}

type WorkspaceOccurrenceRef added in v0.2.13

type WorkspaceOccurrenceRef struct {
	SourceID           basespec.SourceID           `json:"sourceID"`
	Locator            basespec.Locator            `json:"locator"`
	SubresourceLocator basespec.SubresourceLocator `json:"subresourceLocator,omitempty"`
}

type WorkspaceOccurrenceView added in v0.2.11

type WorkspaceOccurrenceView struct {
	SourceID            basespec.SourceID           `json:"sourceID"`
	Locator             basespec.Locator            `json:"locator"`
	SubresourceLocator  basespec.SubresourceLocator `json:"subresourceLocator,omitempty"`
	Kind                basespec.ArtifactKind       `json:"kind,omitempty"`
	LogicalName         basespec.LogicalName        `json:"logicalName,omitempty"`
	LogicalVersion      basespec.LogicalVersion     `json:"logicalVersion,omitempty"`
	DefinitionDigest    *cryptoutil.Digest          `json:"definitionDigest,omitempty"`
	SourceContentDigest *cryptoutil.Digest          `json:"sourceContentDigest,omitempty"`
	State               string                      `json:"state"`
	Recorded            bool                        `json:"recorded"`
	Artifact            *artifact.ArtifactRef       `json:"artifact,omitempty"`
	Diagnostics         []providerapi.Diagnostic    `json:"diagnostics,omitempty"`
}

type WorkspaceRef added in v0.2.13

type WorkspaceRef = collection.CollectionRef

type WorkspaceRefreshResult added in v0.2.10

type WorkspaceRefreshResult struct {
	Workspace        WorkspaceRef             `json:"workspace"`
	CatalogRevision  uint64                   `json:"catalogRevision"`
	CreatedArtifacts []artifact.ArtifactRef   `json:"createdArtifacts"`
	UpdatedArtifacts []artifact.ArtifactRef   `json:"updatedArtifacts"`
	Diagnostics      []providerapi.Diagnostic `json:"diagnostics,omitempty"`
	Candidates       int                      `json:"candidates"`
}

type WorkspaceResourceGroupView added in v0.2.11

type WorkspaceResourceGroupView struct {
	Kind       basespec.ArtifactKind     `json:"kind"`
	Resources  []WorkspaceResourceView   `json:"resources"`
	Unrecorded []WorkspaceOccurrenceView `json:"unrecorded"`
}

type WorkspaceResourceView added in v0.2.10

type WorkspaceResourceView struct {
	Artifact         WorkspaceArtifactView    `json:"artifact"`
	DefinitionDigest cryptoutil.Digest        `json:"definitionDigest"`
	SourceID         basespec.SourceID        `json:"sourceID"`
	Locator          basespec.Locator         `json:"locator"`
	CatalogCurrent   bool                     `json:"catalogCurrent"`
	ProjectionValid  bool                     `json:"projectionValid"`
	Diagnostics      []providerapi.Diagnostic `json:"diagnostics,omitempty"`
}

type WorkspaceSkillArgument added in v0.2.10

type WorkspaceSkillArgument struct {
	Name        string `json:"name"`
	Description string `json:"description,omitempty"`
	Default     string `json:"default,omitempty"`
}

type WorkspaceSkillLoadView added in v0.2.10

type WorkspaceSkillLoadView struct {
	Workspace       WorkspaceRef             `json:"workspace"`
	CatalogRevision uint64                   `json:"catalogRevision"`
	Skills          []WorkspaceSkillView     `json:"skills"`
	Diagnostics     []providerapi.Diagnostic `json:"diagnostics,omitempty"`
}

type WorkspaceSkillSummary added in v0.2.10

type WorkspaceSkillSummary struct {
	SchemaVersion string                   `json:"schemaVersion"`
	ID            basespec.ArtifactID      `json:"id"`
	Slug          string                   `json:"slug"`
	Name          string                   `json:"name"`
	DisplayName   string                   `json:"displayName"`
	Description   string                   `json:"description"`
	Tags          []string                 `json:"tags,omitempty"`
	Insert        document.SkillInsert     `json:"insert"`
	Arguments     []WorkspaceSkillArgument `json:"arguments,omitempty"`
	IsEnabled     bool                     `json:"isEnabled"`
	CreatedAt     time.Time                `json:"createdAt"`
	ModifiedAt    time.Time                `json:"modifiedAt"`
}

type WorkspaceSkillView added in v0.2.10

type WorkspaceSkillView struct {
	Workspace        WorkspaceRef             `json:"workspace"`
	Artifact         artifact.ArtifactRef     `json:"artifact"`
	DefinitionDigest cryptoutil.Digest        `json:"definitionDigest"`
	SourceID         basespec.SourceID        `json:"sourceID"`
	Locator          basespec.Locator         `json:"locator"`
	Skill            WorkspaceSkillSummary    `json:"skill"`
	MarkdownBody     string                   `json:"markdownBody,omitempty"`
	RecordRevision   uint64                   `json:"recordRevision"`
	State            artifact.State           `json:"state"`
	ProjectionValid  bool                     `json:"projectionValid"`
	CatalogCurrent   bool                     `json:"catalogCurrent"`
	RuntimeDisabled  bool                     `json:"runtimeDisabled"`
	Diagnostics      []providerapi.Diagnostic `json:"diagnostics,omitempty"`
}

type WorkspaceSuppressionView added in v0.2.13

type WorkspaceSuppressionView struct {
	Workspace  WorkspaceRef           `json:"workspace"`
	Binding    artifact.SourceBinding `json:"binding"`
	Revision   uint64                 `json:"revision"`
	CreatedAt  time.Time              `json:"createdAt"`
	ModifiedAt time.Time              `json:"modifiedAt"`
}

type WorkspaceView added in v0.2.10

type WorkspaceView struct {
	Workspace       WorkspaceRef              `json:"workspace"`
	Revision        uint64                    `json:"revision"`
	DisplayName     string                    `json:"displayName"`
	Description     string                    `json:"description,omitempty"`
	Enabled         bool                      `json:"enabled"`
	Mode            spec.Mode                 `json:"mode"`
	PrimarySourceID basespec.SourceID         `json:"primarySourceID,omitempty"`
	PrimaryPath     string                    `json:"primaryPath,omitempty"`
	Discovery       WorkspaceDiscovery        `json:"discovery"`
	Attachments     []WorkspaceAttachmentView `json:"attachments"`
}

WorkspaceView is the API-safe representation of a workspace.

It deliberately excludes source configuration, root data, attachment raw data, and the trust-reference contents. Local filesystem paths are included because the local Workspace management UI intentionally displays them.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL