knotserver: support legacy owner/repo paths in PostReceiveHook
nix/vm: remove `environmentFile` option from vm spindle service
appview/notify: move logging and webhook notifiers to their own packages
spindle/engines: add dummy engine that logs to stdout
appview/repo: do not retry language detection
wip: appview: unified comment fragments/handlers
appview: revert use of knotmirror from appview
knotserver/xrpc: merge-base for combined patch in repo compare
appview/pages: add search page
contrib,nix: local, sandboxed atmosphere infra
appview/pulls: update handlers for new pull model
appview/repo: avoid copying body in blob responses
appview/knotstream: check for repo existience before permitting events
wip: appview/{service,web}: service layer
appview/pages: add search bar to profile-repos tab
appview: listen for pipeline events from spindlestream
lexicons: use `com.atproto.repo.strongRef` for referencing
appview/pages: clone rctx before transforming markdown
appview/pages: split footerFull and footerMinimal
appview/state: harden knot proxying
wip: appview: migrate to tap ingester with partial backfill support
appview: remove `db.GetReaction()`
nix,docs: add pagefind for search
appview/notify: merge new comment events into one
appview/pages: clean up copy on homepage
appview/pages: list webhook deliveries in repo settings
docs: document webhooks
appview/state: support `/favicon.ico`
appview/pages: improved seo tags for home, repo and profile
appview/notify: introduce loggingNotifier as a separate notifier
cherry-pickable: add logging to pages
wip: spindle: engines -> adapters
tmp: cmd/rbactester
appview/pages: finesse styling in review page
appview,knotserver: support lockable http tarball protocol
appview/pages: show login/signup CTA in pulls submissions only once
appview/pages: rework the PR page entirely
appview/pulls: add pagination to pull requests listing
appview/ingester: ingest label ops on pulls too
appview/pulls: compress patch blobs using gzip
wip: spindle: docker engine
appview/state: refactor manifest.json
appview/pages: render a placeholder avatar when there's no did
orm: extract orm package from appview
appview/pages: seo improvements, sitemap, schemae and more
knotserver: use local clones if repo is hosted on the same knot
guard: supress logging
appview/pages: show live updating counters for steps
appview/pages: show live updating counters for steps
appview/oauth: overload oauth identity directory
appview/pages: fix OG links for issues and pulls
appview/pulls: fix stacked resubmits using the wrong source-sha
appview/repo: increase opengraph content padding
nix: cp InterVariable ttf to fonts dir
appview/pages/markup: add support for callouts
appview/pulls: show "delete branch" button for merged PRs
appview/state: style changes to good-first-issue
appview/languages: fix logic bug in updating language breakdowns
appview/notifications: fix pagination
appview/pages: add labels to pulls
appview/signup: set up cf turnstile
appview/pages: remove double border around follow-cards
appview/pages: fix terms and privacy pages
appview/labels: reduce the opset after validation
appview/validator: limit label ops to collaborators
appview: improve styles in strings pages
appview/middleware: indiscriminately try to refresh the session
appview: always pass DID into tinyAvatar func
appview/pages: notifications ui and templating
appview/labels: add "subscribe all" button for default labels
appview/pages: prevent action button overflow in timeline cards
knotserver: use exact source SHA to compile pipelines
ci: run go-vet on CI
appview/state: imrpove starred page performance
appview: introduce default labels that can be subscribed to
appview: relax auth requirement on artifact download
knotserver: detect bun.lock files as generated
appview/{notify,strings}: notify on string create/edit/delete ops
appview/pages: hide profile-card from non-overview pages on mobile
appview/pages: show star/unstar buttons on the timeline
appview/pages: special-case for sub-second times in timeAgo formats
appview: restore old behavior when non-default branches are pushed
appview: handle deleted repos in profile timeline
appview: increase base layout width on md size screens
appview: fix headers in knot and spindle dashboards
appview: fix issues in profile timeline
appview: knot upgrade banner
appview: refactor languageBall into template
appview/pages: display home page to logged out users
wip: details tag for docs
spindle: allowing configuring queue size and max job count
appview: improve page load
appview: ingest issue/comment update and delete
appview/oauth: add to default knot optimistically
appview/pages: add strings tab to profile
appview/pages: access PullSource field only in forks