<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/CHANGELOG.md, branch v2.3.0</title>
<subtitle>Personal mirror of DanConwayDev/ngit-cli on git.upleb.uk
</subtitle>
<id>https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.3.0</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/atom?h=v2.3.0'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/'/>
<updated>2026-03-05T22:12:45+00:00</updated>
<entry>
<title>chore: bump version to v2.3.0</title>
<updated>2026-03-05T22:12:45+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T22:12:45+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=45b0f8c6b1dab2d51338d88b2a7caf4b1b571f4d'/>
<id>urn:sha1:45b0f8c6b1dab2d51338d88b2a7caf4b1b571f4d</id>
<content type='text'>
Add issue management, PR/issue comments and viewing, NIP-32 labels,
set-subject, cover notes, repo-only relays, and SKILL.md.
</content>
</entry>
<entry>
<title>fix(whoami): detect and fall back to system git config for nostr login</title>
<updated>2026-03-05T15:06:02+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T15:03:37+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=09c3ae91830bd9c7543b401b19f8c65a15205d32'/>
<id>urn:sha1:09c3ae91830bd9c7543b401b19f8c65a15205d32</id>
<content type='text'>
Add GitSystem to SignerInfoSource so credentials stored in the system
git config (/etc/gitconfig) are included in the priority fallback chain
(local &gt; global &gt; system) and shown as a separate level in whoami output.
</content>
</entry>
<entry>
<title>feat(cover-note): add kind-1624 cover notes for PRs, patches, and issues</title>
<updated>2026-03-05T14:23:07+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T14:19:49+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=37244449d6d0d58bb639f181bd15092de1acaaee'/>
<id>urn:sha1:37244449d6d0d58bb639f181bd15092de1acaaee</id>
<content type='text'>
Implements experimental kind-1624 cover note events:

- KIND_COVER_NOTE constant and process_cover_note() in git_events.rs;
  replaceable semantics (latest created_at, hex-id tiebreak), author or
  maintainer only
- kind-1624 events fetched alongside labels in the fetch pipeline;
  cover_notes count added to FetchReport display
- ngit pr/issue view: cover note displayed in place of description with
  a clear 'Cover Note:' header; maintainer-authored notes identify the
  author; original description shown only with --comments; cover_note
  object included in --json output
- ngit pr set-cover-note / ngit issue set-cover-note: publish a
  kind-1624 event; nostr: mentions in --body converted to q/p tags via
  tags_from_content (same rules as issue --body)
- Fix pre-existing clippy::too_many_lines on repo/mod.rs show_info
</content>
</entry>
<entry>
<title>feat(subject): add pr/issue set-subject via NIP-32 kind-1985 labels</title>
<updated>2026-03-05T13:03:50+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T13:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=f3fcf863aae000964753f574b00e9fb9f5fcd452'/>
<id>urn:sha1:f3fcf863aae000964753f574b00e9fb9f5fcd452</id>
<content type='text'>
Adds the ability to update the displayed title of a PR or issue after
creation using a kind-1985 label event with the #subject namespace.
Only the author or a repository maintainer may set the subject. The
latest authorised event wins with tiebreak by lexicographically larger
event ID (NIP-1 replaceable event semantics). Branch names and commit
messages are never affected.

- Split get_labels() into process_labels() (additive #t) and
  process_subject() (replaceable-style #subject), with a shared
  get_labels_and_subject() entry point that processes both from a
  single pre-fetched slice of kind-1985 events
- All list/view/JSON display paths apply the subject override silently
- New ngit pr set-subject &lt;id&gt; --subject &lt;text&gt; command
- New ngit issue set-subject &lt;id&gt; --subject &lt;text&gt; command
</content>
</entry>
<entry>
<title>feat(status): add pr draft, issue resolved, and --reason for issue close</title>
<updated>2026-03-05T12:08:56+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T12:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=b0ad2fd720d0cd335c07f22767844f571e3306ff'/>
<id>urn:sha1:b0ad2fd720d0cd335c07f22767844f571e3306ff</id>
<content type='text'>
Add `ngit pr draft &lt;id&gt;` to convert a PR back to draft (kind-1632).

Add `ngit issue resolved &lt;id&gt; [--reason &lt;text&gt;]` to mark an issue as
fixed (kind-1631 GitStatusApplied), distinct from close which signals
wontfix/duplicate/invalid.

Add `--reason &lt;text&gt;` to `ngit issue close` — stored in event content.

Also fix success/error message wording in pr_status and issue_status to
use consistent past-tense action strings.
</content>
</entry>
<entry>
<title>feat(label): add `ngit issue label` and `ngit pr label` commands</title>
<updated>2026-03-05T11:41:09+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T11:33:10+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=3ac5395b47c709c00f0072668dfdceb04f2d4974'/>
<id>urn:sha1:3ac5395b47c709c00f0072668dfdceb04f2d4974</id>
<content type='text'>
Publishes a NIP-32 kind-1985 label event referencing the target issue or
PR. Only the event author or a repository maintainer may apply labels.
Duplicate labels (already present via t-tags or prior kind-1985 events)
are silently skipped. The new event is saved to the local cache before
broadcasting so subsequent reads reflect the change immediately.

CLI:
  ngit issue label &lt;id&gt; --label &lt;L&gt; [--label &lt;L&gt;...]
  ngit pr label &lt;id&gt; --label &lt;L&gt; [--label &lt;L&gt;...]
</content>
</entry>
<entry>
<title>feat(labels): fetch and apply NIP-32 kind-1985 label events</title>
<updated>2026-03-05T11:28:36+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T11:28:36+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=0e493c455a0345c206dd1c5b0dfb5322b8a4e3e9'/>
<id>urn:sha1:0e493c455a0345c206dd1c5b0dfb5322b8a4e3e9</id>
<content type='text'>
- Add KIND_LABEL (kind 1985) constant to git_events.rs
- Add get_labels() merging inline t-tags with external kind-1985 events,
  gating each on author-or-maintainer permission
- Extend get_fetch_filters() to request kind-1985 events for all known
  issue and proposal IDs
- Track label event counts in FetchReport (field + Display + consolidation)
- Update issue_list.rs and list.rs to fetch label events from cache and
  pass them through get_labels() instead of reading t-tags inline
</content>
</entry>
<entry>
<title>add `ngit account whoami` command</title>
<updated>2026-03-05T10:58:37+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-05T10:58:37+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=2f2819cc2365be07fedfd35ab3654b3607e29e76'/>
<id>urn:sha1:2f2819cc2365be07fedfd35ab3654b3607e29e76</id>
<content type='text'>
Shows currently logged-in account(s) with name and npub. When both a
local (repo-scoped) and global account are configured, displays both
with local marked as active. Supports --json (returns local, global,
and active objects each with name, npub, nip05, scope) and --offline
(reads from cache only, no network). Fixes doc_markdown clippy warning
in cli.rs.
</content>
</entry>
<entry>
<title>show full comment content in pr view and issue view</title>
<updated>2026-03-04T14:50:01+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-04T14:32:39+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=7dcbdc7841e932570359ccef3b82459b89e6f2bc'/>
<id>urn:sha1:7dcbdc7841e932570359ccef3b82459b89e6f2bc</id>
<content type='text'>
ngit pr view &lt;id&gt; and ngit issue view &lt;id&gt; now fetch and display all
NIP-22 comments in chronological order with author npub and timestamp,
rather than just a count. JSON output includes the full comment array.
Also updates list table hint text to reference ngit pr subcommands.
</content>
</entry>
<entry>
<title>restructure CLI around ngit pr/issue subcommand groups</title>
<updated>2026-03-04T14:50:01+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-03-04T14:28:38+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-cli-mirror/commit/?id=b3b1a949463d8e18622519866ecee3f1b65cc888'/>
<id>urn:sha1:b3b1a949463d8e18622519866ecee3f1b65cc888</id>
<content type='text'>
Introduce ngit pr subcommand group (list, view, checkout, apply, send,
close, reopen, ready, comment, merge) replacing the former top-level
ngit list/checkout/apply commands. ngit send is kept at the top level.

Expand ngit issue with view, create, close, reopen, comment subcommands.

Status changes (close/reopen/ready) are gated to the PR/issue author or
a repository maintainer. ngit pr merge is maintainer-only and publishes
a GitStatusApplied event immediately after the git merge.
</content>
</entry>
</feed>
