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.

notifications

Multi-channel notification delivery with preference management

  • Type: feature
  • Version: 1.0.0
  • Stability: stable
  • Owners: @platform.notifications
  • Tags: notifications, email, push, in-app
  • field.key.label
    notifications
    field.version.label
    1.0.0
    field.type.label
    feature
    field.title.label
    notifications
    field.description.label

    Multi-channel notification delivery with preference management

  • Type: feature
  • Version: 1.0.0
  • Stability: stable
  • Owners: @platform.notifications
  • Tags: notifications, email, push, in-app
  • field.tags.label
    notifications,email,push,in-app
    field.owners.label
    @platform.notifications
    field.stability.label
    stable

    Multi-channel notification delivery with preference management

    Operations (7)

    `notifications.send` (v1.0.0)

    `notifications.markRead` (v1.0.0)

    `notifications.markAllRead` (v1.0.0)

    `notifications.delete` (v1.0.0)

    `notifications.list` (v1.0.0)

    `notifications.preferences.update` (v1.0.0)

    `notifications.preferences.get` (v1.0.0)

    Source Definition

    /**
     * Notifications Feature Module Specification
     *
     * Defines the feature module for notification management.
     */
    import { defineFeature } from '@lssm-tech/lib.contracts-spec';
    
    /**
     * Notifications feature module that bundles notification sending,
     * listing, marking as read, and preference management capabilities.
     */
    export const NotificationsFeature = defineFeature({
    	meta: {
    		key: 'notifications',
    		title: 'Notifications',
    		description:
    			'Multi-channel notification delivery with preference management',
    		domain: 'platform',
    		version: '1.0.0',
    		owners: ['@platform.notifications'],
    		tags: ['notifications', 'email', 'push', 'in-app'],
    		stability: 'stable',
    	},
    
    	// All contract operations included in this feature
    	operations: [
    		{ key: 'notifications.send', version: '1.0.0' },
    		{ key: 'notifications.markRead', version: '1.0.0' },
    		{ key: 'notifications.markAllRead', version: '1.0.0' },
    		{ key: 'notifications.delete', version: '1.0.0' },
    		{ key: 'notifications.list', version: '1.0.0' },
    		{ key: 'notifications.preferences.update', version: '1.0.0' },
    		{ key: 'notifications.preferences.get', version: '1.0.0' },
    	],
    
    	// No events for this feature - it consumes events to send notifications
    	events: [],
    
    	// No presentations for this module feature
    	presentations: [],
    	opToPresentation: [],
    	presentationsTargets: [],
    
    	// Capability definitions
    	capabilities: {
    		provides: [{ key: 'notifications', version: '1.0.0' }],
    		requires: [{ key: 'identity', version: '1.0.0' }],
    	},
    });