alpha
Login
or
Join now
graft.pds.cyberwild.org
/
graft-source
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Federated via graft
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
41
Pulls
Pipelines
graft-source
/
internal
/
sync
4 files
at
9f216f4c2c89b482449882ec7698340e03fc4ec4
jeanbaptiste
v2 M4: expose each series' Radicle DID on its ActivityPub profile
1mo ago
9f216f4c
git.go
Group dashboard activity by repo, not by sync pair Each repo pair now declares an optional series, grouping every side that mirrors the same underlying repository (its Forgejo instances and Radicle node) under one row. The dashboard heatmap becomes one event per cell (never aggregated behind a single tooltip) inside a collapsible group per repo, expanding to one sub-row per actual mirrored server with its own link and its own events - instead of one ambiguous shared link. Also fixes git commit activity always linking to Forgejo regardless of which side the content actually landed on, so Radicle now shows up as a real destination instead of being invisible in the activity feed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KB7C5CeuMbQujqRtb4foki
1 month ago
issues.go
v2 M3: comment bridge — fediverse replies become real comments activity_log now records the forgejo_id/radicle_id of the issue/patch each entry is about, so a reply's inReplyTo can be resolved back to the exact item it's a comment on. Forgejo: CreateIssueComment (POST .../issues/{index}/comments — verified live, and confirmed the same endpoint takes PR comments too). Radicle: CommentIssue and CommentPatch via the rad CLI (verified against `rad issue/patch comment --help` on a live node first, rather than guessing the syntax — patch comments take a revision id, not the patch's own id, which the Patch/Revision struct now also carries). The inbox now handles Create{Note} whose inReplyTo points at one of our own Notes: strips the reply's HTML, prefixes it with the replying account's handle, and posts it as a comment on both the Forgejo and Radicle sides of whichever specific pair logged that entry. Verified live end-to-end without a real fediverse account, using one of graft's own already-published actors as the signed sender (its key never leaves the container — a small Go program run via `pct exec` reads it locally and signs the request there): the reply landed as a comment on both f2's issue and the Radicle issue, correctly attributed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KB7C5CeuMbQujqRtb4foki
1 month ago
patches.go
v2 M3: comment bridge — fediverse replies become real comments activity_log now records the forgejo_id/radicle_id of the issue/patch each entry is about, so a reply's inReplyTo can be resolved back to the exact item it's a comment on. Forgejo: CreateIssueComment (POST .../issues/{index}/comments — verified live, and confirmed the same endpoint takes PR comments too). Radicle: CommentIssue and CommentPatch via the rad CLI (verified against `rad issue/patch comment --help` on a live node first, rather than guessing the syntax — patch comments take a revision id, not the patch's own id, which the Patch/Revision struct now also carries). The inbox now handles Create{Note} whose inReplyTo points at one of our own Notes: strips the reply's HTML, prefixes it with the replying account's handle, and posts it as a comment on both the Forgejo and Radicle sides of whichever specific pair logged that entry. Verified live end-to-end without a real fediverse account, using one of graft's own already-published actors as the signed sender (its key never leaves the container — a small Go program run via `pct exec` reads it locally and signs the request there): the reply landed as a comment on both f2's issue and the Radicle issue, correctly attributed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KB7C5CeuMbQujqRtb4foki
1 month ago
syncer.go
v2 M4: expose each series' Radicle DID on its ActivityPub profile RepoSyncer.RadicleDID() resolves the local node identity the same way GitSyncer already does for remote setup (rad self --nid), and the actor object now carries it as a PropertyValue attachment — so anyone following from the fediverse can see, right on the profile, which Radicle node actually signs this repo's history. Deliberately scoped down from "AT Proto DID bridging" as discussed: this surfaces the DID as verifiable profile metadata, not a cross-protocol identity resolution (that would need a real DID method resolver and a PDS to test against, neither of which exist here). Verified live: https://graft.cyberwild.org/actors/federation-x now carries the correct did:key: attachment. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KB7C5CeuMbQujqRtb4foki
1 month ago