OSS-first docs

These docs teach the open system first: contracts, generated surfaces, runtimes, governance, and incremental adoption. Studio shows up as the operating layer on top, not as the source of truth.

base.onboarding.saveDraft

Save or update onboarding draft for active organization

  • Type: operation (command)
  • Version: 1.0.0
  • Tags: onboarding, draft
  • File: packages/libs/contracts-spec/src/onboarding-base.ts
  • Persist onboarding progress incrementally for resumption and safety

    field.key.label
    base.onboarding.saveDraft
    field.version.label
    1.0.0
    field.type.label
    operation (command)
    field.title.label
    base.onboarding.saveDraft
    field.description.label

    Save or update onboarding draft for active organization

  • Type: operation (command)
  • Version: 1.0.0
  • Tags: onboarding, draft
  • File: packages/libs/contracts-spec/src/onboarding-base.ts
  • Persist onboarding progress incrementally for resumption and safety

    field.tags.label
    onboarding,draft
    field.owners.label
    field.stability.label

    Save or update onboarding draft for active organization

    Goal

    Persist onboarding progress incrementally for resumption and safety

    Context

    Auto-saves every few seconds during onboarding; enables users to leave and resume

    Source Definition

    export const SaveOnboardingDraftBaseSpec = defineCommand({
      meta: {
        key: 'base.onboarding.saveDraft',
        version: '1.0.0',
        stability: StabilityEnum.Beta,
        owners: [OwnersEnum.PlatformSigil],
        tags: ['onboarding', 'draft'],
        description: 'Save or update onboarding draft for active organization',
        goal: 'Persist onboarding progress incrementally for resumption and safety',
        context:
          'Auto-saves every few seconds during onboarding; enables users to leave and resume',
      },
      io: {
        input: SaveOnboardingDraftInput,
        output: SaveOnboardingDraftOutput,
      },
      policy: {
        auth: 'user',
        escalate: null,
      },
      transport: {
        gql: { field: 'saveOnboardingDraft' },
        rest: { method: 'POST' },
      },
    });