Skip to content
Merged
Show file tree
Hide file tree
Changes from 46 commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
150f227
beads: plan epic uo0 — auto-fetch org memberships from group service
holkexyz Mar 27, 2026
e0f2510
feat: add remote membership fetching from group service
holkexyz Mar 27, 2026
a1f71fe
feat: org page auto-lists memberships with accept/leave buttons
holkexyz Mar 27, 2026
600d4d0
beads: close epic uo0
holkexyz Mar 27, 2026
86571f2
feat: sort groups by acceptance/role, add pending divider, rename to …
holkexyz Mar 27, 2026
1cd703a
feat: split group actions into remove-public, leave-group, and accept
holkexyz Mar 27, 2026
7344e08
feat: show group avatars on the groups page
holkexyz Mar 27, 2026
5216fc2
feat: show group avatars in profile switcher dropdown
holkexyz Mar 27, 2026
45810f6
fix: use Avatar component for all group icons so fallback matches set…
holkexyz Mar 27, 2026
dc10936
fix: show user avatar in profile switcher instead of User icon
holkexyz Mar 27, 2026
dc49daf
refactor: remove Switch button from groups page, update intro text
holkexyz Mar 27, 2026
c992e35
fix: use black wordmark instead of brandmark in OTP email logo
holkexyz Mar 27, 2026
2081717
feat: add profile switcher to mobile navbar dropdown
holkexyz Mar 27, 2026
0ae2867
refactor: separate mobile profile switcher from hamburger menu
holkexyz Mar 27, 2026
511f090
fix: right-align mobile avatar and hamburger together
holkexyz Mar 27, 2026
e419869
feat: bottom sheet for mobile profile switcher
holkexyz Mar 27, 2026
afe035c
fix: portal bottom sheet to document.body to escape navbar stacking c…
holkexyz Mar 27, 2026
7b53ffd
refactor: move sign out to LogOut icon next to user in mobile bottom …
holkexyz Mar 27, 2026
4d5f419
feat: swipe-to-dismiss on mobile bottom sheet
holkexyz Mar 27, 2026
7525a01
fix: drag only from handle, support expand/collapse/dismiss
holkexyz Mar 27, 2026
ca808a0
fix: outside-click handler now excludes portaled bottom sheet
holkexyz Mar 27, 2026
259b4f8
fix: add max-height and scroll to desktop profile switcher dropdown
holkexyz Mar 27, 2026
5f164e6
refactor: move sign out into desktop profile switcher, remove navbar …
holkexyz Mar 27, 2026
62824d9
feat: add all organization infrastructure files
holkexyz Mar 27, 2026
97000ea
fix: add 'never changes' note to org DID hint text
holkexyz Mar 27, 2026
baf55a1
fix: paginate audit log to fetch all entries
holkexyz Mar 27, 2026
8bd4004
fix: remove unsupported limit param from audit query
holkexyz Mar 27, 2026
b9e8cbc
feat: show full DID and detail fields in activity log
holkexyz Mar 27, 2026
ff620a1
fix: preserve active org on page refresh
holkexyz Mar 27, 2026
ebb16e7
fix: use brandmark for logo_uri on feature branch
holkexyz Mar 27, 2026
3e3605f
fix: don't clear active org while auth is still loading
holkexyz Mar 27, 2026
f7305b1
fix: refresh activity log after member add, remove, and role change
holkexyz Mar 27, 2026
ceefb4a
fix: handle editor shows only editable prefix with fixed suffix
holkexyz Mar 27, 2026
06afcc9
fix: align handle suffix with input field
holkexyz Mar 27, 2026
060370d
feat: reuse UsernameCard for org handle with all 3 modes
holkexyz Mar 27, 2026
2d2aab8
fix: inline handle edit shows only prefix with fixed server suffix
holkexyz Mar 27, 2026
efa7f34
fix: derive PDS hostname from handle when pdsUrl not available
holkexyz Mar 27, 2026
d43c69c
fix: make group handle read-only, restore audit pagination
holkexyz Mar 27, 2026
d8274e5
fix: add 'coming soon' note for group handle editing
holkexyz Mar 27, 2026
8ca5386
fix: add limit and cursor to audit.query lexicon definition
holkexyz Mar 27, 2026
7effd02
fix: deduplicate collection/rkey in audit log detail row
holkexyz Mar 28, 2026
8fa26d4
fix: enforce correct character limits on profile edit forms
holkexyz Mar 28, 2026
105385a
fix: rename Organization Details to Group Details
holkexyz Mar 28, 2026
d8b58c1
fix: remove Owner option from add member dropdown
holkexyz Mar 28, 2026
ffbf564
feat: limit users to max 5 self-created organizations
holkexyz Apr 1, 2026
b2cd726
Merge pull request #21 from hypercerts-org/feat/org-creation-limit
holkexyz Apr 1, 2026
1bd174e
fix: address code review feedback from PR #22
holkexyz Apr 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .beads/.beads-credential-key
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
�o Ӂ�fJ<�A�?5��7�e�`��T�
Comment thread
coderabbitai[bot] marked this conversation as resolved.
Outdated
12 changes: 12 additions & 0 deletions .beads/backup/backup_state.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"last_dolt_commit": "1vlcmnnp59l8s8gt8vhj1r0q6tbqbckc",
"timestamp": "2026-03-27T18:46:40.511281Z",
"counts": {
"issues": 18,
"events": 55,
"comments": 0,
"dependencies": 29,
"labels": 30,
"config": 11
}
}
Empty file added .beads/backup/comments.jsonl
Empty file.
11 changes: 11 additions & 0 deletions .beads/backup/config.jsonl
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{"key":"auto_compact_enabled","value":"false"}
{"key":"compact_batch_size","value":"50"}
{"key":"compact_parallel_workers","value":"5"}
{"key":"compact_tier1_days","value":"30"}
{"key":"compact_tier1_dep_levels","value":"2"}
{"key":"compact_tier2_commits","value":"100"}
{"key":"compact_tier2_days","value":"90"}
{"key":"compact_tier2_dep_levels","value":"5"}
{"key":"compaction_enabled","value":"false"}
{"key":"issue_prefix","value":"certified-app"}
{"key":"schema_version","value":"7"}
29 changes: 29 additions & 0 deletions .beads/backup/dependencies.jsonl
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{"created_at":"2026-03-25T23:04:09Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.1","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:08:48Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.10","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:11:13Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.9","issue_id":"certified-app-17e.10","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:09:10Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.11","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:11:23Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.6","issue_id":"certified-app-17e.11","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:04:36Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.2","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:09:22Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.1","issue_id":"certified-app-17e.2","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:04:59Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.3","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:09:28Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.1","issue_id":"certified-app-17e.3","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:05:22Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.4","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:09:34Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.1","issue_id":"certified-app-17e.4","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:05:42Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.5","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:09:56Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.1","issue_id":"certified-app-17e.5","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:06:16Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.6","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:10:07Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.2","issue_id":"certified-app-17e.6","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:06:51Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.7","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:10:16Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.6","issue_id":"certified-app-17e.7","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:07:25Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.8","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:10:28Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.6","issue_id":"certified-app-17e.8","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:08:15Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e","issue_id":"certified-app-17e.9","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-25T23:10:40Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.3","issue_id":"certified-app-17e.9","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:10:46Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.4","issue_id":"certified-app-17e.9","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:10:56Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.5","issue_id":"certified-app-17e.9","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-25T23:11:02Z","created_by":"holke.xyz","depends_on_id":"certified-app-17e.6","issue_id":"certified-app-17e.9","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-23T10:24:16Z","created_by":"holke.xyz","depends_on_id":"certified-app-9h2","issue_id":"certified-app-9h2.1","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-23T10:24:55Z","created_by":"holke.xyz","depends_on_id":"certified-app-9h2","issue_id":"certified-app-9h2.2","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-23T10:25:28Z","created_by":"holke.xyz","depends_on_id":"certified-app-9h2.4","issue_id":"certified-app-9h2.2","metadata":"{}","type":"blocks"}
{"created_at":"2026-03-23T10:25:14Z","created_by":"holke.xyz","depends_on_id":"certified-app-9h2","issue_id":"certified-app-9h2.3","metadata":"{}","type":"parent-child"}
{"created_at":"2026-03-23T10:25:28Z","created_by":"holke.xyz","depends_on_id":"certified-app-9h2","issue_id":"certified-app-9h2.4","metadata":"{}","type":"parent-child"}
55 changes: 55 additions & 0 deletions .beads/backup/events.jsonl

Large diffs are not rendered by default.

18 changes: 18 additions & 0 deletions .beads/backup/issues.jsonl

Large diffs are not rendered by default.

30 changes: 30 additions & 0 deletions .beads/backup/labels.jsonl
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{"issue_id":"certified-app-17e","label":"scope:medium"}
{"issue_id":"certified-app-17e.1","label":"scope:medium"}
{"issue_id":"certified-app-17e.1","label":"scope:small"}
{"issue_id":"certified-app-17e.10","label":"scope:medium"}
{"issue_id":"certified-app-17e.10","label":"scope:small"}
{"issue_id":"certified-app-17e.11","label":"scope:medium"}
{"issue_id":"certified-app-17e.11","label":"scope:trivial"}
{"issue_id":"certified-app-17e.2","label":"scope:medium"}
{"issue_id":"certified-app-17e.2","label":"scope:small"}
{"issue_id":"certified-app-17e.3","label":"scope:medium"}
{"issue_id":"certified-app-17e.3","label":"scope:small"}
{"issue_id":"certified-app-17e.4","label":"scope:medium"}
{"issue_id":"certified-app-17e.4","label":"scope:small"}
{"issue_id":"certified-app-17e.5","label":"scope:medium"}
{"issue_id":"certified-app-17e.5","label":"scope:trivial"}
{"issue_id":"certified-app-17e.6","label":"scope:medium"}
{"issue_id":"certified-app-17e.6","label":"scope:small"}
{"issue_id":"certified-app-17e.7","label":"scope:medium"}
{"issue_id":"certified-app-17e.8","label":"scope:medium"}
{"issue_id":"certified-app-17e.9","label":"scope:medium"}
{"issue_id":"certified-app-9h2","label":"scope:medium"}
{"issue_id":"certified-app-9h2.1","label":"scope:medium"}
{"issue_id":"certified-app-9h2.1","label":"scope:trivial"}
{"issue_id":"certified-app-9h2.2","label":"scope:medium"}
{"issue_id":"certified-app-9h2.2","label":"scope:small"}
{"issue_id":"certified-app-9h2.3","label":"scope:medium"}
{"issue_id":"certified-app-9h2.3","label":"scope:trivial"}
{"issue_id":"certified-app-9h2.4","label":"scope:medium"}
{"issue_id":"certified-app-9h2.4","label":"scope:trivial"}
{"issue_id":"certified-app-uo0","label":"scope:medium"}
Empty file added .beads/dolt-server.lock
Empty file.
Loading