note_slug: oo-principles-plugin-concept

entities:
  - name: OO Principles Plugin
    type: plugin
    facet: type/plugin
  - name: 99 Bottles of OOP
    type: reference-book
    facet: domain/oo-design
  - name: Shameless Green
    type: principle
    facet: convention/shameless-green
  - name: Flocking Rules
    type: principle
    facet: convention/flocking-rules
  - name: Replace Conditional with Polymorphism
    type: refactoring-technique
    facet: convention/polymorphism-refactoring
  - name: Single Responsibility Principle
    type: principle
    facet: convention/srp
  - name: Law of Demeter
    type: principle
    facet: convention/law-of-demeter
  - name: Dependency Injection
    type: principle
    facet: convention/dependency-injection
  - name: Open/Closed Principle
    type: principle
    facet: convention/open-closed
  - name: Process/Routing Layer
    type: architectural-component
    facet: type/architecture
  - name: Mechanic Layer
    type: architectural-component
    facet: type/architecture
  - name: Theory Layer
    type: architectural-component
    facet: type/architecture
  - name: PROCESS.md
    type: documentation-file
    facet: convention/process-routing
  - name: concept cards
    type: documentation-format
  - name: NotebookLM notebook
    type: knowledge-base
    facet: tool/notebooklm
  - name: Phase 1
    type: development-phase
  - name: Phase 2
    type: development-phase
  - name: Phase 3
    type: development-phase
  - name: 4-phase development lifecycle
    type: process-model
  - name: Approach 1: Process-First Entry Point
    type: architectural-approach
  - name: Approach 2: Situational Trigger Files
    type: architectural-approach
  - name: Approach 3: Phase-Bundled Context Packs
    type: architectural-approach
  - name: Approach 4: Annotated Process Graph
    type: architectural-approach
  - name: conventions/oo-principles/
    type: workspace-structure
    facet: project/hyperthrive
  - name: hyperthrive_dev
    type: project
    facet: project/hyperthrive
  - name: Codified Context paper
    type: research-reference
  - name: TDD
    type: principle
    facet: convention/tdd
  - name: QUICK_REFERENCE.md
    type: documentation-file
  - name: role bundles
    type: documentation-format
  - name: AI Coding Conventions Organization — External Research Synthesis
    type: reference-document
  - name: 99 Bottles OOP — Full Software Design Process Map
    type: reference-document
  - name: CLAUDE.md
    type: documentation-file
    facet: tool/claude-code

relationships:
  - source: OO Principles Plugin
    type: is designed to encode
    target: 4-phase development lifecycle
  - source: OO Principles Plugin
    type: models architecture on
    target: Process/Routing Layer
  - source: OO Principles Plugin
    type: models architecture on
    target: Mechanic Layer
  - source: OO Principles Plugin
    type: models architecture on
    target: Theory Layer
  - source: Mechanic Layer
    type: should contain recipes for
    target: Flocking Rules
  - source: Mechanic Layer
    type: should contain recipes for
    target: Replace Conditional with Polymorphism
  - source: Theory Layer
    type: contains explanatory material for
    target: concept cards
  - source: Process/Routing Layer
    type: references
    target: Mechanic Layer
  - source: Flocking Rules
    type: competes with
    target: Replace Conditional with Polymorphism
  - source: Dependency Injection
    type: should be checked before
    target: Law of Demeter
  - source: Law of Demeter
    type: should be checked before
    target: Single Responsibility Principle
  - source: Phase 2
    type: includes opportunistic refactoring guided by
    target: Law of Demeter
  - source: Phase 2
    type: includes opportunistic refactoring guided by
    target: Dependency Injection
  - source: Approach 1: Process-First Entry Point
    type: is recommended for
    target: OO Principles Plugin
  - source: NotebookLM notebook
    type: serves as knowledge base for
    target: OO Principles Plugin
  - source: conventions/oo-principles/
    type: is baseline for
    target: OO Principles Plugin
  - source: hyperthrive_dev
    type: is source context for
    target: OO Principles Plugin
  - source: OO Principles Plugin
    type: based on
    target: 99 Bottles of OOP
  - source: Process/Routing Layer
    type: encodes
    target: 4-phase development lifecycle
  - source: Phase 1
    type: applies
    target: Shameless Green
  - source: Phase 3
    type: requires checking
    target: Open/Closed Principle
