Phase 1 of the public-viewing feature (design note included: docs/design/tree-visibility.md). No non-member behavior change yet — only widens the visibility vocabulary + UI.
TreeVisibility gains site_members -> four levels: public / site_members / unlisted / private.
Alembic migration adds the enum value in an autocommit block (ALTER TYPE ADD VALUE); irreversible downgrade (PG cannot drop enum values). Single head confirmed.
Regenerated openapi.json + TS client.
Trees-list dropdown: Private / Public – Members / Unlisted / Public + explanatory tooltip.
First step of the public-viewing feature (design: docs/design/tree-visibility.md).
No non-member behavior change yet — this only widens the vocabulary and UI.
- TreeVisibility gains `site_members` (any authenticated user of the instance),
giving the four-level model: public / site_members / unlisted / private.
- Alembic migration adds the enum value via an autocommit block (ALTER TYPE
ADD VALUE can't run in a transaction on older Postgres); downgrade is a no-op
since PG can't drop an enum value.
- Regenerated openapi.json + frontend TS client.
- Trees-list dropdown now offers Private / Public – Members / Unlisted / Public
with an explanatory tooltip.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Signed-off-by: Justin Paul <[email protected]>
justin
merged commit e6dfe39e84 into main2026-06-09 09:02:02 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Phase 1 of the public-viewing feature (design note included: docs/design/tree-visibility.md). No non-member behavior change yet — only widens the visibility vocabulary + UI.
TreeVisibilitygainssite_members-> four levels: public / site_members / unlisted / private.Verified: backend app imports, enum = [public, site_members, unlisted, private], migration parses + alembic single head; frontend tsc + build pass.
Follow-ups (separate PRs): phase 2 privacy-engine branching + tests, phase 3 public read API, phase 4 public pages, phase 5 explore directory.
🤖 Generated with Claude Code