Files
StarPunk/docs/projectplan/ROADMAP.md
Phil Skentelbery e589f5bd6c docs: Fix ADR numbering conflicts and create comprehensive documentation indices
This commit resolves all documentation issues identified in the comprehensive review:

CRITICAL FIXES:
- Renumbered duplicate ADRs to eliminate conflicts:
  * ADR-022-migration-race-condition-fix → ADR-037
  * ADR-022-syndication-formats → ADR-038
  * ADR-023-microformats2-compliance → ADR-040
  * ADR-027-versioning-strategy-for-authorization-removal → ADR-042
  * ADR-030-CORRECTED-indieauth-endpoint-discovery → ADR-043
  * ADR-031-endpoint-discovery-implementation → ADR-044

- Updated all cross-references to renumbered ADRs in:
  * docs/projectplan/ROADMAP.md
  * docs/reports/v1.0.0-rc.5-migration-race-condition-implementation.md
  * docs/reports/2025-11-24-endpoint-discovery-analysis.md
  * docs/decisions/ADR-043-CORRECTED-indieauth-endpoint-discovery.md
  * docs/decisions/ADR-044-endpoint-discovery-implementation.md

- Updated README.md version from 1.0.0 to 1.1.0
- Tracked ADR-021-indieauth-provider-strategy.md in git

DOCUMENTATION IMPROVEMENTS:
- Created comprehensive INDEX.md files for all docs/ subdirectories:
  * docs/architecture/INDEX.md (28 documents indexed)
  * docs/decisions/INDEX.md (55 ADRs indexed with topical grouping)
  * docs/design/INDEX.md (phase plans and feature designs)
  * docs/standards/INDEX.md (9 standards with compliance checklist)
  * docs/reports/INDEX.md (57 implementation reports)
  * docs/deployment/INDEX.md (deployment guides)
  * docs/examples/INDEX.md (code samples and usage patterns)
  * docs/migration/INDEX.md (version migration guides)
  * docs/releases/INDEX.md (release documentation)
  * docs/reviews/INDEX.md (architectural reviews)
  * docs/security/INDEX.md (security documentation)

- Updated CLAUDE.md with complete folder descriptions including:
  * docs/migration/
  * docs/releases/
  * docs/security/

VERIFICATION:
- All ADR numbers now sequential and unique (50 total ADRs)
- No duplicate ADR numbers remain
- All cross-references updated and verified
- Documentation structure consistent and well-organized

These changes improve documentation discoverability, maintainability, and
ensure proper version tracking. All index files follow consistent format
with clear navigation guidance.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 13:28:56 -07:00

8.9 KiB

StarPunk Roadmap

Current Status

Latest Version: v1.1.0 "SearchLight" Released: 2025-11-25 Status: Production Ready

StarPunk has achieved V1 feature completeness with all core IndieWeb functionality implemented:

  • IndieAuth authentication
  • Micropub endpoint
  • Notes management
  • RSS syndication
  • Full-text search
  • Custom slugs

Version History

Released Versions

v1.1.0 "SearchLight" (2025-11-25)

  • Full-text search with FTS5
  • Complete search UI
  • Custom slugs via Micropub mp-slug
  • RSS feed ordering fix
  • Migration system improvements

v1.0.1 (2025-11-24)

  • Fixed Micropub URL double-slash bug
  • Minor bug fixes

v1.0.0 (2025-11-24)

  • Initial production release
  • IndieAuth authentication
  • Micropub server implementation
  • Notes CRUD functionality
  • RSS feed generation
  • Web interface (public & admin)

Future Roadmap

v1.1.1 "Polish" (In Progress)

Timeline: 2 weeks (December 2025) Status: In Development Effort: 12-18 hours Focus: Quality, user experience, and production readiness

Planned Features:

Search Configuration System (3-4 hours)

  • SEARCH_ENABLED flag for sites that don't need search
  • SEARCH_TITLE_LENGTH configurable limit (currently hardcoded at 100)
  • Enhanced search term highlighting in results
  • Search result relevance scoring display
  • Graceful FTS5 degradation with fallback to LIKE queries

Performance Monitoring Foundation (4-6 hours)

  • Add timing instrumentation to key operations
  • Database query performance logging
  • Slow query detection and warnings (configurable threshold)
  • Memory usage tracking in production
  • /admin/performance dashboard with real-time metrics

Production Readiness Improvements (3-5 hours)

  • Graceful degradation when FTS5 unavailable
  • Better error messages for common configuration issues
  • Database connection pooling optimization
  • Improved logging structure with configurable levels
  • Enhanced health check endpoints (/health and /health/ready)

Bug Fixes & Edge Cases (2-3 hours)

  • Fix 10 flaky timing tests from migration race conditions
  • Handle Unicode edge cases in slug generation
  • RSS feed memory optimization for large note counts
  • Session timeout handling improvements

Technical Decisions:

v1.1.2 "Feeds"

Timeline: December 2025 Focus: Expanded syndication format support Effort: 8-13 hours

Planned Features:

  • ATOM Feed Support (2-4 hours)
    • RFC 4287 compliant ATOM feed at /feed.atom
    • Leverage existing feedgen library
    • Parallel to RSS 2.0 implementation
    • Full test coverage
  • JSON Feed Support (4-6 hours)
    • JSON Feed v1.1 specification compliance
    • Native JSON serialization at /feed.json
    • Modern alternative to XML feeds
    • Direct mapping from Note model
  • Feed Discovery Enhancement
    • Auto-discovery links for all formats
    • Content-Type negotiation (optional)
    • Feed validation tests

See: ADR-038: Syndication Formats

v1.2.0 "Semantic"

Timeline: Q1 2026 Focus: Enhanced semantic markup and organization Effort: 10-16 hours for microformats2, plus category system

Planned Features:

  • Strict Microformats2 Compliance (10-16 hours)
    • Complete h-entry properties (p-name, p-summary, p-author)
    • Author h-card implementation
    • h-feed wrapper for index pages
    • Full IndieWeb parser compatibility
    • Microformats2 validation suite
    • See: ADR-040: Microformats2 Compliance
  • Tag/Category System
    • Database schema for tags
    • Tag-based filtering
    • Tag clouds
    • Category RSS/ATOM/JSON feeds
    • p-category microformats2 support
  • Hierarchical Slugs
    • Support for / in slugs
    • Directory-like organization
    • Breadcrumb navigation with microformats2
  • Draft Management
    • Explicit draft status
    • Draft preview
    • Scheduled publishing
  • Search Enhancements
    • Tag search
    • Date range filtering
    • Advanced query syntax

v1.3.0 "Connections"

Timeline: Q2 2026 Focus: IndieWeb social features

Planned Features:

  • Webmentions
    • Receive endpoint
    • Send on publish
    • Display received mentions
    • Moderation interface
  • IndieAuth Provider (optional)
    • Self-hosted IndieAuth server
    • Token endpoint
    • Client registration
  • Reply Contexts
    • In-reply-to support
    • Like/repost posts
    • Bookmark posts

v1.4.0 "Media"

Timeline: Q3 2026 Focus: Rich content support

Planned Features:

  • Media Uploads
    • Image upload via Micropub
    • File management interface
    • Thumbnail generation
    • CDN integration (optional)
  • Photo Posts
    • Instagram-like photo notes
    • Gallery views
    • EXIF data preservation
  • Video/Audio Support
    • Embed support
    • Podcast RSS (optional)

v2.0.0 "MultiUser"

Timeline: 2027 Focus: Multi-author support (BREAKING CHANGES)

Major Features:

  • User Management
    • Multiple authors
    • Role-based permissions
    • User profiles
  • Content Attribution
    • Per-note authorship
    • Author pages
    • Author RSS feeds
  • Collaborative Features
    • Draft sharing
    • Editorial workflow
    • Comment system

Design Principles

All future development will maintain these core principles:

  1. Simplicity First: Every feature must justify its complexity
  2. IndieWeb Standards: Full compliance with specifications
  3. Progressive Enhancement: Core functionality works without JavaScript
  4. Data Portability: User data remains exportable and portable
  5. Backwards Compatibility: Minor versions preserve compatibility

Feature Request Process

To propose new features:

  1. Check Alignment

    • Does it align with IndieWeb principles?
    • Does it solve a real user problem?
    • Can it be implemented simply?
  2. Document Proposal

    • Create issue or discussion
    • Describe use case clearly
    • Consider implementation complexity
  3. Architectural Review

    • Impact on existing features
    • Database schema changes
    • API compatibility
  4. Priority Assessment

    • User value vs. complexity
    • Maintenance burden
    • Dependencies on other features

Deferred Features

These features have been considered but deferred indefinitely:

  • Static Site Generation: Conflicts with dynamic Micropub
  • Multi-language UI: Low priority for single-user system
  • Advanced Analytics: Privacy concerns, use external tools
  • Comments System: Use Webmentions instead
  • WYSIWYG Editor: Markdown is sufficient
  • Mobile App: Web interface is mobile-friendly

Support Lifecycle

Version Support

  • Current Release (v1.1.0): Full support
  • Previous Minor (v1.0.x): Security fixes only
  • Older Versions: Community support only

Compatibility Promise

  • Database: Migrations always provided
  • API: Micropub/IndieAuth remain stable
  • Configuration: Changes documented in upgrade guides

Contributing

StarPunk welcomes contributions that align with its philosophy:

Code Contributions

  • Follow existing patterns
  • Include tests
  • Document changes
  • Keep it simple

Documentation

  • User guides
  • API documentation
  • Deployment guides
  • Migration guides

Testing

  • Bug reports with reproduction steps
  • Compatibility testing
  • Performance testing
  • Security testing

Technology Evolution

Near-term Considerations

  • Python 3.12+ adoption
  • SQLite WAL mode
  • HTTP/2 support
  • Container optimizations

Long-term Possibilities

  • Alternative database backends (PostgreSQL)
  • Federation protocols (ActivityPub)
  • Real-time features (WebSockets)
  • AI-assisted writing (local models)

Success Metrics

StarPunk success is measured by:

  • Simplicity: Lines of code remain minimal
  • Reliability: Uptime and stability
  • Standards Compliance: Passing validators
  • User Satisfaction: Feature completeness
  • Performance: Response times <300ms

Philosophy

"Every line of code must justify its existence. When in doubt, leave it out."

This philosophy guides all development decisions. StarPunk aims to be the simplest possible IndieWeb CMS that works correctly, not the most feature-rich.


Document Created: 2025-11-25 Last Updated: 2025-11-25 Status: Living Document

For the latest updates, see: