onetaskgraph-github-projects 0.2.0

A onetaskgraph source over GitHub Projects.
Documentation

A stateless onetaskgraph source over one GitHub Projects v2 project.

A project maps to the configured GitHub ProjectV2, not a repository: one Projects v2 board can contain work from several repositories and draft work from none. Project fields read ProjectV2.id, title, shortDescription, url, createdAt, and updatedAt. Tasks map from ProjectV2Item.content (Issue, PullRequest, or DraftIssue); labels read the content's labels connection and ProjectV2ItemFieldLabelValue.

Status reads the item value whose ProjectV2ItemFieldSingleSelectValue.field.name is Status. Its option name is retained. The default maps Backlog, Todo/Open, In Progress/In Review, Done/Closed/Merged, and Cancelled/Canceled; status_mapping overrides option names case-insensitively, and all other user-defined names remain Unknown.

ProjectV2.items pages but has no label, status, orphan, or content-search arguments. Project listing alone is native; the plugin ignores every unsupported query predicate so the engine can compensate from the wider result. Dependencies traverse underlying Issue nodes. Issue.blockedBy supplies DependsOn edges and Issue.blocking supplies DependedOnBy edges; pull requests and draft issues have neither field and therefore return an empty edge page. Both dependency capabilities are BothDirections; project dependency reads aggregate the configured project's issue edges. Projects v2 has no native project-to-project relationship, so those aggregate edges use the related issues' projectItems.project.id.

Live verification is non-destructive by construction: [TaskSource] has read operations only and this crate sends GraphQL query operations only, with no mutation for setup or teardown.