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.

learningJourney.crmOnboarding.recordEvent

Record an event to advance CRM onboarding progress.

  • Type: operation (command)
  • Version: 1.0.0
  • Stability: experimental
  • Owners: examples.learning-journey.crm-onboarding
  • Tags: learning, crm, onboarding
  • field.key.label
    learningJourney.crmOnboarding.recordEvent
    field.version.label
    1.0.0
    field.type.label
    operation (command)
    field.title.label
    learningJourney.crmOnboarding.recordEvent
    field.description.label

    Record an event to advance CRM onboarding progress.

  • Type: operation (command)
  • Version: 1.0.0
  • Stability: experimental
  • Owners: examples.learning-journey.crm-onboarding
  • Tags: learning, crm, onboarding
  • field.tags.label
    learning,crm,onboarding
    field.owners.label
    examples.learning-journey.crm-onboarding
    field.stability.label
    experimental

    Record an event to advance CRM onboarding progress.

    Goal

    Advance steps via domain events in demo/sandbox contexts.

    Context

    Called by handlers or demo scripts to emit step completion events.

    Source Definition

    import { defineCommand, defineQuery } from '@lssm-tech/lib.contracts-spec';
    import { defineSchemaModel, ScalarTypeEnum } from '@lssm-tech/lib.schema';
    import { JourneyTrackModel } from '@lssm-tech/module.learning-journey/contracts/journey';
    import { crmFirstWinTrack } from '../track';
    
    export const RecordCrmOnboardingEvent = defineCommand({
    	meta: {
    		key: 'learningJourney.crmOnboarding.recordEvent',
    		version: '1.0.0',
    		stability: 'experimental',
    		owners: ['examples.learning-journey.crm-onboarding'],
    		tags: ['learning', 'crm', 'onboarding'],
    		description: 'Record an event to advance CRM onboarding progress.',
    		goal: 'Advance steps via domain events in demo/sandbox contexts.',
    		context:
    			'Called by handlers or demo scripts to emit step completion events.',
    	},
    	io: {
    		input: RecordDemoEventInput,
    		output: SuccessModel,
    	},
    	policy: { auth: 'user' },
    });