Fix #235: repo description field #242
No reviewers
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub!242
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/issue-235"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Per-repo short description: stored as the
descriptionkey in the WAL-published settings TOML (persistence/revision/authorship/admin-writes free; single-line, ≤512 chars, validated at publish), surfaced on the summary wire ("" when unset, ETag~d<fnv>suffix so description-only changes bust SWR, +0 store round trips via the manifest-inline copy), shown in the repo header right of owner/repo (muted, omitted when unset), editable in a new General settings tab (first + default) that serializes into the settings doc through the existing SDK surface. Owner-list rows explicitly descoped (names-only listing). No new deps.Verification: gofmt/vet clean; go test -race green on internal/api, internal/config, internal/maintain, internal/server; cover 95.4% api / 95.6% config; node --test 455/455; vite+esbuild build OK; live server: reader GET 200 with description, reader PUT 403, admin PUT 200, stale-etag revalidation, bundle ships the feature. Real-browser check is OPEN: the hub chrome-cdp daemon blocks localhost/loopback/private-IP navigations, so no local test-server address is reachable from it (tried walgit.localhost, localhost, 127.0.0.1, LAN IP). Docs updated (07_api §9.1, 11_config_cli §4, 12_web_ui) with Decisions entries.
Storage: top-level `description` key in the WAL-published repo settings TOML (11_config_cli.md §4) — single line, ≤512 chars, validated at publish; Merge ignores it (display metadata, never host config). Read: SummaryData/summaryBody carry `description` ("" when unset; 07_api.md §9.1), folded from the manifest-inline copy at +0 store round trips; ETag gains ~d<fnv1a32hex> so description-only changes bust SWR. UI: header shows it right of owner/repo (muted, omitted when unset); new General tab first + default with a description editor serializing into the settings doc via the existing SDK surface (12_web_ui.md). Owner-list rows explicitly descoped (names-only listing). No new deps. Decisions appended in 07_api.md, 11_config_cli.md, 12_web_ui.md.