@ever-works/contracts 1.0.0 → 1.0.2

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.
@@ -1,5 +1,6 @@
1
+ import { P as ProvidersDto, W as WorkScheduleCadence, a as WorkScheduleBillingMode, b as WorkScheduleStatus, M as MergePolicyOverride, O as OrganizationConnectionPolicy, F as FeedNarrationDto } from '../feed.types-BUfAuVJZ.cjs';
2
+ export { A as AWESOME_README_IMPORT_MODES, c as AnalyzeRepositoryResponseDto, d as AwesomeReadmeImportMode, I as IMPORT_SOURCE_TYPES, e as ImportEnrichmentConfig, f as ImportSourceType, g as ImportWorkDto, R as RelatedRepositories, h as RepoVisibility, i as RepositoryRole, j as RepositoryTarget, S as SourceRepository, k as WorksConfigSnapshot } from '../feed.types-BUfAuVJZ.cjs';
1
3
  import { ItemData, ItemHealth } from '../item/index.cjs';
2
- import { M as MergePolicyOverride, O as OrganizationConnectionPolicy, F as FeedNarrationDto } from '../feed.types-BWk3CHqj.cjs';
3
4
 
4
5
  /**
5
6
  * Method used for item generation
@@ -17,22 +18,6 @@ declare enum WebsiteRepositoryCreationMethod {
17
18
  CREATE_USING_TEMPLATE = "create-using-template"
18
19
  }
19
20
 
20
- /**
21
- * Provider selection for each capability category
22
- */
23
- interface ProvidersDto {
24
- /** Search provider plugin ID */
25
- search?: string;
26
- /** Screenshot provider plugin ID */
27
- screenshot?: string;
28
- /** AI provider plugin ID */
29
- ai?: string;
30
- /** Content extractor provider plugin ID */
31
- contentExtractor?: string;
32
- /** Pipeline provider plugin ID */
33
- pipeline?: string;
34
- }
35
-
36
21
  /**
37
22
  * Minimal core DTO for creating/triggering item generation.
38
23
  * All pipeline-specific configuration is passed via pluginConfig.
@@ -172,35 +157,6 @@ interface ExtractItemDetailsDto {
172
157
  existing_categories?: string[];
173
158
  }
174
159
 
175
- /**
176
- * Cadence options for work scheduled updates
177
- */
178
- declare enum WorkScheduleCadence {
179
- HOURLY = "hourly",
180
- EVERY_3_HOURS = "every_3_hours",
181
- EVERY_8_HOURS = "every_8_hours",
182
- EVERY_12_HOURS = "every_12_hours",
183
- DAILY = "daily",
184
- WEEKLY = "weekly",
185
- MONTHLY = "monthly"
186
- }
187
- /**
188
- * Status options for work schedule
189
- */
190
- declare enum WorkScheduleStatus {
191
- DISABLED = "disabled",
192
- ACTIVE = "active",
193
- PAUSED = "paused",
194
- CANCELED = "canceled"
195
- }
196
- /**
197
- * Billing mode options for scheduled updates
198
- */
199
- declare enum WorkScheduleBillingMode {
200
- SUBSCRIPTION = "subscription",
201
- USAGE = "usage"
202
- }
203
-
204
160
  /**
205
161
  * Status types for work generation
206
162
  */
@@ -445,91 +401,6 @@ interface SourceValidationSettingsDto {
445
401
  allowedCadences: WorkScheduleAllowedCadence[];
446
402
  }
447
403
 
448
- declare const IMPORT_SOURCE_TYPES: readonly ["data_repo", "awesome_readme", "link_existing", "works_config"];
449
- type ImportSourceType = (typeof IMPORT_SOURCE_TYPES)[number];
450
- declare const AWESOME_README_IMPORT_MODES: readonly ["clone", "reuse_source"];
451
- type AwesomeReadmeImportMode = (typeof AWESOME_README_IMPORT_MODES)[number];
452
- type RepositoryRole = 'data' | 'work' | 'website';
453
- interface RepositoryTarget {
454
- owner?: string;
455
- repo: string;
456
- }
457
- interface RelatedRepositories {
458
- data?: RepositoryTarget;
459
- work?: RepositoryTarget;
460
- website?: RepositoryTarget;
461
- }
462
- interface WorksConfigSnapshot {
463
- name?: string;
464
- initialPrompt?: string;
465
- model?: string;
466
- websiteRepo?: string;
467
- scheduleCadence?: WorkScheduleCadence | null;
468
- providers?: ProvidersDto;
469
- }
470
- interface SourceRepository<TImportedAt = string> {
471
- url: string;
472
- owner: string;
473
- repo: string;
474
- type: ImportSourceType;
475
- importedAt: TImportedAt;
476
- relatedRepositories?: RelatedRepositories;
477
- worksConfig?: WorksConfigSnapshot;
478
- }
479
- interface RepoVisibility {
480
- data: boolean;
481
- website: boolean;
482
- work: boolean;
483
- }
484
- interface ImportEnrichmentConfig {
485
- expansionFactor?: number;
486
- }
487
- interface AnalyzeRepositoryResponseDto {
488
- sourceUrl: string;
489
- owner: string;
490
- repo: string;
491
- detectedType: ImportSourceType | null;
492
- isPublic: boolean;
493
- requiresAuth: boolean;
494
- structure?: {
495
- hasDataFolder: boolean;
496
- hasConfig: boolean;
497
- hasReadme: boolean;
498
- hasWorksConfig?: boolean;
499
- isMultiFile?: boolean;
500
- itemCount?: number;
501
- categoryCount?: number;
502
- };
503
- worksConfig?: WorksConfigSnapshot;
504
- relatedDataRepo?: {
505
- name: string;
506
- owner: string;
507
- };
508
- baseSlug?: string;
509
- slugConflict?: {
510
- hasConflict: boolean;
511
- conflictingRepos: string[];
512
- suggestedSlug: string;
513
- };
514
- hasDataRepoWriteAccess?: boolean;
515
- error?: string;
516
- }
517
- interface ImportWorkDto {
518
- sourceUrl: string;
519
- sourceType: ImportSourceType;
520
- awesomeReadmeImportMode?: AwesomeReadmeImportMode;
521
- name: string;
522
- owner?: string;
523
- organization?: boolean;
524
- gitProvider: string;
525
- deployProvider?: string;
526
- createMissingRepos?: boolean;
527
- sync?: boolean;
528
- providers?: ProvidersDto;
529
- restoreWorksConfig?: boolean;
530
- enrichmentConfig?: ImportEnrichmentConfig;
531
- }
532
-
533
404
  /**
534
405
  * Public request shape for POST /api/register-work and the equivalent
535
406
  * register_work MCP tool. The GitHub credential is NOT part of this body —
@@ -2168,4 +2039,4 @@ interface PublishedDocumentDto extends PublishedDocumentSummaryDto {
2168
2039
  declare const PUBLISHABLE_ACTIVITY_ACTIONS: readonly string[];
2169
2040
  declare function isPublishableActivityAction(actionType: unknown): boolean;
2170
2041
 
2171
- export { ACTIVE_SCOPE_API_HEADER, ACTIVE_SCOPE_BROWSER_HEADER, ACTIVE_SCOPE_PERSONAL_SENTINEL, ACTIVE_SCOPE_RESPONSE_SCHEMA, AWESOME_README_IMPORT_MODES, type ActiveScopeResponse, type AnalyzeRepositoryResponseDto, type AwesomeReadmeImportMode, CHANGELOG_CATEGORIES, CHANGELOG_KINDS, CHANGELOG_LIMITS, CHANGELOG_SLUG_PATTERN, type ChangelogCategory, type ChangelogCtaDto, type ChangelogEntryDto, type ChangelogKind, type ChangelogListResponseDto, type ChangelogMarkReadRequestDto, type ChangelogMarkReadResponseDto, type ChangelogSourceEntry, type ChangelogUnreadCountResponseDto, type CheckItemHealthDto, type CheckItemHealthResponseDto, type CheckSlugAvailabilityResponse, type CreateItemsGeneratorDto, type CreateOrganizationRequest, type CreatePluginAllowlistEntryDto, type ExtractItemDetailsDto, GenerateStatusType, type GenerationLogLevel, type GenerationLogSource, GenerationMethod, type GenerationMetrics, type GenerationStepLog, HELP_ARTICLE_ID_PATTERN, HELP_BLOCK_KINDS, HELP_LIMITS, HELP_LINK_TARGET_TYPES, HELP_NOTE_TONES, HELP_SECTIONS, type HelpArticleBody, type HelpBlock, type HelpBlockKind, type HelpInline, type HelpLinkBlock, type HelpLinkTarget, type HelpLinkTargetType, type HelpListItem, type HelpNoteTone, type HelpSection, IMPORT_SOURCE_TYPES, type ImportEnrichmentConfig, type ImportSourceType, type ImportWorkDto, LANE_FAILURE_REASONS, LANE_OUTCOMES, type LaneFailureReason, type LaneOutcome, MILESTONE_STATUSES, type ManifestValidationError, type MilestoneRecord, type MilestoneStatus, ONBOARDING_DEFAULT_STATE, ONBOARDING_DESKTOP_NEXT_STEPS, ONBOARDING_MILESTONES, ONBOARDING_TERMINAL_STATUSES, type OnboardingAiChoice, type OnboardingCard, type OnboardingCardBadge, type OnboardingCatalogResponse, type OnboardingDbChoice, type OnboardingDeployChoice, type OnboardingDesktopChoice, type OnboardingDesktopNextStep, type OnboardingMilestoneKey, type OnboardingPluginCard, type OnboardingProfile, type OnboardingProfileOption, type OnboardingRequestSource, type OnboardingRequestSourceAwesomeReadme, type OnboardingRequestSourceDataRepo, type OnboardingRequestSourceInline, type OnboardingRequestSourceWebSearch, type OnboardingRoleId, type OnboardingSeedAgentSuggestion, type OnboardingSeedOutcome, type OnboardingSeedRequest, type OnboardingSeedResponse, type OnboardingSeedResultEntry, type OnboardingSeedSkillSuggestion, type OnboardingSeedSuggestionsResponse, type OnboardingStatePatchRequest, type OnboardingStateResponse, type OnboardingStatus, type OnboardingStorageChoice, type OnboardingTeamSizeId, type OnboardingWizardStateV2, type OrganizationResponse, PUBLISHABLE_ACTIVITY_ACTIONS, PUBLISHED_COLUMN_KEYS, type PluginAllowlistEntryDto, type PluginAllowlistResponseDto, type PluginCatalogEntry, type PluginCatalogResponse, type PluginInstallRequestDto, type PluginInstallResponseDto, type PluginInstallSource, type PluginInstallState, type PluginInstallStateDto, type ProvidersDto, type PublishedActivityLineDto, type PublishedActorKind, type PublishedAgentDto, type PublishedAgentRefDto, type PublishedAgentStatus, type PublishedBoardDto, type PublishedColumnDto, type PublishedColumnKey, type PublishedDocumentDto, type PublishedDocumentSummaryDto, type PublishedTaskCardDto, type PublishedTaskPriority, ROLE_OPTIONS, ROSTER_BLUEPRINT_SLUGS, ROSTER_LANE_KEYS, ROSTER_MAX_LANES, ROSTER_NAME_MAX, ROSTER_PROVISION_STATES, type RegisterCompanyRequest, type RegisterWorkErrorBody, type RegisterWorkErrorCode, type RegisterWorkRequest, type RegisterWorkResponse, type RegisterWorkStatus, type RelatedRepositories, type RemoveItemDto, type RepoVisibility, type RepositoryRole, type RepositoryTarget, type RosterBlueprintSlug, type RosterLaneKey, type RosterLaneResult, type RosterProvisionRecord, type RosterProvisionState, SHARED_VIEW_LIMITS, SHARED_VIEW_NOT_ACTIVE, SHARED_VIEW_STATUSES, type SharedViewIndexingMode, type SharedViewKnowledgeClassCountDto, type SharedViewLinkDto, type SharedViewSectionsDto, type SharedViewSessionDto, type SharedViewSessionRequestDto, type SharedViewSettingsDto, type SharedViewStatus, type SourceRepository, type SourceValidationSettingsDto, type SubmitItemDto, type SyncEventErrorClass, type SyncEventFailed, type SyncEventKind, type SyncEventPayload, type SyncEventSkipReason, type SyncEventSkipped, type SyncEventSource, type SyncEventSuccess, TEAM_SIZE_OPTIONS, UPGRADE_NOT_AVAILABLE_AFTER_MULTIPLE_ORGS, type UpdateItemDto, type UpdateItemsGeneratorDto, type UpdateOrganizationRequest, type UpdatePluginAllowlistEntryDto, type UpdateSharedViewDto, type UpdateSourceValidationPayload, type UpdateWorkSchedulePayload, type UpgradeFromAccountResponse, WORKSPACE_SEARCH_DEFAULT_PER_KIND, WORKSPACE_SEARCH_KINDS, WORKSPACE_SEARCH_MAX_PER_KIND, WORKSPACE_SEARCH_MAX_QUERY_LENGTH, WORKSPACE_SEARCH_MAX_RECENT, WORKSPACE_SEARCH_MAX_TOTAL, WORKSPACE_SEARCH_MIN_QUERY_LENGTH, type WebhookEvent, type WebhookEventDeployFailed, type WebhookEventManifestChanged, type WebhookEventTerminal, WebsiteRepositoryCreationMethod, type WorkChangelog, type WorkCurrentDeploymentHealthDto, type WorkCurrentHealthDto, type WorkCurrentState, type WorkDeploymentHealthSource, type WorkDeploymentReadiness, type WorkGenerationHistoryEntry, type WorkGenerationHistoryResponse, WorkHistoryActivityType, type WorkHistoryChangeAction, type WorkHistoryChangeEntityType, type WorkHistoryChangeEntry, type WorkLastDeploymentRunDto, type WorkLastGenerationRunDto, type WorkLastRunDto, type WorkScheduleAllowedCadence, WorkScheduleBillingMode, WorkScheduleCadence, type WorkScheduleDto, WorkScheduleStatus, type WorkStatusProjectionDto, type WorksConfigSnapshot, type WorksManifestMetadata, type WorksManifestOutput, type WorksManifestSpec, type WorksManifestV1, type WorkspaceSearchGroup, type WorkspaceSearchHit, type WorkspaceSearchKind, type WorkspaceSearchMatchReason, type WorkspaceSearchResponse, desktopNextStep, isChangelogCategory, isChangelogKind, isHelpArticleId, isHelpSection, isPublishableActivityAction, isSafeInAppPath, isSharedViewStatus, isTerminalOnboardingStatus };
2042
+ export { ACTIVE_SCOPE_API_HEADER, ACTIVE_SCOPE_BROWSER_HEADER, ACTIVE_SCOPE_PERSONAL_SENTINEL, ACTIVE_SCOPE_RESPONSE_SCHEMA, type ActiveScopeResponse, CHANGELOG_CATEGORIES, CHANGELOG_KINDS, CHANGELOG_LIMITS, CHANGELOG_SLUG_PATTERN, type ChangelogCategory, type ChangelogCtaDto, type ChangelogEntryDto, type ChangelogKind, type ChangelogListResponseDto, type ChangelogMarkReadRequestDto, type ChangelogMarkReadResponseDto, type ChangelogSourceEntry, type ChangelogUnreadCountResponseDto, type CheckItemHealthDto, type CheckItemHealthResponseDto, type CheckSlugAvailabilityResponse, type CreateItemsGeneratorDto, type CreateOrganizationRequest, type CreatePluginAllowlistEntryDto, type ExtractItemDetailsDto, GenerateStatusType, type GenerationLogLevel, type GenerationLogSource, GenerationMethod, type GenerationMetrics, type GenerationStepLog, HELP_ARTICLE_ID_PATTERN, HELP_BLOCK_KINDS, HELP_LIMITS, HELP_LINK_TARGET_TYPES, HELP_NOTE_TONES, HELP_SECTIONS, type HelpArticleBody, type HelpBlock, type HelpBlockKind, type HelpInline, type HelpLinkBlock, type HelpLinkTarget, type HelpLinkTargetType, type HelpListItem, type HelpNoteTone, type HelpSection, LANE_FAILURE_REASONS, LANE_OUTCOMES, type LaneFailureReason, type LaneOutcome, MILESTONE_STATUSES, type ManifestValidationError, type MilestoneRecord, type MilestoneStatus, ONBOARDING_DEFAULT_STATE, ONBOARDING_DESKTOP_NEXT_STEPS, ONBOARDING_MILESTONES, ONBOARDING_TERMINAL_STATUSES, type OnboardingAiChoice, type OnboardingCard, type OnboardingCardBadge, type OnboardingCatalogResponse, type OnboardingDbChoice, type OnboardingDeployChoice, type OnboardingDesktopChoice, type OnboardingDesktopNextStep, type OnboardingMilestoneKey, type OnboardingPluginCard, type OnboardingProfile, type OnboardingProfileOption, type OnboardingRequestSource, type OnboardingRequestSourceAwesomeReadme, type OnboardingRequestSourceDataRepo, type OnboardingRequestSourceInline, type OnboardingRequestSourceWebSearch, type OnboardingRoleId, type OnboardingSeedAgentSuggestion, type OnboardingSeedOutcome, type OnboardingSeedRequest, type OnboardingSeedResponse, type OnboardingSeedResultEntry, type OnboardingSeedSkillSuggestion, type OnboardingSeedSuggestionsResponse, type OnboardingStatePatchRequest, type OnboardingStateResponse, type OnboardingStatus, type OnboardingStorageChoice, type OnboardingTeamSizeId, type OnboardingWizardStateV2, type OrganizationResponse, PUBLISHABLE_ACTIVITY_ACTIONS, PUBLISHED_COLUMN_KEYS, type PluginAllowlistEntryDto, type PluginAllowlistResponseDto, type PluginCatalogEntry, type PluginCatalogResponse, type PluginInstallRequestDto, type PluginInstallResponseDto, type PluginInstallSource, type PluginInstallState, type PluginInstallStateDto, ProvidersDto, type PublishedActivityLineDto, type PublishedActorKind, type PublishedAgentDto, type PublishedAgentRefDto, type PublishedAgentStatus, type PublishedBoardDto, type PublishedColumnDto, type PublishedColumnKey, type PublishedDocumentDto, type PublishedDocumentSummaryDto, type PublishedTaskCardDto, type PublishedTaskPriority, ROLE_OPTIONS, ROSTER_BLUEPRINT_SLUGS, ROSTER_LANE_KEYS, ROSTER_MAX_LANES, ROSTER_NAME_MAX, ROSTER_PROVISION_STATES, type RegisterCompanyRequest, type RegisterWorkErrorBody, type RegisterWorkErrorCode, type RegisterWorkRequest, type RegisterWorkResponse, type RegisterWorkStatus, type RemoveItemDto, type RosterBlueprintSlug, type RosterLaneKey, type RosterLaneResult, type RosterProvisionRecord, type RosterProvisionState, SHARED_VIEW_LIMITS, SHARED_VIEW_NOT_ACTIVE, SHARED_VIEW_STATUSES, type SharedViewIndexingMode, type SharedViewKnowledgeClassCountDto, type SharedViewLinkDto, type SharedViewSectionsDto, type SharedViewSessionDto, type SharedViewSessionRequestDto, type SharedViewSettingsDto, type SharedViewStatus, type SourceValidationSettingsDto, type SubmitItemDto, type SyncEventErrorClass, type SyncEventFailed, type SyncEventKind, type SyncEventPayload, type SyncEventSkipReason, type SyncEventSkipped, type SyncEventSource, type SyncEventSuccess, TEAM_SIZE_OPTIONS, UPGRADE_NOT_AVAILABLE_AFTER_MULTIPLE_ORGS, type UpdateItemDto, type UpdateItemsGeneratorDto, type UpdateOrganizationRequest, type UpdatePluginAllowlistEntryDto, type UpdateSharedViewDto, type UpdateSourceValidationPayload, type UpdateWorkSchedulePayload, type UpgradeFromAccountResponse, WORKSPACE_SEARCH_DEFAULT_PER_KIND, WORKSPACE_SEARCH_KINDS, WORKSPACE_SEARCH_MAX_PER_KIND, WORKSPACE_SEARCH_MAX_QUERY_LENGTH, WORKSPACE_SEARCH_MAX_RECENT, WORKSPACE_SEARCH_MAX_TOTAL, WORKSPACE_SEARCH_MIN_QUERY_LENGTH, type WebhookEvent, type WebhookEventDeployFailed, type WebhookEventManifestChanged, type WebhookEventTerminal, WebsiteRepositoryCreationMethod, type WorkChangelog, type WorkCurrentDeploymentHealthDto, type WorkCurrentHealthDto, type WorkCurrentState, type WorkDeploymentHealthSource, type WorkDeploymentReadiness, type WorkGenerationHistoryEntry, type WorkGenerationHistoryResponse, WorkHistoryActivityType, type WorkHistoryChangeAction, type WorkHistoryChangeEntityType, type WorkHistoryChangeEntry, type WorkLastDeploymentRunDto, type WorkLastGenerationRunDto, type WorkLastRunDto, type WorkScheduleAllowedCadence, WorkScheduleBillingMode, WorkScheduleCadence, type WorkScheduleDto, WorkScheduleStatus, type WorkStatusProjectionDto, type WorksManifestMetadata, type WorksManifestOutput, type WorksManifestSpec, type WorksManifestV1, type WorkspaceSearchGroup, type WorkspaceSearchHit, type WorkspaceSearchKind, type WorkspaceSearchMatchReason, type WorkspaceSearchResponse, desktopNextStep, isChangelogCategory, isChangelogKind, isHelpArticleId, isHelpSection, isPublishableActivityAction, isSafeInAppPath, isSharedViewStatus, isTerminalOnboardingStatus };
@@ -1,5 +1,6 @@
1
+ import { P as ProvidersDto, W as WorkScheduleCadence, a as WorkScheduleBillingMode, b as WorkScheduleStatus, M as MergePolicyOverride, O as OrganizationConnectionPolicy, F as FeedNarrationDto } from '../feed.types-BUfAuVJZ.js';
2
+ export { A as AWESOME_README_IMPORT_MODES, c as AnalyzeRepositoryResponseDto, d as AwesomeReadmeImportMode, I as IMPORT_SOURCE_TYPES, e as ImportEnrichmentConfig, f as ImportSourceType, g as ImportWorkDto, R as RelatedRepositories, h as RepoVisibility, i as RepositoryRole, j as RepositoryTarget, S as SourceRepository, k as WorksConfigSnapshot } from '../feed.types-BUfAuVJZ.js';
1
3
  import { ItemData, ItemHealth } from '../item/index.js';
2
- import { M as MergePolicyOverride, O as OrganizationConnectionPolicy, F as FeedNarrationDto } from '../feed.types-BWk3CHqj.js';
3
4
 
4
5
  /**
5
6
  * Method used for item generation
@@ -17,22 +18,6 @@ declare enum WebsiteRepositoryCreationMethod {
17
18
  CREATE_USING_TEMPLATE = "create-using-template"
18
19
  }
19
20
 
20
- /**
21
- * Provider selection for each capability category
22
- */
23
- interface ProvidersDto {
24
- /** Search provider plugin ID */
25
- search?: string;
26
- /** Screenshot provider plugin ID */
27
- screenshot?: string;
28
- /** AI provider plugin ID */
29
- ai?: string;
30
- /** Content extractor provider plugin ID */
31
- contentExtractor?: string;
32
- /** Pipeline provider plugin ID */
33
- pipeline?: string;
34
- }
35
-
36
21
  /**
37
22
  * Minimal core DTO for creating/triggering item generation.
38
23
  * All pipeline-specific configuration is passed via pluginConfig.
@@ -172,35 +157,6 @@ interface ExtractItemDetailsDto {
172
157
  existing_categories?: string[];
173
158
  }
174
159
 
175
- /**
176
- * Cadence options for work scheduled updates
177
- */
178
- declare enum WorkScheduleCadence {
179
- HOURLY = "hourly",
180
- EVERY_3_HOURS = "every_3_hours",
181
- EVERY_8_HOURS = "every_8_hours",
182
- EVERY_12_HOURS = "every_12_hours",
183
- DAILY = "daily",
184
- WEEKLY = "weekly",
185
- MONTHLY = "monthly"
186
- }
187
- /**
188
- * Status options for work schedule
189
- */
190
- declare enum WorkScheduleStatus {
191
- DISABLED = "disabled",
192
- ACTIVE = "active",
193
- PAUSED = "paused",
194
- CANCELED = "canceled"
195
- }
196
- /**
197
- * Billing mode options for scheduled updates
198
- */
199
- declare enum WorkScheduleBillingMode {
200
- SUBSCRIPTION = "subscription",
201
- USAGE = "usage"
202
- }
203
-
204
160
  /**
205
161
  * Status types for work generation
206
162
  */
@@ -445,91 +401,6 @@ interface SourceValidationSettingsDto {
445
401
  allowedCadences: WorkScheduleAllowedCadence[];
446
402
  }
447
403
 
448
- declare const IMPORT_SOURCE_TYPES: readonly ["data_repo", "awesome_readme", "link_existing", "works_config"];
449
- type ImportSourceType = (typeof IMPORT_SOURCE_TYPES)[number];
450
- declare const AWESOME_README_IMPORT_MODES: readonly ["clone", "reuse_source"];
451
- type AwesomeReadmeImportMode = (typeof AWESOME_README_IMPORT_MODES)[number];
452
- type RepositoryRole = 'data' | 'work' | 'website';
453
- interface RepositoryTarget {
454
- owner?: string;
455
- repo: string;
456
- }
457
- interface RelatedRepositories {
458
- data?: RepositoryTarget;
459
- work?: RepositoryTarget;
460
- website?: RepositoryTarget;
461
- }
462
- interface WorksConfigSnapshot {
463
- name?: string;
464
- initialPrompt?: string;
465
- model?: string;
466
- websiteRepo?: string;
467
- scheduleCadence?: WorkScheduleCadence | null;
468
- providers?: ProvidersDto;
469
- }
470
- interface SourceRepository<TImportedAt = string> {
471
- url: string;
472
- owner: string;
473
- repo: string;
474
- type: ImportSourceType;
475
- importedAt: TImportedAt;
476
- relatedRepositories?: RelatedRepositories;
477
- worksConfig?: WorksConfigSnapshot;
478
- }
479
- interface RepoVisibility {
480
- data: boolean;
481
- website: boolean;
482
- work: boolean;
483
- }
484
- interface ImportEnrichmentConfig {
485
- expansionFactor?: number;
486
- }
487
- interface AnalyzeRepositoryResponseDto {
488
- sourceUrl: string;
489
- owner: string;
490
- repo: string;
491
- detectedType: ImportSourceType | null;
492
- isPublic: boolean;
493
- requiresAuth: boolean;
494
- structure?: {
495
- hasDataFolder: boolean;
496
- hasConfig: boolean;
497
- hasReadme: boolean;
498
- hasWorksConfig?: boolean;
499
- isMultiFile?: boolean;
500
- itemCount?: number;
501
- categoryCount?: number;
502
- };
503
- worksConfig?: WorksConfigSnapshot;
504
- relatedDataRepo?: {
505
- name: string;
506
- owner: string;
507
- };
508
- baseSlug?: string;
509
- slugConflict?: {
510
- hasConflict: boolean;
511
- conflictingRepos: string[];
512
- suggestedSlug: string;
513
- };
514
- hasDataRepoWriteAccess?: boolean;
515
- error?: string;
516
- }
517
- interface ImportWorkDto {
518
- sourceUrl: string;
519
- sourceType: ImportSourceType;
520
- awesomeReadmeImportMode?: AwesomeReadmeImportMode;
521
- name: string;
522
- owner?: string;
523
- organization?: boolean;
524
- gitProvider: string;
525
- deployProvider?: string;
526
- createMissingRepos?: boolean;
527
- sync?: boolean;
528
- providers?: ProvidersDto;
529
- restoreWorksConfig?: boolean;
530
- enrichmentConfig?: ImportEnrichmentConfig;
531
- }
532
-
533
404
  /**
534
405
  * Public request shape for POST /api/register-work and the equivalent
535
406
  * register_work MCP tool. The GitHub credential is NOT part of this body —
@@ -2168,4 +2039,4 @@ interface PublishedDocumentDto extends PublishedDocumentSummaryDto {
2168
2039
  declare const PUBLISHABLE_ACTIVITY_ACTIONS: readonly string[];
2169
2040
  declare function isPublishableActivityAction(actionType: unknown): boolean;
2170
2041
 
2171
- export { ACTIVE_SCOPE_API_HEADER, ACTIVE_SCOPE_BROWSER_HEADER, ACTIVE_SCOPE_PERSONAL_SENTINEL, ACTIVE_SCOPE_RESPONSE_SCHEMA, AWESOME_README_IMPORT_MODES, type ActiveScopeResponse, type AnalyzeRepositoryResponseDto, type AwesomeReadmeImportMode, CHANGELOG_CATEGORIES, CHANGELOG_KINDS, CHANGELOG_LIMITS, CHANGELOG_SLUG_PATTERN, type ChangelogCategory, type ChangelogCtaDto, type ChangelogEntryDto, type ChangelogKind, type ChangelogListResponseDto, type ChangelogMarkReadRequestDto, type ChangelogMarkReadResponseDto, type ChangelogSourceEntry, type ChangelogUnreadCountResponseDto, type CheckItemHealthDto, type CheckItemHealthResponseDto, type CheckSlugAvailabilityResponse, type CreateItemsGeneratorDto, type CreateOrganizationRequest, type CreatePluginAllowlistEntryDto, type ExtractItemDetailsDto, GenerateStatusType, type GenerationLogLevel, type GenerationLogSource, GenerationMethod, type GenerationMetrics, type GenerationStepLog, HELP_ARTICLE_ID_PATTERN, HELP_BLOCK_KINDS, HELP_LIMITS, HELP_LINK_TARGET_TYPES, HELP_NOTE_TONES, HELP_SECTIONS, type HelpArticleBody, type HelpBlock, type HelpBlockKind, type HelpInline, type HelpLinkBlock, type HelpLinkTarget, type HelpLinkTargetType, type HelpListItem, type HelpNoteTone, type HelpSection, IMPORT_SOURCE_TYPES, type ImportEnrichmentConfig, type ImportSourceType, type ImportWorkDto, LANE_FAILURE_REASONS, LANE_OUTCOMES, type LaneFailureReason, type LaneOutcome, MILESTONE_STATUSES, type ManifestValidationError, type MilestoneRecord, type MilestoneStatus, ONBOARDING_DEFAULT_STATE, ONBOARDING_DESKTOP_NEXT_STEPS, ONBOARDING_MILESTONES, ONBOARDING_TERMINAL_STATUSES, type OnboardingAiChoice, type OnboardingCard, type OnboardingCardBadge, type OnboardingCatalogResponse, type OnboardingDbChoice, type OnboardingDeployChoice, type OnboardingDesktopChoice, type OnboardingDesktopNextStep, type OnboardingMilestoneKey, type OnboardingPluginCard, type OnboardingProfile, type OnboardingProfileOption, type OnboardingRequestSource, type OnboardingRequestSourceAwesomeReadme, type OnboardingRequestSourceDataRepo, type OnboardingRequestSourceInline, type OnboardingRequestSourceWebSearch, type OnboardingRoleId, type OnboardingSeedAgentSuggestion, type OnboardingSeedOutcome, type OnboardingSeedRequest, type OnboardingSeedResponse, type OnboardingSeedResultEntry, type OnboardingSeedSkillSuggestion, type OnboardingSeedSuggestionsResponse, type OnboardingStatePatchRequest, type OnboardingStateResponse, type OnboardingStatus, type OnboardingStorageChoice, type OnboardingTeamSizeId, type OnboardingWizardStateV2, type OrganizationResponse, PUBLISHABLE_ACTIVITY_ACTIONS, PUBLISHED_COLUMN_KEYS, type PluginAllowlistEntryDto, type PluginAllowlistResponseDto, type PluginCatalogEntry, type PluginCatalogResponse, type PluginInstallRequestDto, type PluginInstallResponseDto, type PluginInstallSource, type PluginInstallState, type PluginInstallStateDto, type ProvidersDto, type PublishedActivityLineDto, type PublishedActorKind, type PublishedAgentDto, type PublishedAgentRefDto, type PublishedAgentStatus, type PublishedBoardDto, type PublishedColumnDto, type PublishedColumnKey, type PublishedDocumentDto, type PublishedDocumentSummaryDto, type PublishedTaskCardDto, type PublishedTaskPriority, ROLE_OPTIONS, ROSTER_BLUEPRINT_SLUGS, ROSTER_LANE_KEYS, ROSTER_MAX_LANES, ROSTER_NAME_MAX, ROSTER_PROVISION_STATES, type RegisterCompanyRequest, type RegisterWorkErrorBody, type RegisterWorkErrorCode, type RegisterWorkRequest, type RegisterWorkResponse, type RegisterWorkStatus, type RelatedRepositories, type RemoveItemDto, type RepoVisibility, type RepositoryRole, type RepositoryTarget, type RosterBlueprintSlug, type RosterLaneKey, type RosterLaneResult, type RosterProvisionRecord, type RosterProvisionState, SHARED_VIEW_LIMITS, SHARED_VIEW_NOT_ACTIVE, SHARED_VIEW_STATUSES, type SharedViewIndexingMode, type SharedViewKnowledgeClassCountDto, type SharedViewLinkDto, type SharedViewSectionsDto, type SharedViewSessionDto, type SharedViewSessionRequestDto, type SharedViewSettingsDto, type SharedViewStatus, type SourceRepository, type SourceValidationSettingsDto, type SubmitItemDto, type SyncEventErrorClass, type SyncEventFailed, type SyncEventKind, type SyncEventPayload, type SyncEventSkipReason, type SyncEventSkipped, type SyncEventSource, type SyncEventSuccess, TEAM_SIZE_OPTIONS, UPGRADE_NOT_AVAILABLE_AFTER_MULTIPLE_ORGS, type UpdateItemDto, type UpdateItemsGeneratorDto, type UpdateOrganizationRequest, type UpdatePluginAllowlistEntryDto, type UpdateSharedViewDto, type UpdateSourceValidationPayload, type UpdateWorkSchedulePayload, type UpgradeFromAccountResponse, WORKSPACE_SEARCH_DEFAULT_PER_KIND, WORKSPACE_SEARCH_KINDS, WORKSPACE_SEARCH_MAX_PER_KIND, WORKSPACE_SEARCH_MAX_QUERY_LENGTH, WORKSPACE_SEARCH_MAX_RECENT, WORKSPACE_SEARCH_MAX_TOTAL, WORKSPACE_SEARCH_MIN_QUERY_LENGTH, type WebhookEvent, type WebhookEventDeployFailed, type WebhookEventManifestChanged, type WebhookEventTerminal, WebsiteRepositoryCreationMethod, type WorkChangelog, type WorkCurrentDeploymentHealthDto, type WorkCurrentHealthDto, type WorkCurrentState, type WorkDeploymentHealthSource, type WorkDeploymentReadiness, type WorkGenerationHistoryEntry, type WorkGenerationHistoryResponse, WorkHistoryActivityType, type WorkHistoryChangeAction, type WorkHistoryChangeEntityType, type WorkHistoryChangeEntry, type WorkLastDeploymentRunDto, type WorkLastGenerationRunDto, type WorkLastRunDto, type WorkScheduleAllowedCadence, WorkScheduleBillingMode, WorkScheduleCadence, type WorkScheduleDto, WorkScheduleStatus, type WorkStatusProjectionDto, type WorksConfigSnapshot, type WorksManifestMetadata, type WorksManifestOutput, type WorksManifestSpec, type WorksManifestV1, type WorkspaceSearchGroup, type WorkspaceSearchHit, type WorkspaceSearchKind, type WorkspaceSearchMatchReason, type WorkspaceSearchResponse, desktopNextStep, isChangelogCategory, isChangelogKind, isHelpArticleId, isHelpSection, isPublishableActivityAction, isSafeInAppPath, isSharedViewStatus, isTerminalOnboardingStatus };
2042
+ export { ACTIVE_SCOPE_API_HEADER, ACTIVE_SCOPE_BROWSER_HEADER, ACTIVE_SCOPE_PERSONAL_SENTINEL, ACTIVE_SCOPE_RESPONSE_SCHEMA, type ActiveScopeResponse, CHANGELOG_CATEGORIES, CHANGELOG_KINDS, CHANGELOG_LIMITS, CHANGELOG_SLUG_PATTERN, type ChangelogCategory, type ChangelogCtaDto, type ChangelogEntryDto, type ChangelogKind, type ChangelogListResponseDto, type ChangelogMarkReadRequestDto, type ChangelogMarkReadResponseDto, type ChangelogSourceEntry, type ChangelogUnreadCountResponseDto, type CheckItemHealthDto, type CheckItemHealthResponseDto, type CheckSlugAvailabilityResponse, type CreateItemsGeneratorDto, type CreateOrganizationRequest, type CreatePluginAllowlistEntryDto, type ExtractItemDetailsDto, GenerateStatusType, type GenerationLogLevel, type GenerationLogSource, GenerationMethod, type GenerationMetrics, type GenerationStepLog, HELP_ARTICLE_ID_PATTERN, HELP_BLOCK_KINDS, HELP_LIMITS, HELP_LINK_TARGET_TYPES, HELP_NOTE_TONES, HELP_SECTIONS, type HelpArticleBody, type HelpBlock, type HelpBlockKind, type HelpInline, type HelpLinkBlock, type HelpLinkTarget, type HelpLinkTargetType, type HelpListItem, type HelpNoteTone, type HelpSection, LANE_FAILURE_REASONS, LANE_OUTCOMES, type LaneFailureReason, type LaneOutcome, MILESTONE_STATUSES, type ManifestValidationError, type MilestoneRecord, type MilestoneStatus, ONBOARDING_DEFAULT_STATE, ONBOARDING_DESKTOP_NEXT_STEPS, ONBOARDING_MILESTONES, ONBOARDING_TERMINAL_STATUSES, type OnboardingAiChoice, type OnboardingCard, type OnboardingCardBadge, type OnboardingCatalogResponse, type OnboardingDbChoice, type OnboardingDeployChoice, type OnboardingDesktopChoice, type OnboardingDesktopNextStep, type OnboardingMilestoneKey, type OnboardingPluginCard, type OnboardingProfile, type OnboardingProfileOption, type OnboardingRequestSource, type OnboardingRequestSourceAwesomeReadme, type OnboardingRequestSourceDataRepo, type OnboardingRequestSourceInline, type OnboardingRequestSourceWebSearch, type OnboardingRoleId, type OnboardingSeedAgentSuggestion, type OnboardingSeedOutcome, type OnboardingSeedRequest, type OnboardingSeedResponse, type OnboardingSeedResultEntry, type OnboardingSeedSkillSuggestion, type OnboardingSeedSuggestionsResponse, type OnboardingStatePatchRequest, type OnboardingStateResponse, type OnboardingStatus, type OnboardingStorageChoice, type OnboardingTeamSizeId, type OnboardingWizardStateV2, type OrganizationResponse, PUBLISHABLE_ACTIVITY_ACTIONS, PUBLISHED_COLUMN_KEYS, type PluginAllowlistEntryDto, type PluginAllowlistResponseDto, type PluginCatalogEntry, type PluginCatalogResponse, type PluginInstallRequestDto, type PluginInstallResponseDto, type PluginInstallSource, type PluginInstallState, type PluginInstallStateDto, ProvidersDto, type PublishedActivityLineDto, type PublishedActorKind, type PublishedAgentDto, type PublishedAgentRefDto, type PublishedAgentStatus, type PublishedBoardDto, type PublishedColumnDto, type PublishedColumnKey, type PublishedDocumentDto, type PublishedDocumentSummaryDto, type PublishedTaskCardDto, type PublishedTaskPriority, ROLE_OPTIONS, ROSTER_BLUEPRINT_SLUGS, ROSTER_LANE_KEYS, ROSTER_MAX_LANES, ROSTER_NAME_MAX, ROSTER_PROVISION_STATES, type RegisterCompanyRequest, type RegisterWorkErrorBody, type RegisterWorkErrorCode, type RegisterWorkRequest, type RegisterWorkResponse, type RegisterWorkStatus, type RemoveItemDto, type RosterBlueprintSlug, type RosterLaneKey, type RosterLaneResult, type RosterProvisionRecord, type RosterProvisionState, SHARED_VIEW_LIMITS, SHARED_VIEW_NOT_ACTIVE, SHARED_VIEW_STATUSES, type SharedViewIndexingMode, type SharedViewKnowledgeClassCountDto, type SharedViewLinkDto, type SharedViewSectionsDto, type SharedViewSessionDto, type SharedViewSessionRequestDto, type SharedViewSettingsDto, type SharedViewStatus, type SourceValidationSettingsDto, type SubmitItemDto, type SyncEventErrorClass, type SyncEventFailed, type SyncEventKind, type SyncEventPayload, type SyncEventSkipReason, type SyncEventSkipped, type SyncEventSource, type SyncEventSuccess, TEAM_SIZE_OPTIONS, UPGRADE_NOT_AVAILABLE_AFTER_MULTIPLE_ORGS, type UpdateItemDto, type UpdateItemsGeneratorDto, type UpdateOrganizationRequest, type UpdatePluginAllowlistEntryDto, type UpdateSharedViewDto, type UpdateSourceValidationPayload, type UpdateWorkSchedulePayload, type UpgradeFromAccountResponse, WORKSPACE_SEARCH_DEFAULT_PER_KIND, WORKSPACE_SEARCH_KINDS, WORKSPACE_SEARCH_MAX_PER_KIND, WORKSPACE_SEARCH_MAX_QUERY_LENGTH, WORKSPACE_SEARCH_MAX_RECENT, WORKSPACE_SEARCH_MAX_TOTAL, WORKSPACE_SEARCH_MIN_QUERY_LENGTH, type WebhookEvent, type WebhookEventDeployFailed, type WebhookEventManifestChanged, type WebhookEventTerminal, WebsiteRepositoryCreationMethod, type WorkChangelog, type WorkCurrentDeploymentHealthDto, type WorkCurrentHealthDto, type WorkCurrentState, type WorkDeploymentHealthSource, type WorkDeploymentReadiness, type WorkGenerationHistoryEntry, type WorkGenerationHistoryResponse, WorkHistoryActivityType, type WorkHistoryChangeAction, type WorkHistoryChangeEntityType, type WorkHistoryChangeEntry, type WorkLastDeploymentRunDto, type WorkLastGenerationRunDto, type WorkLastRunDto, type WorkScheduleAllowedCadence, WorkScheduleBillingMode, WorkScheduleCadence, type WorkScheduleDto, WorkScheduleStatus, type WorkStatusProjectionDto, type WorksManifestMetadata, type WorksManifestOutput, type WorksManifestSpec, type WorksManifestV1, type WorkspaceSearchGroup, type WorkspaceSearchHit, type WorkspaceSearchKind, type WorkspaceSearchMatchReason, type WorkspaceSearchResponse, desktopNextStep, isChangelogCategory, isChangelogKind, isHelpArticleId, isHelpSection, isPublishableActivityAction, isSafeInAppPath, isSharedViewStatus, isTerminalOnboardingStatus };
@@ -16,7 +16,8 @@ var USER_SELECTABLE_WORK_KINDS = [
16
16
  "blog",
17
17
  "directory",
18
18
  "awesome-repo",
19
- "repo"
19
+ "repo",
20
+ "app"
20
21
  ];
21
22
  var WORK_KINDS = [...USER_SELECTABLE_WORK_KINDS, "company", "campaign", "default"];
22
23
  var WORK_KIND_SET = new Set(WORK_KINDS);
@@ -41,6 +42,9 @@ function isUserSelectableWorkKind(value) {
41
42
  function isRepositoryWorkKind(value) {
42
43
  return normalizeWorkKind(value) === "repo";
43
44
  }
45
+ function isAppWorkKind(value) {
46
+ return normalizeWorkKind(value) === "app";
47
+ }
44
48
 
45
49
  // src/domain/goal-kind.ts
46
50
  var GOAL_KINDS = ["metric", "delivery"];
@@ -196,6 +200,8 @@ var DIRECTORY_CAPABILITIES = {
196
200
  sourceValidation: true,
197
201
  deploy: true,
198
202
  kb: true,
203
+ builds: false,
204
+ appEnvironment: false,
199
205
  metrics: ["total-items", "categories", "comparisons", "generation-status", "days-active"],
200
206
  repos: { data: true, work: true, website: true }
201
207
  };
@@ -213,6 +219,8 @@ var WORK_KIND_CAPABILITIES = {
213
219
  sourceValidation: true,
214
220
  deploy: true,
215
221
  kb: true,
222
+ builds: false,
223
+ appEnvironment: false,
216
224
  metrics: ["total-items", "categories", "tags", "generation-status", "days-active"],
217
225
  repos: { data: true, work: true, website: true }
218
226
  },
@@ -225,6 +233,8 @@ var WORK_KIND_CAPABILITIES = {
225
233
  sourceValidation: false,
226
234
  deploy: true,
227
235
  kb: true,
236
+ builds: false,
237
+ appEnvironment: false,
228
238
  metrics: ["posts", "page-views", "registered-users", "deploy-status", "days-active"],
229
239
  repos: { data: true, work: true, website: true }
230
240
  },
@@ -237,6 +247,8 @@ var WORK_KIND_CAPABILITIES = {
237
247
  sourceValidation: false,
238
248
  deploy: true,
239
249
  kb: true,
250
+ builds: false,
251
+ appEnvironment: false,
240
252
  metrics: ["page-views", "registered-users", "sessions", "deploy-status", "generation-status"],
241
253
  repos: { data: true, work: true, website: true }
242
254
  },
@@ -249,6 +261,8 @@ var WORK_KIND_CAPABILITIES = {
249
261
  sourceValidation: false,
250
262
  deploy: true,
251
263
  kb: true,
264
+ builds: false,
265
+ appEnvironment: false,
252
266
  metrics: ["page-views", "conversions", "deploy-status", "days-active"],
253
267
  repos: { data: true, work: true, website: true }
254
268
  },
@@ -272,6 +286,8 @@ var WORK_KIND_CAPABILITIES = {
272
286
  sourceValidation: false,
273
287
  deploy: false,
274
288
  kb: true,
289
+ builds: false,
290
+ appEnvironment: false,
275
291
  metrics: ["agents", "open-tasks", "days-active"],
276
292
  repos: { data: true, work: false, website: false }
277
293
  },
@@ -286,6 +302,8 @@ var WORK_KIND_CAPABILITIES = {
286
302
  sourceValidation: false,
287
303
  deploy: false,
288
304
  kb: true,
305
+ builds: false,
306
+ appEnvironment: false,
289
307
  metrics: ["works-owned", "team-members", "agents", "open-tasks", "days-active"],
290
308
  repos: { data: true, work: true, website: false }
291
309
  },
@@ -305,8 +323,40 @@ var WORK_KIND_CAPABILITIES = {
305
323
  sourceValidation: false,
306
324
  deploy: false,
307
325
  kb: true,
326
+ builds: false,
327
+ appEnvironment: false,
308
328
  metrics: ["agents", "open-tasks", "conversions", "days-active"],
309
329
  repos: { data: true, work: true, website: false }
330
+ },
331
+ // An App Work wraps code the platform did not generate (README D1): the
332
+ // repository the member pasted, forked or copied IS its Work Repository,
333
+ // so the persisted `website` role is on and the `data` role — which holds
334
+ // a Work's generated data — is off. Nothing item-shaped applies: no
335
+ // items, taxonomy, comparisons, community-PR intake, import/export or
336
+ // source validation, and no generated site to render.
337
+ //
338
+ // `deploy` is ON where `repo` refuses it, which is the whole point of the
339
+ // kind: the second contract invariant this entry replaces is "a kind
340
+ // deploys only with a repository to deploy" — an App Work deploys the
341
+ // Work Repository without ever having generated one.
342
+ //
343
+ // `builds` and `appEnvironment` (Resolution R-7) are true HERE ONLY — the
344
+ // two flags exist so APW-05's Builds surface and APW-07's App env /
345
+ // dependencies surfaces can hang off the registry instead of off
346
+ // `kind === 'app'` inline tests, exactly as `deploy` does.
347
+ app: {
348
+ items: { enabled: false, labelKey: "items" },
349
+ taxonomy: false,
350
+ comparisons: false,
351
+ communityPr: false,
352
+ itemImportExport: false,
353
+ sourceValidation: false,
354
+ deploy: true,
355
+ kb: true,
356
+ builds: true,
357
+ appEnvironment: true,
358
+ metrics: ["agents", "open-tasks", "deploy-status", "days-active"],
359
+ repos: { data: false, work: false, website: true }
310
360
  }
311
361
  };
312
362
  function getWorkCapabilities(kind) {
@@ -326,6 +376,7 @@ exports.WORK_METRIC_DEFINITIONS = WORK_METRIC_DEFINITIONS;
326
376
  exports.WORK_METRIC_IDS = WORK_METRIC_IDS;
327
377
  exports.getWorkCapabilities = getWorkCapabilities;
328
378
  exports.getWorkMetricDefinition = getWorkMetricDefinition;
379
+ exports.isAppWorkKind = isAppWorkKind;
329
380
  exports.isDeliveryGoalKind = isDeliveryGoalKind;
330
381
  exports.isGoalKind = isGoalKind;
331
382
  exports.isRepositoryWorkKind = isRepositoryWorkKind;
@@ -70,8 +70,18 @@ interface RelevanceAssessment {
70
70
  * Tasks, Goals and fleet runs can attach to it (self-build slice D,
71
71
  * EW-766). Its data repository IS the code repository; see
72
72
  * `WORK_KIND_CAPABILITIES.repo`.
73
+ *
74
+ * `app` (chip label "App", APW-01 / README D1) is the second kind that wraps
75
+ * code the platform did not generate: it takes a repository URL and links it,
76
+ * forks it, or makes a private copy, then builds, runs and evolves that app.
77
+ * It is appended AFTER `repo` — nothing above it moves — and it is the only
78
+ * kind that is neither a generated site nor point-and-read: unlike `repo` it
79
+ * deploys, and unlike every generated kind its code lives in the Work
80
+ * Repository (`website` role) rather than in a data repository. Its chip is
81
+ * fail-CLOSED where every other kind's chip fails open (Resolution R-6); see
82
+ * `WORK_KIND_CAPABILITIES.app`.
73
83
  */
74
- declare const USER_SELECTABLE_WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo"];
84
+ declare const USER_SELECTABLE_WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "app"];
75
85
  type UserSelectableWorkKind = (typeof USER_SELECTABLE_WORK_KINDS)[number];
76
86
  /**
77
87
  * Every kind a persisted `work.kind` may hold.
@@ -86,7 +96,7 @@ type UserSelectableWorkKind = (typeof USER_SELECTABLE_WORK_KINDS)[number];
86
96
  * `company` it is minted by a dedicated flow (template activation), not
87
97
  * by the general create path, so it stays out of the chip catalog.
88
98
  */
89
- declare const WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "company", "campaign", "default"];
99
+ declare const WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "app", "company", "campaign", "default"];
90
100
  type WorkKind = (typeof WORK_KINDS)[number];
91
101
  /**
92
102
  * Coerce an arbitrary value into a known `WorkKind`.
@@ -119,6 +129,22 @@ declare function isUserSelectableWorkKind(value?: string | null): value is UserS
119
129
  * same loose input as `normalizeWorkKind` and never throws.
120
130
  */
121
131
  declare function isRepositoryWorkKind(value?: string | null): boolean;
132
+ /**
133
+ * True when `value` names the App kind (`app`, APW-01) — the kind whose Work
134
+ * Repository is an existing GitHub repository Ever Works links, forks or
135
+ * copies, and then builds, runs and evolves (README D1).
136
+ *
137
+ * Like `isRepositoryWorkKind` this is a KIND test rather than a capability
138
+ * test, and for the same reason: the content pipelines and every writer that
139
+ * would generate into the Work Repository are refused by kind, not by
140
+ * capability. `app` and `repo` are the two kinds that wrap code the platform
141
+ * did not generate — `repo` never writes to it, `app` is allowed to — so
142
+ * callers must never treat one predicate as the other.
143
+ *
144
+ * Accepts the same loose input as `normalizeWorkKind` (`' APP '` is `app`)
145
+ * and never throws.
146
+ */
147
+ declare function isAppWorkKind(value?: string | null): boolean;
122
148
 
123
149
  /**
124
150
  * Goal "kind" vocabulary — the single source of truth shared by the API,
@@ -283,6 +309,21 @@ interface WorkCapabilities {
283
309
  readonly deploy: boolean;
284
310
  /** The knowledge-base workbench. */
285
311
  readonly kb: boolean;
312
+ /**
313
+ * The Builds surface and the `build` capability (APW-05).
314
+ *
315
+ * On only for `app` (Resolution R-7): a Work whose Work Repository holds
316
+ * code the platform did not generate is the only kind with something to
317
+ * build. Every generated kind ships a template that is deployed as-is.
318
+ */
319
+ readonly builds: boolean;
320
+ /**
321
+ * The App env and App dependencies surfaces (APW-07).
322
+ *
323
+ * On only for `app` (Resolution R-7): a generated site has no
324
+ * environment of its own to configure and no dependencies to provision.
325
+ */
326
+ readonly appEnvironment: boolean;
286
327
  /** Ordered metric tiles rendered on the Overview tab. */
287
328
  readonly metrics: readonly WorkMetricId[];
288
329
  /**
@@ -313,4 +354,4 @@ declare function getWorkCapabilities(kind?: string | null): WorkCapabilities;
313
354
  /** Convenience predicate — the Items tab / routes are meaningful here. */
314
355
  declare function workKindHasItems(kind?: string | null): boolean;
315
356
 
316
- export { DEFAULT_GOAL_KIND, type DomainAnalysis, DomainType, GOAL_KINDS, type GoalKind, type RelevanceAssessment, USER_SELECTABLE_WORK_KINDS, type UserSelectableWorkKind, WORK_KINDS, WORK_KIND_CAPABILITIES, WORK_METRIC_DEFINITIONS, WORK_METRIC_IDS, type WebPageData, type WorkCapabilities, type WorkKind, type WorkMetricDefinition, type WorkMetricFormat, type WorkMetricId, type WorkMetricLabelKey, type WorkMetricSource, type WorkMetricState, type WorkMetricValue, getWorkCapabilities, getWorkMetricDefinition, isDeliveryGoalKind, isGoalKind, isRepositoryWorkKind, isUserSelectableWorkKind, normalizeGoalKind, normalizeWorkKind, workKindHasItems };
357
+ export { DEFAULT_GOAL_KIND, type DomainAnalysis, DomainType, GOAL_KINDS, type GoalKind, type RelevanceAssessment, USER_SELECTABLE_WORK_KINDS, type UserSelectableWorkKind, WORK_KINDS, WORK_KIND_CAPABILITIES, WORK_METRIC_DEFINITIONS, WORK_METRIC_IDS, type WebPageData, type WorkCapabilities, type WorkKind, type WorkMetricDefinition, type WorkMetricFormat, type WorkMetricId, type WorkMetricLabelKey, type WorkMetricSource, type WorkMetricState, type WorkMetricValue, getWorkCapabilities, getWorkMetricDefinition, isAppWorkKind, isDeliveryGoalKind, isGoalKind, isRepositoryWorkKind, isUserSelectableWorkKind, normalizeGoalKind, normalizeWorkKind, workKindHasItems };
@@ -70,8 +70,18 @@ interface RelevanceAssessment {
70
70
  * Tasks, Goals and fleet runs can attach to it (self-build slice D,
71
71
  * EW-766). Its data repository IS the code repository; see
72
72
  * `WORK_KIND_CAPABILITIES.repo`.
73
+ *
74
+ * `app` (chip label "App", APW-01 / README D1) is the second kind that wraps
75
+ * code the platform did not generate: it takes a repository URL and links it,
76
+ * forks it, or makes a private copy, then builds, runs and evolves that app.
77
+ * It is appended AFTER `repo` — nothing above it moves — and it is the only
78
+ * kind that is neither a generated site nor point-and-read: unlike `repo` it
79
+ * deploys, and unlike every generated kind its code lives in the Work
80
+ * Repository (`website` role) rather than in a data repository. Its chip is
81
+ * fail-CLOSED where every other kind's chip fails open (Resolution R-6); see
82
+ * `WORK_KIND_CAPABILITIES.app`.
73
83
  */
74
- declare const USER_SELECTABLE_WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo"];
84
+ declare const USER_SELECTABLE_WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "app"];
75
85
  type UserSelectableWorkKind = (typeof USER_SELECTABLE_WORK_KINDS)[number];
76
86
  /**
77
87
  * Every kind a persisted `work.kind` may hold.
@@ -86,7 +96,7 @@ type UserSelectableWorkKind = (typeof USER_SELECTABLE_WORK_KINDS)[number];
86
96
  * `company` it is minted by a dedicated flow (template activation), not
87
97
  * by the general create path, so it stays out of the chip catalog.
88
98
  */
89
- declare const WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "company", "campaign", "default"];
99
+ declare const WORK_KINDS: readonly ["website", "landing-page", "blog", "directory", "awesome-repo", "repo", "app", "company", "campaign", "default"];
90
100
  type WorkKind = (typeof WORK_KINDS)[number];
91
101
  /**
92
102
  * Coerce an arbitrary value into a known `WorkKind`.
@@ -119,6 +129,22 @@ declare function isUserSelectableWorkKind(value?: string | null): value is UserS
119
129
  * same loose input as `normalizeWorkKind` and never throws.
120
130
  */
121
131
  declare function isRepositoryWorkKind(value?: string | null): boolean;
132
+ /**
133
+ * True when `value` names the App kind (`app`, APW-01) — the kind whose Work
134
+ * Repository is an existing GitHub repository Ever Works links, forks or
135
+ * copies, and then builds, runs and evolves (README D1).
136
+ *
137
+ * Like `isRepositoryWorkKind` this is a KIND test rather than a capability
138
+ * test, and for the same reason: the content pipelines and every writer that
139
+ * would generate into the Work Repository are refused by kind, not by
140
+ * capability. `app` and `repo` are the two kinds that wrap code the platform
141
+ * did not generate — `repo` never writes to it, `app` is allowed to — so
142
+ * callers must never treat one predicate as the other.
143
+ *
144
+ * Accepts the same loose input as `normalizeWorkKind` (`' APP '` is `app`)
145
+ * and never throws.
146
+ */
147
+ declare function isAppWorkKind(value?: string | null): boolean;
122
148
 
123
149
  /**
124
150
  * Goal "kind" vocabulary — the single source of truth shared by the API,
@@ -283,6 +309,21 @@ interface WorkCapabilities {
283
309
  readonly deploy: boolean;
284
310
  /** The knowledge-base workbench. */
285
311
  readonly kb: boolean;
312
+ /**
313
+ * The Builds surface and the `build` capability (APW-05).
314
+ *
315
+ * On only for `app` (Resolution R-7): a Work whose Work Repository holds
316
+ * code the platform did not generate is the only kind with something to
317
+ * build. Every generated kind ships a template that is deployed as-is.
318
+ */
319
+ readonly builds: boolean;
320
+ /**
321
+ * The App env and App dependencies surfaces (APW-07).
322
+ *
323
+ * On only for `app` (Resolution R-7): a generated site has no
324
+ * environment of its own to configure and no dependencies to provision.
325
+ */
326
+ readonly appEnvironment: boolean;
286
327
  /** Ordered metric tiles rendered on the Overview tab. */
287
328
  readonly metrics: readonly WorkMetricId[];
288
329
  /**
@@ -313,4 +354,4 @@ declare function getWorkCapabilities(kind?: string | null): WorkCapabilities;
313
354
  /** Convenience predicate — the Items tab / routes are meaningful here. */
314
355
  declare function workKindHasItems(kind?: string | null): boolean;
315
356
 
316
- export { DEFAULT_GOAL_KIND, type DomainAnalysis, DomainType, GOAL_KINDS, type GoalKind, type RelevanceAssessment, USER_SELECTABLE_WORK_KINDS, type UserSelectableWorkKind, WORK_KINDS, WORK_KIND_CAPABILITIES, WORK_METRIC_DEFINITIONS, WORK_METRIC_IDS, type WebPageData, type WorkCapabilities, type WorkKind, type WorkMetricDefinition, type WorkMetricFormat, type WorkMetricId, type WorkMetricLabelKey, type WorkMetricSource, type WorkMetricState, type WorkMetricValue, getWorkCapabilities, getWorkMetricDefinition, isDeliveryGoalKind, isGoalKind, isRepositoryWorkKind, isUserSelectableWorkKind, normalizeGoalKind, normalizeWorkKind, workKindHasItems };
357
+ export { DEFAULT_GOAL_KIND, type DomainAnalysis, DomainType, GOAL_KINDS, type GoalKind, type RelevanceAssessment, USER_SELECTABLE_WORK_KINDS, type UserSelectableWorkKind, WORK_KINDS, WORK_KIND_CAPABILITIES, WORK_METRIC_DEFINITIONS, WORK_METRIC_IDS, type WebPageData, type WorkCapabilities, type WorkKind, type WorkMetricDefinition, type WorkMetricFormat, type WorkMetricId, type WorkMetricLabelKey, type WorkMetricSource, type WorkMetricState, type WorkMetricValue, getWorkCapabilities, getWorkMetricDefinition, isAppWorkKind, isDeliveryGoalKind, isGoalKind, isRepositoryWorkKind, isUserSelectableWorkKind, normalizeGoalKind, normalizeWorkKind, workKindHasItems };