Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
6149828
Add Hive integration layer with WAX and HAF clients (#11)
KareemN1936 Jul 30, 2026
2762018
feat: add indexer skeleton (#13)
KareemN1936 Jul 31, 2026
ff08bef
User model, roles & per-world permission middleware:
perlaimad Jul 25, 2026
288b984
Add per-world authorization foundation
perlaimad Jul 25, 2026
2323ae1
feat: implement world audit log and authorization policies
perlaimad Aug 1, 2026
d930030
feat(auth): implement Google authentication and improve session manag…
perlaimad Aug 1, 2026
12dc179
feat(auth): implement authentication challenges and sessions
perlaimad Aug 1, 2026
2e83a8f
Implement world seed and hub backend
perlaimad Aug 5, 2026
4cf0a6e
Harden world hub and bible validation
perlaimad Aug 5, 2026
ccb21de
Add structured contribution draft workflow
perlaimad Aug 5, 2026
db50deb
Fix/auth secret hardening (#15)
perlaimad Aug 6, 2026
0f7b120
Implement world seed and hub backend
perlaimad Aug 5, 2026
1231993
Harden world hub and bible validation
perlaimad Aug 5, 2026
8d3518a
Add structured contribution draft workflow
perlaimad Aug 5, 2026
a0ab185
feat(worlds): connect frontend to world seed backend
KareemN1936 Aug 5, 2026
d44a50a
feat(ui): port responsive auth and navigation polish
KareemN1936 Aug 7, 2026
0a9f340
fix(api): align world routes with session verification
KareemN1936 Aug 7, 2026
1e4bdf7
feat(ui): add lore entity CRUD frontend
KareemN1936 Aug 7, 2026
dde4fe2
feat(api): add lore entity CRUD routes
KareemN1936 Aug 8, 2026
350b9ac
feat(lore): add relationship graph linking
KareemN1936 Aug 9, 2026
c6bc1a9
fix(ui): tighten lore detail layout
KareemN1936 Aug 9, 2026
95f4330
fix(lore): address relationship review blockers
KareemN1936 Aug 9, 2026
f582a86
feat: implement canon voting system with rate limiting and proposal m…
perlaimad Aug 10, 2026
d6c5e83
fix: refactor confirmCanonTransaction to use decision variable for cl…
perlaimad Aug 10, 2026
3527672
Merge branch 'develop' into m2-worlds-seed-bible-hub
perlaimad Aug 10, 2026
f3263b8
refactor: remove redundant refresh route implementation
perlaimad Aug 10, 2026
04ddc19
feat: add proposal comments functionality
perlaimad Aug 10, 2026
37af8af
feat: enhance confirmCanonTransaction with error handling for existin…
perlaimad Aug 10, 2026
06fe5d1
feat: enhance Hive network configuration and broadcasting reliability
perlaimad Aug 10, 2026
5341e03
feat: implement Hive broadcast error classification and handling
perlaimad Aug 10, 2026
ce8c1b9
fix(lore): address relationship review follow-ups
KareemN1936 Aug 10, 2026
6d4281b
fix(lore): address final relationship review blockers
KareemN1936 Aug 10, 2026
9679e33
fix(lore): resolve final graph review followups
KareemN1936 Aug 10, 2026
446de62
fix(lore): close relationship governance review blockers
KareemN1936 Aug 10, 2026
78db984
fix(lore): close relationship review blockers
KareemN1936 Aug 10, 2026
3cfb817
fix(lore): restore hub authoring relationship paths
KareemN1936 Aug 10, 2026
88ecd25
style(lore): format relationship follow-up
KareemN1936 Aug 10, 2026
6ad0cc0
fix: repair CI, migrations, canon voting, and comments
perlaimad Aug 11, 2026
801917a
test: add unit tests for Hive broadcast reliability and operation ver…
perlaimad Aug 11, 2026
f141245
fix: update Prisma migration command to use config datasource
perlaimad Aug 11, 2026
b6217e7
fix: update Prisma migration command to use --to-schema option
perlaimad Aug 11, 2026
9f6b413
fix: add index name to IndexerWatermark model for clarity
perlaimad Aug 11, 2026
f0a5a0c
fix: add migration script for IndexerWatermark index adjustment
perlaimad Aug 11, 2026
6262751
fix(lore): align auth provider and list projection
KareemN1936 Aug 11, 2026
5f18c17
fix(api): close canon confirmation review gaps
KareemN1936 Aug 11, 2026
c64c9ea
ci(api): check prisma upgrade migrations
KareemN1936 Aug 11, 2026
a8b2383
test(api): fake active refresh sessions in route tests
KareemN1936 Aug 11, 2026
457fffe
docs: approval percentage counts all votes cast, not Approve + Reject…
mcfarhat Aug 11, 2026
a64edb4
Feature/m2 relationship lore graph kareem
KareemN1936 Aug 11, 2026
07347c8
Revert "Feature/m2 relationship lore graph kareem" (#24)
KareemN1936 Aug 11, 2026
1891cef
Reapply "Feature/m2 relationship lore graph kareem" (#24) (#25)
mcfarhat Aug 11, 2026
22ee3aa
Merge remote-tracking branch 'origin/develop' into hive-broadcast-rel…
KareemN1936 Aug 11, 2026
28a074e
ci(api): load base prisma config for upgrade check
KareemN1936 Aug 11, 2026
27895fe
feat: add transaction operations retrieval and confirmation for canon…
perlaimad Aug 12, 2026
c6564c7
Resolve staged Hivelore updates
perlaimad Aug 12, 2026
187789e
Fix CI quality gate failures
perlaimad Aug 12, 2026
9096717
feat(ui): add contribution editor workflow
KareemN1936 Aug 8, 2026
fcac55c
fix(contributions): address editor review blockers
KareemN1936 Aug 9, 2026
55822aa
fix(contributions): address editor review follow-ups
KareemN1936 Aug 10, 2026
4ec214c
fix(contributions): improve editor preflight feedback
KareemN1936 Aug 10, 2026
c24fc4f
fix(contributions): handle reauth preflight state
KareemN1936 Aug 10, 2026
dd49118
fix(contributions): refresh expired sessions in editor
KareemN1936 Aug 10, 2026
fbd6754
fix(contributions): preserve editor during auth recovery
KareemN1936 Aug 10, 2026
d7c26d2
fix(web): bound auth refresh recovery
KareemN1936 Aug 11, 2026
c31ff85
fix(web): bound contribution auth requests
KareemN1936 Aug 11, 2026
7ff1a44
style(web): format auth session provider
KareemN1936 Aug 11, 2026
9609f85
fix(web): avoid aborting auth refresh redemption
KareemN1936 Aug 14, 2026
82ee56d
fix(web): settle contribution editor rebase blockers
KareemN1936 Aug 14, 2026
9c0f49a
fix(api): close hive confirmation review blockers
KareemN1936 Aug 15, 2026
73ad190
feat(api): enhance rate limiting and transaction verification
perlaimad Aug 15, 2026
c90c094
Merge branch 'hive-broadcast-reliability' of https://github.com/hdev-…
perlaimad Aug 15, 2026
909d557
fix(api): normalize timestamp format and improve error handling in br…
perlaimad Aug 15, 2026
bb3d46e
docs(README): clarify test script execution for workspace tests
perlaimad Aug 15, 2026
f90c81f
fix(ui): restore lore edit route and refresh redemption
KareemN1936 Aug 24, 2026
47cde8e
fix(api): keep header lookup failures retryable
KareemN1936 Aug 24, 2026
eefa356
style(web): format API client timeout option
KareemN1936 Aug 24, 2026
8ac7e97
Merge pull request #20 from hdev-core/feature/m2-contribution-editor-…
mcfarhat Aug 24, 2026
46d6b7b
Merge pull request #22 from hdev-core/hive-broadcast-reliability
mcfarhat Aug 24, 2026
f53240a
test(web): add contribution editor coverage
KareemN1936 Aug 30, 2026
a28c57d
feat(profile): show reputation badges and history
KareemN1936 Aug 30, 2026
d4bcfc1
Merge pull request #26 from hdev-core/feat/web-test-infrastructure
mcfarhat Sep 2, 2026
4fdf70d
fix(profile): stop leaking private drafts on the public profile endpoint
mcfarhat Sep 2, 2026
3b5c743
Merge pull request #27 from hdev-core/feat/reputation-profile-badges
mcfarhat Sep 2, 2026
6a4c642
feat(api): add canon consistency and search
KareemN1936 Sep 2, 2026
69b87d8
fix(api): model search vector in prisma schema
KareemN1936 Sep 2, 2026
1a3eab4
feat(api): add observability readiness harness
KareemN1936 Sep 5, 2026
e3585c2
fix(observability): stop a stalled webhook from hanging every failing…
mcfarhat Sep 6, 2026
221c8bc
Merge pull request #30 from hdev-core/feat/trello-35-observability-ha…
mcfarhat Sep 6, 2026
4344dd8
Merge pull request #28 from hdev-core/trello-next-3
mcfarhat Sep 6, 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
45 changes: 45 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,57 @@

# Web
NEXT_PUBLIC_API_URL=http://localhost:3001
NEXT_PUBLIC_GOOGLE_AUTH_ENABLED=false

# API
NODE_ENV=development
HOST=0.0.0.0
PORT=3001
CORS_ORIGIN=http://localhost:3000
TRUST_PROXY=false

AUTH_JWT_SECRET=replace-with-a-long-random-secret
AUTH_REFRESH_SECRET=replace-with-a-different-long-random-secret
AUTH_JWT_ISSUER=hivelore
AUTH_JWT_AUDIENCE=hivelore-web
AUTH_ACCESS_TOKEN_TTL_SECONDS=900
AUTH_REFRESH_TOKEN_TTL_SECONDS=1209600
AUTH_CHALLENGE_TTL_SECONDS=300
AUTH_COOKIE_DOMAIN=
AUTH_COOKIE_SECURE=true
PROPOSAL_COMMENT_WRITE_RATE_LIMIT_CACHE=10000
PROPOSAL_COMMENT_WRITE_RATE_LIMIT_MAX=5
PROPOSAL_COMMENT_WRITE_RATE_LIMIT_WINDOW_SECONDS=60
HIVE_RPC_URL=https://api.hive.blog
HIVE_AUTH_AUDIENCE=hivelore-local-api
HIVE_MAINNET_CHAIN_ID=beeab0de00000000000000000000000000000000000000000000000000000000
HIVE_MAINNET_RPC_NODES=https://api.hive.blog
HIVE_MAINNET_HAF_URL=https://api.hive.blog/hafbe-api
HIVE_BROADCAST_MAX_ATTEMPTS=4
HIVE_BROADCAST_INITIAL_DELAY_MS=500
HIVE_BROADCAST_MAX_DELAY_MS=5000
HIVE_BROADCAST_BACKOFF_MULTIPLIER=2
HIVE_BROADCAST_JITTER_RATIO=0.2
HIVE_BROADCAST_TIMEOUT_MS=10000
HIVE_BROADCAST_TOTAL_DEADLINE_MS=90000
HIVE_CONFIRMATION_POLL_INTERVAL_MS=3000
HIVE_CONFIRMATION_TIMEOUT_MS=60000
HIVE_NODE_MAX_CONSECUTIVE_FAILURES=1
HIVE_NODE_COOLDOWN_MS=30000

# Local-only irreversible Hive mainnet smoke command inputs.
# Set these only in your local shell when running the smoke script; never commit real keys.
HIVE_SMOKE_ACCOUNT=

GOOGLE_AUTH_ENABLED=false
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GOOGLE_REDIRECT_URI=http://localhost:3001/auth/google/callback

GOOGLE_HIVE_PROVISIONING_ENABLED=false
HIVE_RC_DELEGATION_ENABLED=false
HIVE_RC_DELEGATOR_ACCOUNT=
HIVE_RC_DELEGATION_AMOUNT=

# PostgreSQL application connection through the Supabase pooler.
DATABASE_URL="postgresql://USER:PASSWORD@POOLER_HOST:6543/postgres?pgbouncer=true"
Expand Down
52 changes: 45 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,28 @@ permissions:
env:
CI: true
NEXT_PUBLIC_API_URL: http://localhost:3001
DATABASE_URL: postgresql://USER:PASSWORD@POOLER_HOST:6543/postgres?pgbouncer=true
DIRECT_URL: postgresql://USER:PASSWORD@DIRECT_HOST:5432/postgres
DATABASE_URL: postgresql://postgres:postgres@127.0.0.1:5432/postgres
DIRECT_URL: postgresql://postgres:postgres@127.0.0.1:5432/postgres

jobs:
quality:
name: Quality
runs-on: ubuntu-latest
timeout-minutes: 20
services:
postgres:
image: postgres:16
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgres
ports:
- 5432:5432
options: >-
--health-cmd "pg_isready -U postgres -d postgres"
--health-interval 10s
--health-timeout 5s
--health-retries 5

steps:
- name: Checkout
Expand All @@ -33,9 +48,6 @@ jobs:
- name: Install dependencies
run: npm ci

- name: Check formatting
run: npm run format:check

- name: Format Prisma schema
run: npm run db:format

Expand All @@ -45,11 +57,37 @@ jobs:
- name: Generate Prisma Client
run: npm run db:generate

- name: Lint
run: npm run lint
- name: Check fresh PostgreSQL migrations
run: npm run db:migrate:check:fresh
env:
TEST_DATABASE_ADMIN_URL: postgresql://postgres:postgres@127.0.0.1:5432/postgres

- name: Check PostgreSQL migration upgrade from develop
run: |
git fetch origin develop --depth=1
mkdir -p /tmp/hivelore-develop
git archive origin/develop apps/api/prisma | tar -x -C /tmp/hivelore-develop
npm run db:migrate:check:upgrade
env:
TEST_DATABASE_ADMIN_URL: postgresql://postgres:postgres@127.0.0.1:5432/postgres
TEST_DATABASE_BASE_PRISMA_SCHEMA: /tmp/hivelore-develop/apps/api/prisma/schema.prisma

- name: Type-check
run: npm run typecheck

- name: Test
run: npm test
env:
NODE_ENV: test
AUTH_JWT_SECRET: test-only-jwt-secret-with-enough-entropy
AUTH_REFRESH_SECRET: test-only-refresh-secret-with-enough-entropy
TEST_DATABASE_ADMIN_URL: postgresql://postgres:postgres@127.0.0.1:5432/postgres

- name: Lint
run: npm run lint

- name: Check formatting
run: npm run format:check

- name: Build
run: npm run build
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ build/Release
# Dependency directories
node_modules/
jspm_packages/
.worktrees/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/
Expand Down
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
node_modules
.worktrees
.next
dist
coverage
Expand Down
Loading
Loading