# Template Improvement Directive Schema (v1.2) # Defines the structure for an object that captures a specific proposed improvement # to a template, schema, AI skill, or overall process within the framework. # Order in a list of directives implies sequence of proposal/logging. directive_object_schema: directive_id: string # Unique identifier for the directive (e.g., "TID_[ProjectCode]_[SeqNum]"). AI to generate based on context. target_template_id: string # Base filename of the primary template or definition file targeted for improvement. Can also be "OverallFramework" or a specific process area. target_section_or_field: string (optional) # Specific section, step number, or schema path within the target_template_id. issue_description: string # Clear, concise description of the problem, inefficiency, ambiguity, or missing feature identified. proposed_change_type: string # Enum: "ModifyFieldSchema", "AddFieldSchema", "RemoveFieldSchema", "UpdateInstruction", "AddNewInstructionStep", "RemoveInstructionStep", "ReorderInstructionSteps", "DefineNewSchema", "DefineNewSkill", "ModifySkillDefinition", "UpdateGuidanceAndInternalProtocol", "AddNewFeatureOrGuidance", "UpdateProceduralLogic", "ConsolidateTemplates", "ClarifyDocumentation", "Other". proposed_change_details: string # Detailed description of the proposed change. This should be specific enough for an AI or human to understand what needs to be implemented. May include example text or pseudo-code. rationale: string # Justification for the proposed change. Why is this an improvement? What problem does it solve? How does it align with core principles (e.g., AI autonomy, ease of use, robustness)? source_insight_refs: list of strings (optional) # IDs of `insight_object`s from `project_state.logs.insights`, or references to specific user feedback, issue IDs, or events (e.g., "INS005", "UserFeedback_InteractionXYZ", "ITPR_Event_ABC") that led to this directive. priority: string (optional) # Enum: "Critical", "High", "Medium", "Low". (User or AI assigned based on impact). estimated_effort_to_implement: string (optional) # Enum: "Small", "Medium", "Large". (User or AI assigned). status: string # Enum: "Proposed", "Under Review", "ApprovedForImplementation", "Implemented", "Deferred", "Rejected". resolution_notes: string (optional) # Notes on why it was implemented, deferred, or rejected. If implemented, may reference commit ID or version where change occurred. user_provided_date_context: string (optional) # For user to manually note a relevant date if desired; AI does not populate or process this as a date.