LocalPlanTrackerClient class

Adapter that exposes .spectra/PLAN.md tasks as normalized Issues.

This keeps the spectra plan -> spectra start flow working without an external tracker. Task state is derived from .spectra/ROADMAP.md checkbox markers when present, otherwise tasks default to Todo.

State conventions:

  • [ ] task name -> Todo
  • [~] task name or [/] task name -> In Progress
  • [x] task name -> Done
Implemented types

Constructors

LocalPlanTrackerClient({String planPath = '.spectra/PLAN.md', String roadmapPath = '.spectra/ROADMAP.md', List<String> activeStates = const <String>['Todo', 'In Progress'], List<String> terminalStates = const <String>['Done']})
Creates a local plan tracker.
LocalPlanTrackerClient.fromConfig(WorkflowConfig config)
Builds a tracker pre-wired from a WorkflowConfig.
factory

Properties

activeStates List<String>
Active states declared in workflow config (Symphony default ['Todo', 'In Progress']).
final
hashCode int
The hash code for this object.
no setterinherited
kind String
Stable identifier for this tracker kind (linear, local_plan, ...).
no setteroverride
planPath String
Project-relative or absolute path to PLAN.md.
final
roadmapPath String
Optional path to ROADMAP.md.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
terminalStates List<String>
Terminal states declared in workflow config.
final

Methods

close() Future<void>
Releases adapter-managed resources (HTTP clients, timers, etc.).
override
fetchByStates(List<String> stateNames) Future<TrackerResult<List<Issue>>>
Returns issues currently in any of the supplied stateNames.
override
fetchCandidates() Future<TrackerResult<List<Issue>>>
Returns issues currently in the configured active_states, sorted by the adapter's natural order (the scheduler will re-sort for dispatch).
override
fetchStatesByIds(List<String> issueIds) Future<TrackerResult<List<Issue>>>
Returns minimal normalized issues for the supplied issueIds.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

parsePlanContent(String content, {Map<String, String> statesById = const <String, String>{}}) List<Issue>
Parses <task> XML blocks from PLAN.md content into normalized issues.