Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

A free and open-source forge that lives in your Git repo.

Show state changes and actor/assignee filters in activity

8e93a8f0e42847734facadaa8a56f857ed1a1565 · Keenan Nemetz · 15d ago · parent 2973f727

Show state changes and actor/assignee filters in activity

Issue state changes now write a canonical "issue: <id> <state>" subject, the same shape requests already used, so the feed can read closed, reopened, and merged events from the metadata log without diffing historical files. The CLI and the web share metadata.SetIssueState.

The repository feed filters by type, actor, and assignee. Filters survive type changes and HTMX swaps, and are applied before the 100-event limit so an older matching event is not hidden by newer unrelated ones.

docs/ui-plan.md +10−10

@@ -85,7 +85,7 @@ Status: `done` exists today · `wip` in progress · `todo` missing.
85 85 - done — runs list per repository (`/r/{name}/runs`) with status filters
86 86 - done — repository activity feed on `/r/{name}/activity`: commits, issues,
87 87 changes, releases, runs, type filters, and HTMX fragment updates
88 - todo — activity events from metadata-log state changes (closed/reopened),
88 - done — activity events from metadata-log state changes (closed/reopened),
89 89 actor filter, and assignee filter
90 90 - done — repository settings: description, default branch, visibility
91 91 - done — danger zone: rename and delete with typed confirmation
@@ -115,10 +115,9 @@ Status: `done` exists today · `wip` in progress · `todo` missing.
115 115 3. **Issues and changes** — done: list/detail layout, composer, filters,
116 116 close/reopen, discussion, label/assignee triage, writing inline review
117 117 comments.
118 4. **Activity and settings** — repository activity feed, repository settings
119 (description, default branch, visibility, danger zone), and the
120 instance-admin ACL editor are done. Remaining: metadata-backed close/reopen
121 events.
118 4. **Activity and settings** — done: repository activity feed with state
119 changes and actor/assignee filters, repository settings (description, default
120 branch, visibility, danger zone), and the instance-admin ACL editor.
122 121 5. **Instance admin** — access rules are done at
123 122 `/admin/repos/{name}/access`, and rename/delete live in repository settings.
124 123 Remaining: users, invitations, keys, and repository create.
@@ -154,14 +153,15 @@ from the server, it does not manage client-side chip state or credential APIs.
154 153
155 154 No notification table and no per-user inbox. The feed is derived from Git, the
156 155 metadata branch, tags, and the run queue. Events carry a type, time, actor,
157 title, link, and (for issue/change events) assignees so the same feed can later
158 be filtered by assignee.
156 title, link, and (for issue/change events) assignees, so the same feed can be
157 filtered by actor and assignee.
159 158
160 159 Repository feed is done on `/r/{name}/activity`; Overview stays the project
161 160 summary. The home page will become the instance-wide feed over visible
162 repositories. State changes such as closed and reopened need the metadata branch
163 log; the first feed covers creation, comments, approvals, commits, releases, and
164 runs.
161 repositories. State changes such as closed and reopened come from the metadata
162 branch log, which carries a canonical `issue: <id> <state>` and
163 `request: <id> <state>` subject. The feed covers creation, comments, approvals,
164 state changes, commits, releases, and runs.
165 165
166 166 ## Admin scope
167 167