This release introduces significant capabilities for managing large
multi-repository portfolios, focusing on agentic intelligence, relationship
mapping, and automated workflows.
Agentic Detection and Review:
- Integrated LLM-based analysis to infer repository purpose, types, and
relationships when deterministic methods fail.
- Added a human-in-the-loop review queue stored in
.portfolio/reviews/pending.yml.
- New `mix portfolio.review` command to interactively accept, reject, or
modify pending agent detections.
- New `mix portfolio.scan --agentic` flag to trigger deep analysis during
discovery.
Enhanced Deterministic Detection:
- Improved dependency parsing to categorize dependencies into runtime,
development, and optional buckets.
- Extended Python detection to support setup.py and requirements.txt
alongside pyproject.toml.
- Added framework detection for Elixir (Phoenix, Nerves), Python (Django,
FastAPI), and JavaScript (React, Next.js).
- Computed fields now include comprehensive git statistics: commit counts,
contributor counts, and last commit metadata.
Relationship Graph and Visualization:
- Implemented a graph data structure to model repository interdependencies.
- New `mix portfolio.graph` command to visualize relationships via ASCII
art or Graphviz DOT/SVG export.
- Supports filtering graph output by relationship type and depth.
Workflow Engine Overhaul:
- Introduced Schema Version 1 for workflow definitions with robust
input/output variable passing.
- Added control flow steps: `condition` (if/else) and `loop` (for-each).
- Added nested workflow execution via the `workflow` step type.
- Included built-in workflows for health checks, port synchronization, and
documentation generation.
CLI and Usability:
- Added `mix portfolio.repl` with command history persistence.
- Added `mix portfolio.completion` for shell autocompletion generation.
- Enhanced `mix portfolio.list` with advanced filtering, sorting, and
format options (table, compact, json).
- Updated `mix portfolio.sync` with `--full`, `--computed-only`, and
`--check-remotes` flags for granular control.
- Added `mix portfolio.edit --set` for direct field modification.
- Respects PORTFOLIO_DIR environment variable for global usage.
Storage and Caching:
- Added optional SQLite caching using exqlite for high-performance search
on large portfolios.
- Implemented Full Text Search (FTS) for repository notes and metadata.
- Local state (cache, history, pending reviews) is now isolated in
.portfolio/ to prevent git conflicts in the portfolio repo.
Documentation:
- Added comprehensive guide series covering installation, configuration,
detection, and workflows.
- Updated README with architectural diagrams and usage examples.
Refactoring:
- Refactored CLI tasks to use a shared Exit module for consistent status
codes.
- Normalized context structure to separate raw repository data from
computed fields.