Skip to content

Update YAML schema documentation to reflect actual capabilities #350

Description

@milliondreams

Summary

Documentation: Update the YAML schema documentation and JSON schema to accurately reflect the test harness's actual capabilities rather than the incomplete YAML parsing exposure.

Background

The current YAML schema documentation was created based on YAML examples, but investigation revealed that many "documented" features either:

  1. Are fully implemented but not exposed through YAML parsing (67% of features)
  2. Need minor wiring (17% of features)
  3. Actually need implementation (17% of features)

The schema should reflect the roadmap and actual capabilities. See analysis: cursor_workspace/implemented-vs-missing-analysis.md

Required Updates

1. Schema Documentation (cursor_workspace/yaml-test-spec-schema.md)

Mark Implementation Status:

Update Feature Descriptions:

  • Add implementation status indicators
  • Reference GitHub issues for missing features
  • Provide realistic timelines
  • Include workaround suggestions

2. JSON Schema (cursor_workspace/yaml-test-spec.schema.json)

Reflect Current Reality:

  • Mark unimplemented properties with warnings
  • Add implementation status annotations
  • Provide clear error messages for unsupported features
  • Reference issue numbers for missing functionality

Schema Categories:

{
  "properties": {
    "field_validations": {
      "properties": {
        "contains": {
          "type": "string",
          "description": "✅ IMPLEMENTED: Available after #347",
          "x-implementation-status": "ready"
        },
        "subscription_expected": {
          "type": "boolean", 
          "description": "❌ NOT IMPLEMENTED: Requires #349",
          "x-implementation-status": "missing"
        }
      }
    }
  }
}

3. Updated Feature Matrix

Create comprehensive status table:

Feature YAML Property Status Issue ETA
String validation contains ✅ Ready #347 Immediate
Performance testing max_execution_time_ms ✅ Ready #347 Immediate
Script validation script_config 🟡 Partial #348 Medium
Subscription testing subscription_expected ❌ Missing #349 Later

4. Migration Guide

Add migration instructions:

  • How to use current limited functionality
  • What to expect after each issue is resolved
  • Backward compatibility guarantees
  • Feature deprecation timeline

Files to Update

Documentation Files:

  • cursor_workspace/yaml-test-spec-schema.md - Add implementation status
  • cursor_workspace/yaml-test-spec.schema.json - Mark unsupported features
  • cursor_workspace/README.md - Update capability summary
  • cursor_workspace/missing-features-analysis.md - Add resolution tracking

Schema Validation:

  • cursor_workspace/validate-example.js - Add implementation warnings
  • cursor_workspace/package.json - Update for new validation features

Implementation Tasks

Phase 1: Status Annotation

  • Add implementation status to all schema properties
  • Mark features with GitHub issue references
  • Add realistic capability descriptions
  • Update examples with working features only

Phase 2: JSON Schema Enhancement

  • Add x-implementation-status annotations
  • Provide helpful error messages for unimplemented features
  • Add issue references in descriptions
  • Create validation warnings for missing features

Phase 3: Documentation Restructure

  • Create "Current Capabilities" section
  • Add "Roadmap" section with issue timeline
  • Update examples to use only working features
  • Add migration guide for each capability level

Phase 4: Validation Enhancement

  • Update validator to warn about unimplemented features
  • Add "--strict" mode for current capabilities only
  • Provide helpful suggestions for unsupported features
  • Add "--future" mode for roadmap validation

Example Updates

Schema Property Documentation:

#### Field Validation Properties

##### `contains` (✅ Available after #347)
**Type**: string  
**Status**: Fully implemented, needs YAML exposure  
**Usage**: Validates that field content contains specified text  
**ETA**: Immediate (once #347 is resolved)

##### `subscription_expected` (❌ Not implemented - #349)
**Type**: boolean  
**Status**: Requires full implementation  
**Usage**: Will validate subscription lifecycle when implemented  
**ETA**: Future milestone (requires subscription infrastructure)

Validation Warning Example:

// In validate-example.js
if (yamlContent.includes('subscription_expected')) {
  console.warn('⚠️  WARNING: subscription_expected is not yet implemented');
  console.warn('    Track progress: https://github.com/rustic-ai/codeprism/issues/349');
  console.warn('    Current workaround: Test subscription manually');
}

Testing

Validation Testing:

  • Run validator against existing YAML examples
  • Verify warnings appear for unimplemented features
  • Test that implemented features validate correctly
  • Ensure helpful error messages for unsupported properties

Documentation Testing:

  • Verify all examples use only supported features
  • Test that migration guide is accurate
  • Validate issue references are correct
  • Ensure timeline information is realistic

Success Criteria

  • Schema accurately reflects actual capabilities
  • Clear implementation status for all features
  • Helpful warnings for unsupported functionality
  • Migration guide for each capability level
  • Realistic timeline expectations
  • GitHub issue integration for tracking

Impact

Prevents user confusion by providing accurate capability documentation. Enables users to understand what's available now vs. what's planned, and how to track progress on missing features.

Dependencies

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions