feat: implement comprehensive type safety system with BrainyTypes API

Major enhancements for type safety and developer experience:

- Add BrainyTypes static API for type management and AI-powered suggestions
- Implement strict type validation for all 31 NounType categories
- Remove dangerous generic add() method that bypassed type safety
- Add intelligent type inference with confidence scoring
- Provide helpful error messages with typo suggestions using Levenshtein distance
- Update all internal code, examples, and documentation to use typed methods
- Enhance CLI with new type management commands (types, suggest, validate)

Breaking changes:
- Remove deprecated add() method - use addNoun() with explicit type parameter
- All addNoun() calls now require explicit type as second parameter

This release significantly improves type safety across the entire system while
maintaining backward compatibility for properly typed method calls.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
David Snelling 2025-09-01 09:37:36 -07:00
parent d7d2d749b6
commit 6c62bc4e9d
40 changed files with 1704 additions and 497 deletions

View file

@ -255,7 +255,7 @@ export function getFieldPatterns(entityType: 'noun' | 'verb', specificType?: str
/**
* Priority fields for different entity types (for AI analysis)
* Used by the IntelligentTypeMatcher and neural processing
* Used by the BrainyTypes and neural processing
*/
export const TYPE_PRIORITY_FIELDS: Record<string, string[]> = {
[NounType.Person]: [

View file

@ -2,7 +2,7 @@
* Universal Display Augmentation - Intelligent Computation Engine
*
* Leverages existing Brainy AI infrastructure for intelligent field computation:
* - IntelligentTypeMatcher for semantic type detection
* - BrainyTypes for semantic type detection
* - Neural Import patterns for field analysis
* - JSON processing utilities for field extraction
* - Existing NounType/VerbType taxonomy (31+40 types)
@ -15,7 +15,7 @@ import type {
DisplayConfig
} from './types.js'
import type { VectorDocument, GraphVerb } from '../../coreTypes.js'
import { IntelligentTypeMatcher, getTypeMatcher } from '../typeMatching/intelligentTypeMatcher.js'
import { BrainyTypes, getBrainyTypes } from '../typeMatching/brainyTypes.js'
import { getNounIcon, getVerbIcon } from './iconMappings.js'
import {
getFieldPatterns,
@ -31,7 +31,7 @@ import { NounType, VerbType } from '../../types/graphTypes.js'
* Coordinates AI-powered analysis with fallback heuristics
*/
export class IntelligentComputationEngine {
private typeMatcher: IntelligentTypeMatcher | null = null
private typeMatcher: BrainyTypes | null = null
private config: DisplayConfig
private initialized = false
@ -47,7 +47,7 @@ export class IntelligentComputationEngine {
try {
// 🧠 LEVERAGE YOUR EXISTING AI INFRASTRUCTURE
this.typeMatcher = await getTypeMatcher()
this.typeMatcher = await getBrainyTypes()
if (this.typeMatcher) {
console.log('🎨 Display computation engine initialized with AI intelligence')
} else {
@ -118,7 +118,7 @@ export class IntelligentComputationEngine {
}
/**
* AI-powered computation using your existing IntelligentTypeMatcher
* AI-powered computation using your existing BrainyTypes
* @param data Entity data/metadata
* @param entityType Type of entity (noun/verb)
* @param options Additional options

View file

@ -114,7 +114,7 @@ export interface FieldComputationContext {
}
/**
* Type matching result from IntelligentTypeMatcher
* Type matching result from BrainyTypes
*/
export interface TypeMatchResult {
type: string