Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,20 @@ All version responses include a `stale` field that indicates whether the data wa

- `GET /central-alerts/v1/list` - Public endpoint for fetching active alerts.

### Extensions v2 ownership verification

For organization developer IDs, GitHub membership is used for automatic
verification only when the API has a valid, unexpired membership snapshot. A
fresh snapshot that does not contain the organization remains a confirmed
mismatch and is rejected. Missing, malformed, or expired evidence is
inconclusive instead: a new profile remains unapproved and a claim remains
pending for manual moderator review. Moderators must verify ownership through
their normal out-of-band process before approving either workflow.

`github_org_verified` being absent or `null` is a review signal, not proof of
ownership or an authorization grant. Consumers and moderation tooling must not
treat an inconclusive result as verified.

## Configuration

If you're running this yourself, you'll need a few things set up.
Expand Down
2 changes: 1 addition & 1 deletion src/services/extensions/v2/db/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ export const developers = sqliteTable(
githubOrgVerified: integer("github_org_verified"),
githubVerificationNote: text("github_verification_note"),
// Set whenever githubOrgVerified is (re-)computed to a definitive 0/1 —
// see DevelopersDatabase.reverifyOwn(). Left null/stale on an
// see DeveloperProfilesDatabase.reverifyOwn(). Left null/stale on an
// inconclusive check (no linked GitHub identity), same as
// githubOrgVerified itself.
githubVerifiedAt: text("github_verified_at"),
Expand Down
Loading
Loading