Skip to content

Latest commit

 

History

History
185 lines (132 loc) · 6.85 KB

HISTORY.md

File metadata and controls

185 lines (132 loc) · 6.85 KB

Django Ergo - Development History

This document tracks the major milestones and evolution of the Django Ergo project.

Development Timeline

Small, medium, large and xlarge tiers (October 2026)

  • The built-in routing tiers are now small (Haiku 5.5, GPT-6 Luna), medium (Sonnet 5.5, GPT-6.1 Sol), large (Opus 5.5, GPT-6 Sol) and the new xlarge (Fable 5.1, GPT-6 Astra), each falling back to the pair below it. Effort is no longer tied to the tier: everything runs at medium unless a chat picks another level with the effort slider in its thread options (POST /api/sessions/<id>/effort). low and high stay as aliases of small and large, so existing auto/low chats and providers.yaml keys keep working. Haiku 5.5 pricing is added.

Routing & capacity limits that stay current (October 2026)

  • Subscription limits were only recorded as a side effect of a Claude or Codex CLI turn, and a partial event refreshed the row's timestamp while leaving old windows in place, so idle providers showed stale 7-day values and no Claude 5-hour window. bots/usage_sync.py now runs omp usage --redact --json every 5 minutes (and on Refresh limits), stores each window with its own observed_at, and records the sync's health in UsageSync.
  • The Routing page is redesigned as Routing & capacity: sync health, a card per account with 5-hour and 7-day windows, rate ticks showing the elapsed share of each window, and explicit Unavailable/Stale states.

Provider-driven routing (October 2026)

  • Routing uses only reported subscription windows, preserving unknown utilization, reset times and status; Claude's Fable weekly allowance only gates Fable models.
  • The Routing page separates pay-per-token providers from subscriptions and shows usage freshness instead of inventing 5-hour/weekly counters.
  • Built-in low/medium/high tiers use configured current-catalog subscription models, with Fable/Astra high-capability defaults and medium-model fallbacks. providers.yaml supports custom names and independent per-tier overrides.

Initial Setup (December 2024)

  • 8283455 - Initial commit
  • dd0b5a8 - Cursor Dockerfile development environment setup
  • addf06c - PostgreSQL configuration and test infrastructure
  • 0aea1b9 - Cursor AI development standards and rules

Foundation Phase (December 2024 - January 2025)

  • b5589a2 - Added old-code-inspiration/ with prototype models and workflow engine
  • 4ad3c4d - Created comprehensive planning documentation:
    • Architecture analysis of prototype
    • 24-week development roadmap
    • Detailed TODO lists and questions
    • Product specifications for example apps

Architecture & Planning (January 2025)

  • 1a6d8f7 - Refined product documentation for garden management and personal goals apps
  • 25cab62 - Finalized v1.0 architectural decisions:
    • MCP integration strategy (reusable tools for Django apps)
    • Pluggable embedding system with OpenAI default
    • Workflow engine with context serialization
    • App-level permissions model

Core Development (January 2025)

  • b463f22 - Implemented core Django Ergo models and functionality:
    • Migrated models from prototype (Workflow, Knowledgebase, Article, UserChat, ChatMessage)
    • Built tool system with 6 knowledge base tools
    • Created workflow engine with state persistence
    • Enhanced Django admin interface
    • Sample data management command

Infrastructure & Testing (January 2025)

  • caf4fa6 - Improved startup scripts with logging and debugging
  • 940eee3 - Implemented dual-tier OpenAI testing with fixtures:
    • Test mode for development without API costs
    • Production mode with real OpenAI integration
    • Comprehensive test coverage for tool system

Current Status (v0.1.0-dev)

✅ Completed

  • Core Models: All prototype models migrated and enhanced
  • Tool System: 6 knowledge base tools with registry and validation
  • Workflow Engine: Basic processing with state persistence and approval system
  • Admin Interface: Full Django admin integration
  • Development Environment: Complete Cursor setup with all dependencies
  • Testing Infrastructure: Comprehensive test suite with fixtures

🚧 In Progress

  • PostgreSQL + pgvector: Production database setup
  • OpenAI Integration: Real API integration (currently in test mode)
  • Public APIs: REST/GraphQL API design and implementation

🎯 Next Milestones

  • v0.2.0: Production-ready embeddings and search
  • v0.3.0: Public APIs and authentication
  • v1.0.0: Complete MCP integration and example applications

Architecture Evolution

Phase 1: Prototype Analysis (Complete)

Analyzed existing prototype to understand:

  • Multi-tenant knowledge base architecture
  • Hybrid search with PostgreSQL + pgvector
  • Extensible tool system with function decorators
  • Workflow engine with OpenAI integration

Phase 2: Foundation Building (Complete)

Migrated and enhanced core components:

  • Django models with proper migrations
  • Tool registry with automatic discovery
  • Admin interface with custom views
  • Development and testing infrastructure

Phase 3: Production Features (Current)

Building towards production readiness:

  • Real embedding generation and vector search
  • OpenAI API integration with proper error handling
  • Public APIs for external access
  • Performance optimization and caching

Key Decisions Made

  1. MCP Strategy: Focus on reusable tools for Django apps rather than monolithic platform
  2. Embedding System: Pluggable providers with OpenAI default and custom embedding support
  3. Workflows: Python-based with OpenAI context serialization for pause/resume
  4. Permissions: App-level rather than framework-level for maximum flexibility
  5. Knowledge Management: Flatfile export/import for agentic processing

Documentation Evolution

Initial Documentation Burst

Created comprehensive planning documents:

  • Architecture analysis and decisions
  • 24-week roadmap with phases
  • Detailed TODO lists (299 items)
  • 60+ questions for stakeholder input
  • Product specifications for example apps

Documentation Consolidation (Current)

Streamlining documentation for maintainability:

  • Consolidated redundant summary documents
  • Cleaned up resolved questions
  • Updated history with actual project evolution
  • Focused on actively used planning documents

Contributors

  • leeward bound - Project lead and primary developer
  • Cursor Background Agents - Architecture, planning, and implementation assistance

Version History

v0.0.1 (Initial)

  • Empty Django project structure

v0.1.0-dev (Current)

  • Complete core model implementation
  • Tool system with 6 knowledge base tools
  • Workflow engine with state persistence
  • Django admin integration
  • Comprehensive test suite
  • Development environment setup

This history is maintained as a living document and updated with each major milestone.