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.

crm-pipeline

CRM and sales pipeline management with deals, contacts, and companies

  • Type: feature
  • Version: 1.0.0
  • Stability: experimental
  • Owners: @crm-team
  • Tags: crm, sales, pipeline, deals
  • File: packages/examples/crm-pipeline/src/crm-pipeline.feature.ts
  • field.key.label
    crm-pipeline
    field.version.label
    1.0.0
    field.type.label
    feature
    field.title.label
    crm-pipeline
    field.description.label

    CRM and sales pipeline management with deals, contacts, and companies

  • Type: feature
  • Version: 1.0.0
  • Stability: experimental
  • Owners: @crm-team
  • Tags: crm, sales, pipeline, deals
  • File: packages/examples/crm-pipeline/src/crm-pipeline.feature.ts
  • field.tags.label
    crm,sales,pipeline,deals
    field.owners.label
    @crm-team
    field.stability.label
    experimental

    CRM and sales pipeline management with deals, contacts, and companies

    Operations (5)

    `crm.deal.create` (v1.0.0)

    `crm.deal.move` (v1.0.0)

    `crm.deal.win` (v1.0.0)

    `crm.deal.lose` (v1.0.0)

    `crm.deal.list` (v1.0.0)

    Events (6)

    `deal.created` (v1.0.0)

    `deal.moved` (v1.0.0)

    `deal.won` (v1.0.0)

    `deal.lost` (v1.0.0)

    `contact.created` (v1.0.0)

    `task.completed` (v1.0.0)

    Presentations (6)

    `crm.dashboard` (v1.0.0)

    `crm.pipeline.kanban` (v1.0.0)

    `crm.deal.viewList` (v1.0.0)

    `crm.deal.detail` (v1.0.0)

    `crm.deal.card` (v1.0.0)

    `crm.pipeline.metrics` (v1.0.0)

    Source Definition

    /**
     * CRM Pipeline Feature Module Specification
     *
     * Defines the feature module for CRM and sales pipeline capabilities.
     */
    import { defineFeature } from '@lssm-tech/lib.contracts-spec';
    
    /**
     * CRM Pipeline feature module that bundles deal management,
     * pipeline operations, and contact management into an installable feature.
     */
    export const CrmPipelineFeature = defineFeature({
    	meta: {
    		key: 'crm-pipeline',
    		title: 'CRM Pipeline',
    		description:
    			'CRM and sales pipeline management with deals, contacts, and companies',
    		domain: 'crm',
    		owners: ['@crm-team'],
    		tags: ['crm', 'sales', 'pipeline', 'deals'],
    		stability: 'experimental',
    		version: '1.0.0',
    	},
    
    	// All contract operations included in this feature
    	operations: [
    		// Deal operations
    		{ key: 'crm.deal.create', version: '1.0.0' },
    		{ key: 'crm.deal.move', version: '1.0.0' },
    		{ key: 'crm.deal.win', version: '1.0.0' },
    		{ key: 'crm.deal.lose', version: '1.0.0' },
    		{ key: 'crm.deal.list', version: '1.0.0' },
    	],
    
    	// Events emitted by this feature
    	events: [
    		// Deal events
    		{ key: 'deal.created', version: '1.0.0' },
    		{ key: 'deal.moved', version: '1.0.0' },
    		{ key: 'deal.won', version: '1.0.0' },
    		{ key: 'deal.lost', version: '1.0.0' },
    
    		// Contact events
    		{ key: 'contact.created', version: '1.0.0' },
    
    		// Task events
    		{ key: 'task.completed', version: '1.0.0' },
    	],
    
    	// Presentations associated with this feature
    	presentations: [
    		{ key: 'crm.dashboard', version: '1.0.0' },
    		{ key: 'crm.pipeline.kanban', version: '1.0.0' },
    		{ key: 'crm.deal.viewList', version: '1.0.0' },
    		{ key: 'crm.deal.detail', version: '1.0.0' },
    		{ key: 'crm.deal.card', version: '1.0.0' },
    		{ key: 'crm.pipeline.metrics', version: '1.0.0' },
    	],
    
    	// Link operations to their primary presentations
    	opToPresentation: [
    		{
    			op: { key: 'crm.deal.list', version: '1.0.0' },
    			pres: { key: 'crm.pipeline.kanban', version: '1.0.0' },
    		},
    		{
    			op: { key: 'crm.deal.move', version: '1.0.0' },
    			pres: { key: 'crm.pipeline.kanban', version: '1.0.0' },
    		},
    	],
    
    	// Target requirements for multi-surface rendering
    	presentationsTargets: [
    		{ key: 'crm.dashboard', version: '1.0.0', targets: ['react', 'markdown'] },
    		{
    			key: 'crm.pipeline.kanban',
    			version: '1.0.0',
    			targets: ['react', 'markdown'],
    		},
    		{
    			key: 'crm.deal.viewList',
    			version: '1.0.0',
    			targets: ['react', 'markdown', 'application/json'],
    		},
    		{
    			key: 'crm.pipeline.metrics',
    			version: '1.0.0',
    			targets: ['react', 'markdown'],
    		},
    	],
    
    	// Capability requirements
    	capabilities: {
    		requires: [
    			{ key: 'identity', version: '1.0.0' },
    			{ key: 'audit-trail', version: '1.0.0' },
    			{ key: 'notifications', version: '1.0.0' },
    		],
    	},
    
    	telemetry: [{ key: 'crm-pipeline.telemetry', version: '1.0.0' }],
    
    	docs: [
    		'docs.examples.crm-pipeline.goal',
    		'docs.examples.crm-pipeline.usage',
    		'docs.examples.crm-pipeline.reference',
    		'docs.examples.crm-pipeline.constraints',
    	],
    });