Changelog

All notable changes to IssueDB are documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.5.0] - 2025-11-29

Added

  • Memory System: Persistent storage for AI agents and general knowledge

    • memory command to add, list, update, and delete memory items

    • Memory model and database table

    • Web UI integration at /memory

  • Lessons Learned: Track knowledge gained from resolved issues

    • lesson command to add and list lessons

    • LessonLearned model and database table

    • Web UI integration at /lessons

  • Tagging: Flexible categorization for issues

    • tag command to add, remove, and list tags

    • --tag flag in create and list commands

    • Tag filtering in CLI and Web UI

  • Due Dates: Set deadlines for issues

    • --due-date flag in create and update commands

    • Due date display in CLI and Web UI

  • Linked Issues: Connect related issues

    • link and unlink commands to manage relationships

    • Relationship types (e.g., “related”, “blocks”)

    • Web UI support for linking issues

  • Web UI Enhancements:

    • New Memory and Lessons pages

    • Linked Issues section in Issue Detail

    • Improved sidebar layout

[2.4.0] - 2025-11-26

Added

  • Issue Dependencies: Track blocking relationships between issues

    • block command to mark issues as blocked by others

    • unblock command to remove blockers

    • deps command to view dependency graph

    • blocked command to list all blocked issues

  • Code References: Link issues to specific code locations

    • attach command to link files/lines to issues

    • detach command to remove code references

    • refs command to list references for an issue

    • affected command to find issues referencing a file

  • Time Tracking: Track time spent on issues

    • timer-start and timer-stop commands

    • timer-status to check active timers

    • set-estimate to set estimated hours

    • time-log to view time entries

    • time-report for time summaries (all/week/month)

  • Workspace Awareness: Track current working context

    • workspace command for status overview

    • start command to begin working (sets active + starts timer)

    • stop command to finish working (with optional –close)

    • active command to show current issue

  • Issue Context: Comprehensive context for LLM agents

    • context command returns issue + comments + history + related + suggestions

    • --compact flag for minimal context

  • Duplicate Detection: Find similar issues

    • find-similar command with configurable threshold

    • find-duplicates to find duplicate groups

    • --check-duplicates flag for create command

    • Similarity algorithms: Levenshtein and Jaccard

  • Issue Templates: Predefined issue templates

    • templates command to list available templates

    • --template flag for create command

    • Built-in templates: bug, feature, task

  • Bulk Pattern Operations: Pattern-based bulk operations

    • bulk-close-pattern for closing by pattern

    • bulk-update-pattern for updating by pattern

    • bulk-delete-pattern for deleting by pattern

    • Support for glob and regex patterns

    • --dry-run flag for preview

  • Database schema: New tables for dependencies, code_references, time_entries, workspace_state, issue_templates

  • Tests: 501 tests covering all new functionality

Changed

  • Updated LLM agent prompt (PROMPT.txt) with all new commands

  • Updated README.md with new features

  • Updated CLI reference documentation

  • Improved type annotations (mypy clean)

  • Code style improvements (ruff clean)

[2.3.1] - 2025-11-25

Fixed

  • –ollama flag now accepts unquoted multi-word requests

    • Before: issuedb-cli --ollama "create a high priority bug"

    • After: issuedb-cli --ollama create a high priority bug

    • Note: --ollama-model, --ollama-host, --ollama-port must come BEFORE --ollama

  • 4 new tests for argparse behavior (now 136 total)

[2.3.0] - 2025-11-25

Added

  • Fetch History Tracking: Track which issues were fetched via get-next

    • get-next now logs a FETCH action in the audit trail

    • get-last command to view last fetched issue(s)

    • -n/--number flag to get last N fetched issues (default: 1)

    • Shows current state of existing issues or reconstructs deleted issues from audit log

    • Example: issuedb-cli get-last -n 5 to see last 5 fetched issues

  • Repository methods: get_last_fetched(limit)

  • API parameter: log_fetch in get_next_issue() to control logging

  • Tests: 16 new tests for get-last functionality (now 132 total)

Changed

  • Updated LLM agent prompt with get-last examples

  • Full documentation update

[2.2.0] - 2025-11-24

Added

  • Comment system: Add comments to issues for tracking notes, progress, and resolutions

    • comment command to add comments to issues

    • list-comments command to view all comments on an issue

    • delete-comment command to remove comments

    • Comments are automatically deleted when their parent issue is deleted (CASCADE)

  • CLI methods: add_comment(), list_comments(), delete_comment()

  • Repository methods: add_comment(), get_comments(), delete_comment()

  • Comment model: New Comment dataclass with to_dict() method

  • Database schema: New comments table with foreign key to issues

  • Tests: 19 new tests for comment functionality

Changed

  • Enabled SQLite foreign key constraints for data integrity

  • Updated documentation with comment examples

[2.1.0] - 2025-01-XX

Added

  • Bulk operations: Efficiently manage multiple issues at once

    • bulk-create command: Create multiple issues from JSON

    • bulk-update-json command: Update multiple issues from JSON

    • bulk-close command: Close multiple issues by ID

  • Input options: Both file (-f) and direct data (-d) input for bulk operations

  • Repository methods:

    • bulk_create_issues()

    • bulk_update_issues_from_json()

    • bulk_close_issues()

  • Audit logging: Bulk operations logged with BULK_CREATE and BULK_UPDATE actions

  • Tests: Comprehensive tests for all bulk operations

Changed

  • Fixed datetime handling for Python 3.12+ compatibility (no more deprecation warnings)

  • Improved type annotations throughout codebase

[2.0.0] - 2025-01-XX

Added

  • Audit logging: Full transactional audit trail

    • All issue changes logged immutably

    • Audit logs preserved even after issue deletion

    • audit command to view audit history

  • Reporting: New summary and report commands

    • summary command for aggregate statistics

    • report command for grouped issue lists

  • Search: search command for keyword-based issue lookup

  • Database info: info command showing database statistics

Changed

  • Enhanced JSON output format

  • Improved error messages

  • Better validation for all inputs

[1.1.0] - 2025-01-XX

Added

  • Filtering: Filter issues by status and priority

  • Pagination: --limit option for list commands

  • Next issue: next command for FIFO queue processing

Changed

  • Improved table formatting for human-readable output

  • Better handling of empty results

[1.0.0] - 2025-01-XX

Initial release.

Added

  • Core functionality:

    • Create issues with title, description, priority, status

    • List all issues

    • Get issue details by ID

    • Update issue fields

    • Delete issues

  • CLI: Full command-line interface via issuedb-cli

  • JSON output: --json flag for all commands

  • SQLite storage: Local database at ~/.issuedb/issuedb.sqlite

  • Priority levels: low, medium, high, critical

  • Status values: open, in-progress, closed

  • Python API: Programmatic access via IssueRepository class

Migration Notes

From 1.x to 2.x

Version 2.0 added the audit_log table. When upgrading:

  1. The database schema will be updated automatically on first run

  2. Existing issues are preserved

  3. Historical audit logs are not retroactively created

From 2.0 to 2.1

No migration needed. New bulk operation features are additive.

From 2.1 to 2.2

Version 2.2 adds the comments table:

  1. Schema updates automatically on first run

  2. Foreign key constraints are now enabled

  3. Existing data is preserved

From 2.2 to 2.3

No migration needed. New fetch history tracking is additive:

  1. get-next will start logging FETCH actions automatically

  2. get-last command will return results after issues are fetched

  3. Historical fetches are not retroactively logged