contextcompass 2.15.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- contextcompass-2.15.0.dist-info/METADATA +673 -0
- contextcompass-2.15.0.dist-info/RECORD +452 -0
- contextcompass-2.15.0.dist-info/WHEEL +4 -0
- contextcompass-2.15.0.dist-info/entry_points.txt +2 -0
- contextcompass-2.15.0.dist-info/licenses/LICENSE +21 -0
- contextcompass_cli/__init__.py +74 -0
- contextcompass_cli/__main__.py +195 -0
- contextcompass_cli/_package/AGENTS.MD +310 -0
- contextcompass_cli/_package/CONTEXT_COMPACTION.md +110 -0
- contextcompass_cli/_package/MANIFEST.md +485 -0
- contextcompass_cli/_package/PROFILE_CLASS_CREATION_GUIDE.md +426 -0
- contextcompass_cli/_package/README.md +266 -0
- contextcompass_cli/_package/SKILLS.MD +144 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/AGENTS.MD +54 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/README.md +43 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/behavioral_guidelines/continuity_fact_checker_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/examples/continuity_fact_checker_task_flow.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/policies/continuity_fact_checker_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/policies/continuity_fact_checker_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/skills/continuity_fact_checker.md +37 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/skills/continuity_fact_checker_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/skills/continuity_fact_checker_deliverables.md +26 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/skills/continuity_fact_checker_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/continuity_fact_checker/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/AGENTS.MD +85 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/README.md +62 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/SKILLS.MD +74 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/behavioral_guidelines/design_engineer_workflow.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/behavioral_guidelines/design_validation_and_handoff.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/examples/adr_example.md +40 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/examples/design_task_flow.md +33 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/policies/decision_record_policy.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/policies/design_quality_policy.md +30 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/policies/design_review_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/policies/system_document_quality_rubric.md +236 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/adr_and_decision_hygiene.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/api_and_interface_design.md +36 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/architecture_contexts.md +40 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/architecture_patch_contracts.md +43 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/architecture_tradeoffs.md +33 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/code_description_patch_contracts.md +46 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/component_patch_contracts.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/data_modeling.md +34 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/decomposition_and_boundaries.md +42 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/design_engineer_execution.md +65 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/design_review_protocol.md +34 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/nonfunctional_requirements.md +34 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/patch_framework_design.md +79 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/requirements_to_architecture.md +39 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/src_architecture_instructions.md +347 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/src_components_instructions.md +405 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/system_design_method.md +45 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/tests_architecture_instructions.md +375 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/skills/tests_components_instructions.md +406 -0
- contextcompass_cli/_package/agent_onboarding/default/design_engineer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/AGENTS.MD +53 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/README.md +42 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/behavioral_guidelines/developmental_editor_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/examples/developmental_editor_task_flow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/policies/developmental_editor_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/policies/developmental_editor_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/skills/developmental_editor.md +36 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/skills/developmental_editor_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/skills/developmental_editor_deliverables.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/skills/developmental_editor_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/developmental_editor/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/AGENTS.MD +54 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/README.md +43 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/behavioral_guidelines/draft_writer_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/examples/draft_writer_task_flow.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/policies/draft_writer_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/policies/draft_writer_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/skills/draft_writer.md +37 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/skills/draft_writer_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/skills/draft_writer_deliverables.md +26 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/skills/draft_writer_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/draft_writer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/AGENTS.MD +493 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/README.md +53 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/SKILLS.MD +263 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/behavioral_guidelines/engineer_workflow.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/behavioral_guidelines/task_execution_and_validation.md +34 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/examples/artifact_workflow.md +104 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/examples/eng_task_flow.md +30 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/policies/ctx_autonomy_policy.md +34 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/policies/ctx_autonomy_rubric.md +161 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/policies/engineer_quality_policy.md +33 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/context_protocol.md +70 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/documentation_standards.md +120 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/engineer_execution.md +62 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/package_maintenance.md +195 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/patch_artifact_consumption.md +68 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/patch_framework_gating.md +72 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/src_graph_generation.md +341 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/src_graph_usage.md +161 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/staleness_protocol.md +49 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/system_document_build.md +360 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/system_orientation.md +83 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/skills/technical_expertise.md +48 -0
- contextcompass_cli/_package/agent_onboarding/default/engineer/workflows/README.md +9 -0
- contextcompass_cli/_package/agent_onboarding/default/general/AGENTS.MD +283 -0
- contextcompass_cli/_package/agent_onboarding/default/general/README.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/general/SKILLS.MD +92 -0
- contextcompass_cli/_package/agent_onboarding/default/general/WORKFLOWS.MD +23 -0
- contextcompass_cli/_package/agent_onboarding/default/general/behavioral_guidelines/README.md +12 -0
- contextcompass_cli/_package/agent_onboarding/default/general/behavioral_guidelines/agent_lifecycle_and_heartbeat.md +37 -0
- contextcompass_cli/_package/agent_onboarding/default/general/behavioral_guidelines/onboarding_summary.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/general/behavioral_guidelines/work_intake_and_execution.md +44 -0
- contextcompass_cli/_package/agent_onboarding/default/general/policies/policy_skills.md +174 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/active_documentation.md +86 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/active_pointerboard.md +81 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/agent_identity.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/agent_lifecycle.md +21 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/agent_stance.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/career_selection.md +83 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/compaction_requirements.md +147 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/configuration_standards.md +72 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/context_compaction.md +104 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/context_gold.md +31 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/context_management.md +79 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/context_window_budget.md +64 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/execution_contract.md +234 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/general.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/llm_full_usage.md +111 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/mailbox_protocol.md +85 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/memory_management.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/mrp_policy.md +40 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/package_upgrade.md +135 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/reactive_documentation.md +105 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/repo_topology.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/role_local_workflows.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/security_and_secrets.md +46 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/self_certification.md +49 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/ticket_closure_attention_sync.md +57 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/ticket_microcycle.md +44 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/ticketing.md +175 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/ticketing_skill_contract.md +52 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/unknowns_gate_reference.md +66 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/user_approved_certification.md +32 -0
- contextcompass_cli/_package/agent_onboarding/default/general/skills/workflow.md +289 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/README.md +9 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/cleanup_context_compass.md +205 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/role_creation.md +39 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/start_context_compass_work.md +102 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/sync_attention_board.md +91 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/turn_in_selected_tickets.md +95 -0
- contextcompass_cli/_package/agent_onboarding/default/general/workflows/workflow_creation.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/AGENTS.MD +53 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/README.md +42 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/behavioral_guidelines/line_copy_editor_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/examples/line_copy_editor_task_flow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/policies/line_copy_editor_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/policies/line_copy_editor_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/skills/line_copy_editor.md +36 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/skills/line_copy_editor_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/skills/line_copy_editor_deliverables.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/skills/line_copy_editor_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/line_copy_editor/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/new/AGENTS.MD +79 -0
- contextcompass_cli/_package/agent_onboarding/default/new/README.md +54 -0
- contextcompass_cli/_package/agent_onboarding/default/new/SKILLS.MD +35 -0
- contextcompass_cli/_package/agent_onboarding/default/new/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/new/behavioral_guidelines/user_onboarding_flow.md +52 -0
- contextcompass_cli/_package/agent_onboarding/default/new/policies/new_onboarding_policy.md +59 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/configuration_map_guide.md +83 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/first_time_profile_setup.md +60 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/new.md +54 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/onboarding_completion_and_next_step.md +54 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/profile_model_explained.md +120 -0
- contextcompass_cli/_package/agent_onboarding/default/new/skills/system_overview_for_user.md +51 -0
- contextcompass_cli/_package/agent_onboarding/default/new/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/AGENTS.MD +63 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/README.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/SKILLS.MD +62 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/behavioral_guidelines/incident_workflow.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/behavioral_guidelines/platform_engineer_workflow.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/examples/platform_task_flow.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/policies/operational_safety_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/policies/platform_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/policies/production_change_management_policy.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/ci_cd_and_release.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/deployment_and_environments.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/incident_response_and_runbooks.md +35 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/infrastructure_as_code.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/observability_and_monitoring.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/performance_capacity_cost.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/platform_engineer_execution.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/skills/platform_security_basics.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/platform_engineer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/AGENTS.MD +53 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/README.md +42 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/behavioral_guidelines/proofreader_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/examples/proofreader_task_flow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/policies/proofreader_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/policies/proofreader_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/skills/proofreader.md +36 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/skills/proofreader_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/skills/proofreader_deliverables.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/skills/proofreader_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/proofreader/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/AGENTS.MD +58 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/README.md +41 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/SKILLS.MD +61 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/behavioral_guidelines/qa_workflow.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/behavioral_guidelines/release_signoff_workflow.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/examples/qa_task_flow.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/policies/defect_severity_policy.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/policies/quality_gate_policy.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/policies/test_evidence_policy.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/bug_triage_and_repro.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/qa_engineer_execution.md +29 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/quality_metrics.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/regression_and_release_quality.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/test_automation_practices.md +30 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/test_case_design.md +27 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/test_data_and_environments.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/skills/test_strategy_and_planning.md +31 -0
- contextcompass_cli/_package/agent_onboarding/default/qa_engineer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/AGENTS.MD +55 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/README.md +44 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/behavioral_guidelines/researcher_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/examples/researcher_task_flow.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/policies/researcher_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/policies/researcher_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/skills/researcher.md +38 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/skills/researcher_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/skills/researcher_deliverables.md +27 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/skills/researcher_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/researcher/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/AGENTS.MD +55 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/README.md +43 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/SKILLS.MD +62 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/behavioral_guidelines/security_signoff_and_escalation.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/behavioral_guidelines/security_workflow.md +18 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/examples/security_review_flow.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/policies/risk_acceptance_policy.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/policies/secrets_and_keys_policy.md +19 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/policies/security_review_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/authn_authz_basics.md +24 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/dependency_and_supply_chain.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/incident_response_security.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/logging_audit_privacy.md +16 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/secure_architecture_review.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/secure_coding_review.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/security_engineer_execution.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/threat_modeling.md +25 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/skills/vulnerability_management.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/security_engineer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/AGENTS.MD +56 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/README.md +45 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/behavioral_guidelines/story_designer_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/examples/story_designer_task_flow.md +26 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/policies/story_designer_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/policies/story_designer_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/skills/story_designer.md +39 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/skills/story_designer_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/skills/story_designer_deliverables.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/skills/story_designer_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/story_designer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/AGENTS.MD +56 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/README.md +45 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/behavioral_guidelines/story_novel_artist_workflow.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/examples/story_novel_artist_task_flow.md +26 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/policies/story_novel_artist_handoff_policy.md +20 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/policies/story_novel_artist_quality_policy.md +22 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/skills/story_novel_artist.md +39 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/skills/story_novel_artist_advanced_context.md +17 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/skills/story_novel_artist_deliverables.md +28 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/skills/story_novel_artist_execution.md +23 -0
- contextcompass_cli/_package/agent_onboarding/default/story_novel_artist/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/AGENTS.MD +66 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/SKILLS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/WORKFLOWS.MD +15 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/behavioral_guidelines/data_engineer_behavior_overrides.md +6 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/policies/data_engineer_policy_overrides.md +6 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/profile_overrides.md +9 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/skills/data_engineer_skill_overrides.md +6 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/data_engineer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/AGENTS.MD +145 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/SKILLS.MD +37 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/WORKFLOWS.MD +17 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/behavioral_guidelines/synaptic_finishing_developer_behavior_overrides.md +12 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/examples/python/comment_finishing_examples.py +65 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/examples/python/docstring_finishing_examples.py +126 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/examples/python/pytest_component_finishing_examples.py +51 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/examples/python/pytest_integration_finishing_examples.py +59 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/examples/python/pytest_unit_finishing_examples.py +66 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/policies/synaptic_finishing_developer_policy_overrides.md +14 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/profile_overrides.md +17 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/documentation/comment_craft.md +51 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/documentation/docstring_craft.md +86 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/documentation/docstring_test_alignment.md +51 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/documentation/system_aware_docstrings.md +64 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/synaptic_finishing_developer_skill_overrides.md +11 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/component_tests.md +45 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/evidence_reporting.md +25 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/mocking.md +35 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/pytest_integration.md +32 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/pytest_unit.md +49 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/regression_tests.md +24 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/skills/testing/testing_overview.md +71 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/workflows/optimize_pytests_for_repo.md +272 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_finishing_developer/workflows/polish_repo_documentation.md +247 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/AGENTS.MD +386 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/README.md +31 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/SKILLS.MD +44 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/WORKFLOWS.MD +16 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/behavioral_guidelines/synaptic_behavior_overrides.md +17 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/anti_patterns.py +19 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/cleanup_patterns.py +22 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/docstrings.py +19 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/logging_patterns.py +11 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/protocols_and_abc.py +15 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/pytest_component_examples.py +15 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/pytest_integration_examples.py +17 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/examples/python/pytest_unit_examples.py +13 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/policies/synaptic_policy_overrides.md +22 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/profile_overrides.md +27 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/attribute_aliasing_skill_benchmark.py +35 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/banned_patterns.md +110 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/cleanup_and_disposal.md +79 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/comments.md +39 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/docstrings.md +90 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/error_model.md +28 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/hot_path_attribute_aliasing.md +52 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/init_and_ownership.md +35 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/interfaces.md +47 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/logging.md +37 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/module_scope.md +38 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/refactor_limits.md +44 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/python/typing.md +52 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/synaptic_skill_overrides.md +24 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/evidence_reporting.md +35 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/mocking.md +31 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/pytest_integration.md +36 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/pytest_unit.md +42 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/regression_tests.md +26 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/skills/testing/testing_overview.md +196 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/workflows/README.md +8 -0
- contextcompass_cli/_package/agent_onboarding/user_defined/synaptic_python_developer/workflows/synaptic_python_developer_onboarding.md +226 -0
- contextcompass_cli/_package/artifact_board.md +64 -0
- contextcompass_cli/_package/artifacts/IMPORTANT_CONSIDERATION.md +43 -0
- contextcompass_cli/_package/artifacts/README.md +41 -0
- contextcompass_cli/_package/attention_board.md +79 -0
- contextcompass_cli/_package/config/context_compass_config.yaml +101 -0
- contextcompass_cli/_package/context_management/README.md +21 -0
- contextcompass_cli/_package/context_management/artifacts/.gitkeep +1 -0
- contextcompass_cli/_package/context_management/context_artifact_template.md +42 -0
- contextcompass_cli/_package/context_management/context_board.md +27 -0
- contextcompass_cli/_package/examples/adr_example.md +29 -0
- contextcompass_cli/_package/examples/artifact_workflow.md +20 -0
- contextcompass_cli/_package/examples/continuity_fact_checker_task_flow.md +23 -0
- contextcompass_cli/_package/examples/design_task_flow.md +35 -0
- contextcompass_cli/_package/examples/developmental_editor_task_flow.md +22 -0
- contextcompass_cli/_package/examples/draft_writer_task_flow.md +23 -0
- contextcompass_cli/_package/examples/eng_task_flow.md +31 -0
- contextcompass_cli/_package/examples/example_architecture/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_architecture/src_architecture.md +136 -0
- contextcompass_cli/_package/examples/example_architecture/src_architecture_index.md +46 -0
- contextcompass_cli/_package/examples/example_architecture/tests_architecture.md +148 -0
- contextcompass_cli/_package/examples/example_architecture/tests_architecture_index.md +46 -0
- contextcompass_cli/_package/examples/example_completed/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_completed/2026-02-19_context_compass_release_overview_artifact.md +33 -0
- contextcompass_cli/_package/examples/example_components/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_components/src_components.md +169 -0
- contextcompass_cli/_package/examples/example_components/src_components_index.md +44 -0
- contextcompass_cli/_package/examples/example_components/tests_components.md +96 -0
- contextcompass_cli/_package/examples/example_components/tests_components_index.md +42 -0
- contextcompass_cli/_package/examples/example_epics/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_epics/2026-02-19_context_compass_release_readiness_example_pack_epic.md +130 -0
- contextcompass_cli/_package/examples/example_graph_details/README.md +131 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/__init__.py +4 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/core/interfaces.py +10 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/core/resource.py +15 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/pipeline/pipeline.py +20 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/pipeline/stage.py +11 -0
- contextcompass_cli/_package/examples/example_graph_details/src/example/storage/store.py +20 -0
- contextcompass_cli/_package/examples/example_graph_details/src_graph.md +192 -0
- contextcompass_cli/_package/examples/example_graph_details/src_graph_index.md +32 -0
- contextcompass_cli/_package/examples/example_stories/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_stories/2026-02-19_context_compass_release_readiness_examples_story.md +120 -0
- contextcompass_cli/_package/examples/example_tasks/.gitkeep +0 -0
- contextcompass_cli/_package/examples/example_tasks/2026-02-19_context_compass_release_readiness_pack_task.md +147 -0
- contextcompass_cli/_package/examples/line_copy_editor_task_flow.md +23 -0
- contextcompass_cli/_package/examples/platform_task_flow.md +26 -0
- contextcompass_cli/_package/examples/proofreader_task_flow.md +23 -0
- contextcompass_cli/_package/examples/qa_task_flow.md +26 -0
- contextcompass_cli/_package/examples/repo_overview.md +63 -0
- contextcompass_cli/_package/examples/researcher_task_flow.md +23 -0
- contextcompass_cli/_package/examples/security_review_flow.md +24 -0
- contextcompass_cli/_package/examples/story_designer_task_flow.md +23 -0
- contextcompass_cli/_package/examples/story_novel_artist_task_flow.md +22 -0
- contextcompass_cli/_package/mailbox_board.md +79 -0
- contextcompass_cli/_package/special_instructions/README.md +16 -0
- contextcompass_cli/_package/system_docs/.gitkeep +0 -0
- contextcompass_cli/_package/system_docs/patches/active/README.md +25 -0
- contextcompass_cli/_package/system_docs/patches/active/_template_patch_id/architecture_patch.md +53 -0
- contextcompass_cli/_package/system_docs/patches/active/_template_patch_id/code_description_patch_TEMPLATE_COMPONENT.md +39 -0
- contextcompass_cli/_package/system_docs/patches/active/_template_patch_id/component_patch_TEMPLATE_COMPONENT.md +48 -0
- contextcompass_cli/_package/system_docs/system_docs_read_first.md +107 -0
- contextcompass_cli/_package/templates/epic_template.md +149 -0
- contextcompass_cli/_package/templates/story_template.md +131 -0
- contextcompass_cli/_package/templates/task_template.md +124 -0
- contextcompass_cli/_package/templates/workflow_advanced_template.md +111 -0
- contextcompass_cli/_package/templates/workflow_simple_template.md +65 -0
- contextcompass_cli/_package/tickets/README.md +24 -0
- contextcompass_cli/_package/tickets/epics/README.md +68 -0
- contextcompass_cli/_package/tickets/epics/archive/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/epics/backlog/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/epics/completed/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/stories/README.md +68 -0
- contextcompass_cli/_package/tickets/stories/archive/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/stories/backlog/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/stories/completed/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/tasks/README.md +67 -0
- contextcompass_cli/_package/tickets/tasks/archive/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/tasks/backlog/.gitkeep +0 -0
- contextcompass_cli/_package/tickets/tasks/completed/.gitkeep +0 -0
- contextcompass_cli/_package/tools/build_llm_full.py +307 -0
- contextcompass_cli/_package/tools/cleanup_context_compass.py +488 -0
- contextcompass_cli/_package/tools/migrate_boards.py +218 -0
- contextcompass_cli/_package/tools/package_manifest.py +351 -0
- contextcompass_cli/_package/tools/system_documents/index_document.py +476 -0
- contextcompass_cli/_package/tools/system_documents/python/assemble_graph.py +387 -0
- contextcompass_cli/_package/tools/system_documents/python/extract_graph.py +626 -0
- contextcompass_cli/_package/tools/system_documents/python/graph_semantics_tickets.py +405 -0
- contextcompass_cli/_package/tools/system_documents/python/graph_walker.py +375 -0
- contextcompass_cli/_package/tools/system_documents/python/migrate_authored_graph.py +179 -0
- contextcompass_cli/_package/tools/update_context_compass.py +511 -0
- contextcompass_cli/_package/user_defined/README.md +49 -0
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
|
|
2
|
+
# src_graph_generation
|
|
3
|
+
|
|
4
|
+
Purpose
|
|
5
|
+
- Define how to BUILD and MAINTAIN the assembled source graph.
|
|
6
|
+
|
|
7
|
+
## The pipeline
|
|
8
|
+
|
|
9
|
+
Two stages, two scripts, both stdlib-only:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
tools/system_documents/python/extract_graph.py source tree -> per-file descriptors
|
|
13
|
+
tools/system_documents/python/assemble_graph.py descriptors -> src_graph.md + index
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
python context_compass/tools/system_documents/python/extract_graph.py \
|
|
18
|
+
--src src --out context_compass/system_docs/graph
|
|
19
|
+
|
|
20
|
+
python context_compass/tools/system_documents/python/assemble_graph.py \
|
|
21
|
+
--descriptors context_compass/system_docs/graph \
|
|
22
|
+
--out context_compass/system_docs
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
`--check` on either script reports without writing. Run it before assuming the
|
|
26
|
+
graph is current.
|
|
27
|
+
|
|
28
|
+
Three more scripts exist for cases the pipeline alone cannot serve:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
tools/system_documents/python/graph_walker.py state of the authored tier
|
|
32
|
+
tools/system_documents/python/graph_semantics_tickets.py turn unauthored areas into work
|
|
33
|
+
tools/system_documents/python/migrate_authored_graph.py carry a retired-format graph in
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Keeping the authored tier honest
|
|
37
|
+
|
|
38
|
+
The mechanical tier self-heals - re-run the extractor and classes, bases and line
|
|
39
|
+
numbers are right again. **The authored tier does not.** It is written once, and
|
|
40
|
+
without help nothing says which parts are still true. Left alone that produces a
|
|
41
|
+
graph full of confident descriptions of code that no longer works that way.
|
|
42
|
+
|
|
43
|
+
Four states, and the walk through them is the maintenance loop:
|
|
44
|
+
|
|
45
|
+
| state | meaning | what to do |
|
|
46
|
+
| --- | --- | --- |
|
|
47
|
+
| `UNSEMANTIC` | no authored fields | author it, by reading the code |
|
|
48
|
+
| `AUTHORED` | authored, source unchanged since | nothing |
|
|
49
|
+
| `SEMANTICS_STALE` | authored, **its source moved underneath it** | re-read, then accept |
|
|
50
|
+
| `RETIRED` | gone from source, prose retained | adjudicate: move it or drop it |
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
python context_compass/tools/system_documents/python/graph_walker.py \
|
|
54
|
+
--descriptors context_compass/system_docs/graph --src src --report
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Read-only. It aggregates by package rather than by node, because per-node output
|
|
58
|
+
on a real codebase is thousands of lines nobody reads, and a subsystem is the
|
|
59
|
+
unit an agent actually works in.
|
|
60
|
+
|
|
61
|
+
Staleness is tracked **per node**, not per file: a file-level hash would mark all
|
|
62
|
+
forty classes in a module stale because one changed, and a census that cries wolf
|
|
63
|
+
gets ignored.
|
|
64
|
+
|
|
65
|
+
Once you have RE-READ a stale node and confirmed its semantics still hold:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
python context_compass/tools/system_documents/python/graph_walker.py \
|
|
69
|
+
--descriptors <dir> --accept app.mod.Alpha --apply
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
That re-stamps; it changes no prose. **Accepting without reading is how a graph
|
|
73
|
+
becomes confidently wrong** - the stamp is meant to record that someone checked,
|
|
74
|
+
and it cannot tell the difference.
|
|
75
|
+
|
|
76
|
+
### Nothing deletes authored prose automatically
|
|
77
|
+
|
|
78
|
+
A node that disappears from source keeps its authored fields under
|
|
79
|
+
`nodes_retired` in the same descriptor, and is reported. Earlier this was a real
|
|
80
|
+
defect: the note said `ORPHANED - resolve by hand` while the same pass wrote the
|
|
81
|
+
prose out of the file, so the only copy was in git and only if you noticed.
|
|
82
|
+
|
|
83
|
+
The walker also reports **stranded descriptors** - ones whose source file is gone
|
|
84
|
+
entirely. The extractor walks source, so it never opens those and their nodes
|
|
85
|
+
count as live forever; only a pass starting from the descriptors can see it.
|
|
86
|
+
Pass `--src` to enable that check.
|
|
87
|
+
|
|
88
|
+
Possible cross-file moves are **suggested, never applied**. A same-label match is
|
|
89
|
+
evidence, not proof, and attaching someone's authored prose to the wrong class is
|
|
90
|
+
worse than leaving it retired where they can see it.
|
|
91
|
+
|
|
92
|
+
### Deleting for real: `--reconcile`
|
|
93
|
+
|
|
94
|
+
When a retirement is genuinely a deletion - the thing is gone and its meaning is
|
|
95
|
+
not coming back - clear it:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
python context_compass/tools/system_documents/python/graph_walker.py \
|
|
99
|
+
--descriptors <dir> --reconcile
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**This is the only sanctioned path for structural deletion, and the only verb in
|
|
103
|
+
the subsystem that destroys authored work.** It lists every node and its prose,
|
|
104
|
+
then asks. Without a terminal it refuses rather than assuming - a prompt that
|
|
105
|
+
silently self-answers in CI is not a prompt. `--yes` answers it deliberately.
|
|
106
|
+
|
|
107
|
+
Before running it, check `--report` for possible moves. If a retirement is really
|
|
108
|
+
a rename, copy the authored fields onto the new node first; afterwards the only
|
|
109
|
+
copy is in version control.
|
|
110
|
+
|
|
111
|
+
## Turning the backlog into work - ON DEMAND
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
python context_compass/tools/system_documents/python/graph_semantics_tickets.py \
|
|
115
|
+
--descriptors <dir> --tickets context_compass/tickets # dry run
|
|
116
|
+
... --create --yes # write them
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Off by default and prompted.** Nothing generates tickets as part of extraction
|
|
120
|
+
or assembly. A tool that writes into someone's board without being asked is doing
|
|
121
|
+
something hostile, so this is a separate command, a dry run unless you say
|
|
122
|
+
`--create`, and a question unless you say `--yes`.
|
|
123
|
+
|
|
124
|
+
**Aggregated at the package**, and that is a hard constraint rather than a
|
|
125
|
+
preference. Measured against a real 575-file, 1,188-node graph with 657 nodes
|
|
126
|
+
unauthored:
|
|
127
|
+
|
|
128
|
+
| granularity | stories | outcome |
|
|
129
|
+
| --- | --- | --- |
|
|
130
|
+
| per node | 657 | destroys the board |
|
|
131
|
+
| per file | 575 | destroys the board |
|
|
132
|
+
| per directory (default) | 146 | still too many |
|
|
133
|
+
| `--depth 4` | **36** | usable |
|
|
134
|
+
| `--min-nodes 5` | **46** | usable |
|
|
135
|
+
|
|
136
|
+
The attention board is a routing surface carrying about a dozen active rows. A
|
|
137
|
+
package is also the unit an agent actually works in - a subsystem at a time - so
|
|
138
|
+
it is the natural granularity as well as the survivable one.
|
|
139
|
+
|
|
140
|
+
**The default is the containing directory, and on a deep tree that is still too
|
|
141
|
+
many.** `--depth N` groups at a shallower level; `--min-nodes N` skips the
|
|
142
|
+
scraps. Once the count passes 50 the tool prints both levers with the counts
|
|
143
|
+
they would produce, rather than emitting 146 stories and letting you discover it
|
|
144
|
+
afterwards. Neither loses work - the nodes stay in the census either way, only
|
|
145
|
+
the packaging changes.
|
|
146
|
+
|
|
147
|
+
A design brief for this feature estimated ~33 stories from
|
|
148
|
+
`_package_candidates.json`. That file counts directories whose files share a
|
|
149
|
+
naming *suffix* - a different concept from the directory a file lives in - so the
|
|
150
|
+
real directory-level figure was 146. Worth knowing before you trust an estimate
|
|
151
|
+
from either source.
|
|
152
|
+
|
|
153
|
+
You get **one epic and one story per package with work**. Tasks are deliberately
|
|
154
|
+
not generated: task granularity is the working agent's judgement, and
|
|
155
|
+
pre-generating it presumes an approach to work nobody has started.
|
|
156
|
+
|
|
157
|
+
Re-running **updates** rather than duplicating - ticket ids derive from the
|
|
158
|
+
package path, and completed lanes are searched too. A package that gets fully
|
|
159
|
+
authored is reported `SATISFIED` so you can close its story. The loop closes in
|
|
160
|
+
both directions or it is just a different kind of noise.
|
|
161
|
+
|
|
162
|
+
Generated tickets are **drafts** and touch no board. Route them yourself: a
|
|
163
|
+
generated ticket claiming an active row is a row nobody agreed to take.
|
|
164
|
+
|
|
165
|
+
### What a generated story must not become
|
|
166
|
+
|
|
167
|
+
Every generated story states that semantics are authored **by reading the code**.
|
|
168
|
+
Take that literally. `owns_lifecycle_of`, `uses` and `borrows` are the same
|
|
169
|
+
syntax - `self._x = x` in all three - and the difference is design intent that
|
|
170
|
+
appears nowhere in the source text. A cleanup-contract heuristic was tested
|
|
171
|
+
against a labelled corpus and discriminated at 21% versus 21%: no signal at all.
|
|
172
|
+
|
|
173
|
+
Filling a generated ticket with plausible prose inferred from class names is
|
|
174
|
+
worse than leaving those nodes unsemantic, because `UNSEMANTIC` is honest and
|
|
175
|
+
invented semantics read as verified.
|
|
176
|
+
|
|
177
|
+
The layout is `tools/system_documents/<language>/`. The descriptor contract is
|
|
178
|
+
language-neutral; only the extractor is Python-specific. A sibling directory can
|
|
179
|
+
implement the same contract for another language.
|
|
180
|
+
|
|
181
|
+
## Why per-file descriptors
|
|
182
|
+
|
|
183
|
+
The unit is the source file, because that is the unit that changes.
|
|
184
|
+
|
|
185
|
+
Earlier drafts sharded a single generated blob by namespace and bin-packed it to
|
|
186
|
+
a line budget. That produced unstable boundaries - adding one node reflowed the
|
|
187
|
+
packer and silently moved unrelated nodes between shards - and meaningless
|
|
188
|
+
names. Anchoring to the source path fixes both: a file is a file, its descriptor
|
|
189
|
+
mirrors its path, and touching one file dirties exactly one descriptor.
|
|
190
|
+
|
|
191
|
+
It also makes the size problem disappear. Source files are already
|
|
192
|
+
human-sized, so descriptors are too: median 43 lines, p90 83, none over 400,
|
|
193
|
+
with no budget parameter anywhere.
|
|
194
|
+
|
|
195
|
+
## The three tiers, and who owns them
|
|
196
|
+
|
|
197
|
+
This is the contract that makes regeneration safe.
|
|
198
|
+
|
|
199
|
+
| tier | owner | fields |
|
|
200
|
+
|---|---|---|
|
|
201
|
+
| mechanical | the script | `id`, `label`, `kind`, `file`, `lineno`, `bases`, `markers`, `public_methods`, `shape`, `source_sha256`, `specializes`/`implements` edges |
|
|
202
|
+
| curation | authored | `include` |
|
|
203
|
+
| semantics | authored | `role`, `responsibilities`, `owns_state`, `phases`, `edges_authored` |
|
|
204
|
+
|
|
205
|
+
**On re-run the script refreshes tier 1 and never touches tiers 2 and 3.** That
|
|
206
|
+
is verified behaviour, not an intention - inject an authored field, re-run, and
|
|
207
|
+
it survives.
|
|
208
|
+
|
|
209
|
+
## The authored schema
|
|
210
|
+
|
|
211
|
+
These are the fields you may populate. Nothing generates them and nothing
|
|
212
|
+
validates them, so this list is the contract.
|
|
213
|
+
|
|
214
|
+
### Node fields
|
|
215
|
+
|
|
216
|
+
| field | shape | meaning |
|
|
217
|
+
|---|---|---|
|
|
218
|
+
| `include` | bool | belongs in the composed graph. Absent means "not triaged", which is not the same as `false`. |
|
|
219
|
+
| `role` | prose, one line | what this object is for. |
|
|
220
|
+
| `responsibilities` | list of short phrases | what it is on the hook for. |
|
|
221
|
+
| `owns_state` | list of attribute names | fields whose lifecycle it controls. |
|
|
222
|
+
| `phases` | list | when in its life it matters: `init`, `validation`, `runtime`, `refresh`, `cleanup`. Open set - add one if your system needs it, but reuse these first. |
|
|
223
|
+
|
|
224
|
+
### Edge fields, under `edges_authored`
|
|
225
|
+
|
|
226
|
+
| field | shape | rendered |
|
|
227
|
+
|---|---|---|
|
|
228
|
+
| `from` | node id | yes, table |
|
|
229
|
+
| `to` | node id | yes, table |
|
|
230
|
+
| `relation` | `owns_lifecycle_of`, `uses`, `borrows`, `holds`, `owns`, `used_by` | yes, table |
|
|
231
|
+
| `cardinality` | `one_to_one`, `one_to_many`, `many_to_one` | yes, table |
|
|
232
|
+
| `phase` | list, same vocabulary as node `phases` | yes, table |
|
|
233
|
+
| `why` | prose, one or two sentences | yes, beneath the table |
|
|
234
|
+
| `strength` | `hard`, `borrowed`, `soft` | **no - see below** |
|
|
235
|
+
|
|
236
|
+
**`strength` is stored and deliberately not rendered.** Measured against a
|
|
237
|
+
hand-authored graph of 997 edges it is ~97% recoverable from `relation`:
|
|
238
|
+
`hard` is the ownership relations, `borrowed` is the reference relations. A
|
|
239
|
+
column that restates the column beside it costs space and adds nothing. Keep
|
|
240
|
+
populating it if your tooling consumes it; the document will not show it.
|
|
241
|
+
|
|
242
|
+
**`why` is rendered because it is the justification for a claim the extractor
|
|
243
|
+
says it cannot make.** An authored `owns_lifecycle_of` asserts ownership where
|
|
244
|
+
the syntax tree shows only a reference. Recording why, and showing it, is the
|
|
245
|
+
difference between evidence and assertion. It sits beneath the table so the
|
|
246
|
+
table stays scannable.
|
|
247
|
+
|
|
248
|
+
The prose does not cost you a whole-document read, because there is no such
|
|
249
|
+
thing here: you read the index and slice one section. A few extra lines inside
|
|
250
|
+
the one section you asked for is not a cost worth optimising against.
|
|
251
|
+
|
|
252
|
+
## What the script cannot do, and why
|
|
253
|
+
|
|
254
|
+
Do not expect the extractor to produce a finished graph. Measured against a
|
|
255
|
+
hand-authored graph of 535 nodes and 997 edges:
|
|
256
|
+
|
|
257
|
+
- node identity: **94%** recovered (matching on file + label)
|
|
258
|
+
- `specializes` edges: **94%** recovered with fully-qualified ids on both ends
|
|
259
|
+
- edge target resolution via imports: **99%**
|
|
260
|
+
- **68% of all edges are not derivable at all**
|
|
261
|
+
|
|
262
|
+
`owns_lifecycle_of` (205 edges), `uses` (323), and `borrows` (119) are
|
|
263
|
+
syntactically identical. Every one is "A holds a reference to B". Whether A owns
|
|
264
|
+
B's lifecycle, merely uses it, or borrows it without owning is a design fact
|
|
265
|
+
that does not appear anywhere in the source text. The same is true of every
|
|
266
|
+
`role`, `why`, `cardinality`, and `strength`.
|
|
267
|
+
|
|
268
|
+
Curation is equally underivable. The best syntactic significance rule tested
|
|
269
|
+
would have suppressed 419 nodes while wrongly dropping 63 that the reference
|
|
270
|
+
graph deliberately includes. So the script emits inventory and records `shape`
|
|
271
|
+
signals; the `include` field is authored. Emitting a node the author can reject
|
|
272
|
+
is recoverable. Silently withholding one they wanted is not.
|
|
273
|
+
|
|
274
|
+
## Maintenance loop
|
|
275
|
+
|
|
276
|
+
When you change a source file:
|
|
277
|
+
|
|
278
|
+
1. Re-run `extract_graph.py`. Only that file's descriptor changes.
|
|
279
|
+
2. Read the drift report. It names nodes that are `NEW`, `ORPHANED` (gone from
|
|
280
|
+
source but still carrying authored semantics), or `UNSEMANTIC`.
|
|
281
|
+
3. Author the semantics for anything new. Resolve orphans by hand - the script
|
|
282
|
+
will not delete authored prose on your behalf.
|
|
283
|
+
4. Re-run `assemble_graph.py` to rebuild the document and index together.
|
|
284
|
+
|
|
285
|
+
Never regenerate one without the other. They are only guaranteed consistent
|
|
286
|
+
because a single pass emits both.
|
|
287
|
+
|
|
288
|
+
## The index is a byproduct
|
|
289
|
+
|
|
290
|
+
`assemble_graph.py` knows each section's line range because it emitted those
|
|
291
|
+
lines. It does not re-parse the document to find headings.
|
|
292
|
+
|
|
293
|
+
That removes a whole class of drift. An index generated by re-walking a
|
|
294
|
+
document can disagree with the document, and the only defence is a hash. Here
|
|
295
|
+
they cannot disagree. The hash is still recorded, but it guards a different
|
|
296
|
+
failure: someone hand-editing the assembled file.
|
|
297
|
+
|
|
298
|
+
Every range is verified against its own header on every run. An off-by-one here
|
|
299
|
+
silently corrupts every downstream read, so it is checked rather than trusted.
|
|
300
|
+
|
|
301
|
+
## What this replaced
|
|
302
|
+
|
|
303
|
+
The two generated JSON graph files - a readable graph of 776 KB and a raw graph
|
|
304
|
+
of 768 KB - are retired. Together they were 1,544 KB that had to be read whole
|
|
305
|
+
or not at all, because a JSON object has no addressable interior.
|
|
306
|
+
|
|
307
|
+
The replacement is 972 KB of Markdown plus a 62 KB index, and a typical query
|
|
308
|
+
reads a 20-40 line slice.
|
|
309
|
+
|
|
310
|
+
**If you arrive holding a graph in the retired format, do not run the two-command
|
|
311
|
+
sequence and hope.** Only `specializes` and `implements` are mechanical, so a
|
|
312
|
+
naive re-extraction marks every node `UNSEMANTIC` and drops every authored edge.
|
|
313
|
+
Measured on a mature graph that was 84% of its edges. The rule generalises: the
|
|
314
|
+
better your existing graph, the more the naive path destroys, because a mature
|
|
315
|
+
graph is edge-richer than a young one. Carry the authored tier across by node id
|
|
316
|
+
first, then by `(file, label)`, before you assemble anything.
|
|
317
|
+
|
|
318
|
+
## Anti-patterns
|
|
319
|
+
|
|
320
|
+
- Hand-editing `src_graph.md` or `src_graph_index.md`. Edit descriptors, reassemble.
|
|
321
|
+
- Regenerating the document without the index, or the reverse.
|
|
322
|
+
- Deleting a descriptor whose node still carries authored semantics.
|
|
323
|
+
- Filtering descriptor files by filename prefix. An earlier version of the
|
|
324
|
+
assembler skipped anything starting with `_` to avoid manifests, and silently
|
|
325
|
+
swallowed 14 real files including `__init__.py` and every dunder module. A
|
|
326
|
+
prefix is a naming convention, not a type.
|
|
327
|
+
- Promoting an edge candidate to an edge without reading the code.
|
|
328
|
+
- **Writing `context_compass/...` into a descriptor's authored prose.** The
|
|
329
|
+
generated document is clean today - it cites the source tree constantly and
|
|
330
|
+
names this package nowhere - and that is only true because nothing has typed a
|
|
331
|
+
tool path into a `role`, `responsibilities`, or `why` field. Those fields flow
|
|
332
|
+
straight through the assembler into `src_graph.md`, which ships with the
|
|
333
|
+
codebase to readers who do not have Context Compass. Cite the source; if a
|
|
334
|
+
reader needs the regeneration command, they are in this skill already.
|
|
335
|
+
- Absolute paths in a descriptor. Repo-relative, or the document is correct on
|
|
336
|
+
one machine.
|
|
337
|
+
|
|
338
|
+
References
|
|
339
|
+
- `agent_onboarding/default/engineer/skills/src_graph_usage.md`
|
|
340
|
+
- `agent_onboarding/default/engineer/skills/staleness_protocol.md`
|
|
341
|
+
- `agent_onboarding/default/engineer/skills/context_protocol.md`
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
|
|
2
|
+
# src_graph_usage
|
|
3
|
+
|
|
4
|
+
Purpose
|
|
5
|
+
- Define how to READ the assembled source graph without loading all of it.
|
|
6
|
+
|
|
7
|
+
## What the graph is
|
|
8
|
+
|
|
9
|
+
Two files under `system_docs/`:
|
|
10
|
+
|
|
11
|
+
- `src_graph.md` - one section per source file, each delimited by an HTML
|
|
12
|
+
comment naming that file.
|
|
13
|
+
- `src_graph_index.md` - the exact line range of every section, plus a
|
|
14
|
+
staleness proof.
|
|
15
|
+
|
|
16
|
+
Both are generated. Never hand-edit either one; see
|
|
17
|
+
`agent_onboarding/default/engineer/skills/src_graph_generation.md`.
|
|
18
|
+
|
|
19
|
+
## The read order (non-negotiable)
|
|
20
|
+
|
|
21
|
+
1. Read `src_graph_index.md`. It is small - about 3% of the document's lines,
|
|
22
|
+
6% of its bytes.
|
|
23
|
+
2. **Verify it is current** (next section).
|
|
24
|
+
3. Find the row for the source file you care about.
|
|
25
|
+
4. Read only that line range out of `src_graph.md`.
|
|
26
|
+
|
|
27
|
+
Do not read `src_graph.md` in full. On the reference codebase it is 20,261
|
|
28
|
+
lines against a 602-line index; a single file's section is typically 20-40
|
|
29
|
+
lines. Reading the whole document to answer a question about one file costs
|
|
30
|
+
roughly 500x what the answer needs.
|
|
31
|
+
|
|
32
|
+
Do not scan the document for `BEGIN FILE` markers instead of using the index.
|
|
33
|
+
The index is authoritative, it was emitted by the same pass that wrote the
|
|
34
|
+
document, and scanning defeats the entire point of having ranges.
|
|
35
|
+
|
|
36
|
+
## Verify before you slice
|
|
37
|
+
|
|
38
|
+
The index records what the document was when it was generated:
|
|
39
|
+
|
|
40
|
+
| field | how to verify |
|
|
41
|
+
|---|---|
|
|
42
|
+
| `line_count` | recount the document's lines |
|
|
43
|
+
| `content_sha256` | rehash the document's exact bytes |
|
|
44
|
+
| `line_ending` | split on THAT terminator, always `lf` here |
|
|
45
|
+
|
|
46
|
+
On any mismatch the document was hand-edited or the pipeline was interrupted.
|
|
47
|
+
**STOP. Do not slice.** Regenerate, or read the file directly and say which you
|
|
48
|
+
did. A range from an unverified index is a guess wearing a line number.
|
|
49
|
+
|
|
50
|
+
```python
|
|
51
|
+
import hashlib, pathlib, re
|
|
52
|
+
|
|
53
|
+
doc = pathlib.Path("context_compass/system_docs/src_graph.md")
|
|
54
|
+
idx = pathlib.Path("context_compass/system_docs/src_graph_index.md").read_text(encoding="utf-8")
|
|
55
|
+
|
|
56
|
+
raw = doc.read_bytes()
|
|
57
|
+
claimed_lines = int(re.search(r"line_count \| (\d+)", idx).group(1))
|
|
58
|
+
claimed_hash = re.search(r"content_sha256 \| `([0-9a-f]{64})`", idx).group(1)
|
|
59
|
+
|
|
60
|
+
lines = raw.decode("utf-8").split("\n")
|
|
61
|
+
if lines and lines[-1] == "":
|
|
62
|
+
lines.pop()
|
|
63
|
+
|
|
64
|
+
if len(lines) != claimed_lines or hashlib.sha256(raw).hexdigest() != claimed_hash:
|
|
65
|
+
raise SystemExit("INDEX STALE - refusing to slice; regenerate the graph")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Selecting what to read
|
|
69
|
+
|
|
70
|
+
Each index row is `| lines | source | nodes | edges |`. The `edges` count covers
|
|
71
|
+
both derived and authored edges, matching what that section's `Edges out` table
|
|
72
|
+
renders. Edge candidates are not counted - they are guesses, not edges.
|
|
73
|
+
|
|
74
|
+
- **Working one file**: match `source` against its path, read that range.
|
|
75
|
+
- **Working a subsystem**: match `source` against the directory prefix and read
|
|
76
|
+
each matching range. Rows are ordered by source path, so a subsystem's files
|
|
77
|
+
are contiguous.
|
|
78
|
+
- **Following a relationship**: a section's `Edges out` table gives fully
|
|
79
|
+
qualified target ids. Map the id back to a path and look that row up.
|
|
80
|
+
- **Finding what points AT something**: the per-file sections carry outbound
|
|
81
|
+
edges only. Inbound edges are not answerable from one section - you must
|
|
82
|
+
either scan the index-selected sections you care about, or accept that
|
|
83
|
+
reverse lookup is the one query this layout does not make cheap.
|
|
84
|
+
|
|
85
|
+
## What each section contains
|
|
86
|
+
|
|
87
|
+
- `source_sha256` of the source file at generation time. If you are reasoning
|
|
88
|
+
about current code, check it against the file on disk.
|
|
89
|
+
- **Nodes**: id, kind (`module`, `class`, `interface`, `abstract`, `enum`,
|
|
90
|
+
`record`), definition line, bases, markers, public methods, and the authored
|
|
91
|
+
fields (`role`, `responsibilities`, `owns_state`, `phases`) when present.
|
|
92
|
+
- **Edges out**: one table, six columns - `from`, `relation`, `to`,
|
|
93
|
+
`cardinality`, `phase`, `origin`. Derived edges (`specializes`, `implements`)
|
|
94
|
+
carry `-` in the two authored columns, because those are design facts the
|
|
95
|
+
extractor cannot produce. A row of dashes is not missing data; it is the graph
|
|
96
|
+
telling you nobody has authored that relationship's semantics yet.
|
|
97
|
+
- **Why lines**: beneath the table, one per authored edge that carries a `why`.
|
|
98
|
+
This is the justification for a claim the syntax tree cannot support - an
|
|
99
|
+
authored `owns_lifecycle_of` asserts ownership where the AST shows only a
|
|
100
|
+
reference. Read it before relying on the edge.
|
|
101
|
+
- **Edge candidates**: AST instantiation guesses. **Unconfirmed.** These
|
|
102
|
+
over-generate roughly 8x against a hand-authored graph. Treat them as leads,
|
|
103
|
+
never as evidence.
|
|
104
|
+
- **Published aliases**: module-level `Alias = Class` bindings, which are the
|
|
105
|
+
names consumers actually import.
|
|
106
|
+
|
|
107
|
+
## Trust boundaries
|
|
108
|
+
|
|
109
|
+
Read every section with this in mind:
|
|
110
|
+
|
|
111
|
+
- Node identity, `bases`, and `specializes` are **mechanical** - derived from
|
|
112
|
+
the syntax tree, measured at 94-98% agreement with a hand-authored graph.
|
|
113
|
+
- `role`, `responsibilities`, `owns_state`, `phases`, and any edge marked
|
|
114
|
+
`authored` are **authored** by an agent or human who read the code.
|
|
115
|
+
- A node marked **UNSEMANTIC** has scaffold only. Its structure is trustworthy;
|
|
116
|
+
its meaning has not been established. Do not infer purpose from a name.
|
|
117
|
+
- Edge candidates are **guesses**.
|
|
118
|
+
|
|
119
|
+
**Authored does not mean current.** The mechanical tier is rebuilt on every
|
|
120
|
+
extraction and is as fresh as the last run. Authored prose is written once and
|
|
121
|
+
stays exactly as written while the code underneath it moves. A node can carry a
|
|
122
|
+
confident, well-written `role` describing behaviour the class no longer has.
|
|
123
|
+
|
|
124
|
+
Two states exist to tell you which is which, and neither appears in the document
|
|
125
|
+
itself - ask the walker:
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
python context_compass/tools/system_documents/python/graph_walker.py \
|
|
129
|
+
--descriptors <dir> --src src --report
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
| state | what it means for a reader |
|
|
133
|
+
| --- | --- |
|
|
134
|
+
| `AUTHORED` | the source has not changed since the prose was written |
|
|
135
|
+
| `SEMANTICS_STALE` | **the source moved underneath it**; treat the prose as a lead, not a fact |
|
|
136
|
+
| `RETIRED` | the node is gone from source; its prose is kept for adjudication |
|
|
137
|
+
|
|
138
|
+
If a claim matters and the node is stale, **read the code**. Full loop:
|
|
139
|
+
`agent_onboarding/default/engineer/skills/src_graph_generation.md`.
|
|
140
|
+
|
|
141
|
+
Cite what you read with `path:start_line-end_line` against `src_graph.md`, the
|
|
142
|
+
same evidence convention used everywhere else in this repository.
|
|
143
|
+
|
|
144
|
+
## Anti-patterns
|
|
145
|
+
|
|
146
|
+
- Reading `src_graph.md` in full when the index would answer the question.
|
|
147
|
+
- Slicing without verifying `line_count` and `content_sha256` first.
|
|
148
|
+
- Treating an edge candidate as a real relationship.
|
|
149
|
+
- Treating an UNSEMANTIC node's name as a description of its purpose.
|
|
150
|
+
- Quoting a `source_sha256` as proof the code is current without comparing it
|
|
151
|
+
to the file on disk.
|
|
152
|
+
- Relying on authored prose for a decision without checking whether the node is
|
|
153
|
+
`SEMANTICS_STALE`. Well-written prose about code that has since changed reads
|
|
154
|
+
exactly like well-written prose about code that has not.
|
|
155
|
+
- Filling in a node's semantics from its name because a generated ticket asked
|
|
156
|
+
you to. `UNSEMANTIC` is honest; invented semantics read as verified.
|
|
157
|
+
|
|
158
|
+
References
|
|
159
|
+
- `agent_onboarding/default/engineer/skills/src_graph_generation.md`
|
|
160
|
+
- `agent_onboarding/default/engineer/skills/context_protocol.md`
|
|
161
|
+
- `agent_onboarding/default/general/skills/configuration_standards.md`
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
# staleness_protocol
|
|
4
|
+
|
|
5
|
+
Purpose
|
|
6
|
+
- Define required actions for stale documentation or ticket context.
|
|
7
|
+
|
|
8
|
+
Required flow
|
|
9
|
+
- Resolve stale or missing documentation/tickets before feature work.
|
|
10
|
+
|
|
11
|
+
States and required actions
|
|
12
|
+
- missing: create the missing doc or ticket immediately.
|
|
13
|
+
- stale: refresh the doc to match current code or intent.
|
|
14
|
+
- needs_review: confirm architecture and update notes if needed.
|
|
15
|
+
- fresh: no action.
|
|
16
|
+
- blocked: record a blocker in the relevant ticket.
|
|
17
|
+
|
|
18
|
+
Noise control
|
|
19
|
+
- Update docs only when state or semantic content changes.
|
|
20
|
+
- Avoid churn or rewording without new information.
|
|
21
|
+
|
|
22
|
+
Enforcement rule
|
|
23
|
+
- Do not handwave around stale docs. When boundaries, invariants, or documented
|
|
24
|
+
source wiring change, bring the canonical `system_docs/` files current.
|
|
25
|
+
- **AUTHORED documents you edit directly:** `src_architecture.md`,
|
|
26
|
+
`src_components.md`, `tests_architecture.md`, `tests_components.md`. Regenerate
|
|
27
|
+
each one's `*_index.md` in the same pass.
|
|
28
|
+
- **GENERATED documents you must NOT edit:** `src_graph.md` and
|
|
29
|
+
`src_graph_index.md`. Edit the per-file descriptors and reassemble; a hand-edit
|
|
30
|
+
is overwritten by the next run and, in the meantime, breaks the index hash so
|
|
31
|
+
every slice is refused. See
|
|
32
|
+
`agent_onboarding/default/engineer/skills/src_graph_generation.md`.
|
|
33
|
+
- The distinction is not cosmetic. "Update `src_graph.md`" is an instruction that
|
|
34
|
+
cannot be carried out correctly, and an agent that follows it literally
|
|
35
|
+
corrupts the staleness proof the whole slicing protocol depends on.
|
|
36
|
+
|
|
37
|
+
Example transitions
|
|
38
|
+
- missing -> fresh after doc creation.
|
|
39
|
+
- stale -> fresh after refresh.
|
|
40
|
+
- fresh -> needs_review after a significant refactor.
|
|
41
|
+
|
|
42
|
+
References
|
|
43
|
+
- `system_docs/src_architecture.md`
|
|
44
|
+
- `system_docs/src_components.md`
|
|
45
|
+
- `system_docs/src_graph.md`
|
|
46
|
+
- `system_docs/tests_architecture.md`
|
|
47
|
+
- `system_docs/tests_components.md`
|
|
48
|
+
|
|
49
|
+
|