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.

docs_search.form

Search form for documentation discovery.

  • Type: form (form)
  • Version: 1.0.0
  • Tags: search
  • File: packages/libs/contracts-spec/src/docs/forms/docsSearch.form.ts
  • ```typescript

    import { ScalarTypeEnum, SchemaModel } from '@lssm-tech/lib.schema';

    field.key.label
    docs_search.form
    field.version.label
    1.0.0
    field.type.label
    form (form)
    field.title.label
    docs_search.form
    field.description.label

    Search form for documentation discovery.

  • Type: form (form)
  • Version: 1.0.0
  • Tags: search
  • File: packages/libs/contracts-spec/src/docs/forms/docsSearch.form.ts
  • ```typescript

    import { ScalarTypeEnum, SchemaModel } from '@lssm-tech/lib.schema';

    field.tags.label
    search
    field.owners.label
    field.stability.label

    Search form for documentation discovery.

    Source Definition

    import { ScalarTypeEnum, SchemaModel } from '@lssm-tech/lib.schema';
    import { defineFormSpec } from '../../forms/forms';
    import {
    	DOCS_DOMAIN,
    	DOCS_OWNERS,
    	DOCS_STABILITY,
    	DOCS_TAGS,
    } from '../constants';
    import { docId } from '../registry';
    
    export const DocsSearchForm = defineFormSpec({
    	meta: {
    		key: 'docs_search.form',
    		title: 'Docs Search',
    		version: '1.0.0',
    		description: 'Search form for documentation discovery.',
    		domain: DOCS_DOMAIN,
    		owners: DOCS_OWNERS,
    		tags: [...DOCS_TAGS, 'search'],
    		stability: DOCS_STABILITY,
    		docId: [docId('docs.tech.docs-search')],
    	},
    	model: DocsSearchFormModel,
    	fields: [
    		{
    			kind: 'text',
    			name: 'query',
    			labelI18n: 'Search',
    			placeholderI18n: 'Search docs',
    		},
    		{
    			kind: 'select',
    			name: 'visibility',
    			labelI18n: 'Visibility',
    			options: {
    				kind: 'static',
    				options: [
    					{ labelI18n: 'Public', value: 'public' },
    					{ labelI18n: 'Internal', value: 'internal' },
    					{ labelI18n: 'Mixed', value: 'mixed' },
    				],
    			},
    		},
    		{
    			kind: 'select',
    			name: 'kind',
    			labelI18n: 'Kind',
    			options: {
    				kind: 'static',
    				options: [
    					{ labelI18n: 'Goal', value: 'goal' },
    					{ labelI18n: 'How', value: 'how' },
    					{ labelI18n: 'Usage', value: 'usage' },
    					{ labelI18n: 'Reference', value: 'reference' },
    					{ labelI18n: 'FAQ', value: 'faq' },
    					{ labelI18n: 'Changelog', value: 'changelog' },
    				],
    			},
    		},
    	],
    	actions: [
    		{
    			key: 'search',
    			labelI18n: 'Search',
    		},
    	],
    	policy: {
    		flags: [],
    		pii: [],
    	},
    });