Admin Guide

This guide is for administrators managing proposals, guest access, and data exports.

Admin Access

Admin privileges are controlled via the ADMIN_USERS environment variable:

ADMIN_USERS=username1,username2,username3

Once configured, admin users will see:

  • Admin and Guest Codes links in the top navigation
  • "Admin" badge next to their username
  • Access to proposal management, guest code management, and export tools

KE-WP Proposal Management

Viewing Proposals

Navigate to Admin to access the KE-WP proposals dashboard with:

  • Filterable table of all proposals
  • Status indicators (Pending / Approved / Rejected)
  • User contact information and provenance details
  • Proposed changes detailed view

Reviewing Proposals

  1. Click View Details to see full proposal information
  2. Review the proposed changes:
    • New mapping submission (proposal-first workflow)
    • Delete mapping request
    • Confidence level change
    • Connection type modification
  3. Check user rationale and contact information

Approving Proposals

  1. Click Approve button
  2. Changes are immediately applied to the mapping (or a new mapping is created)
  3. Provenance fields (approved_by, approved_at) are recorded
  4. Proposal status updated to "Approved"

Rejecting Proposals

  1. Click Reject button
  2. Optionally add admin notes explaining the rejection
  3. Proposal status updated to "Rejected"
  4. Original mapping remains unchanged

KE-GO Proposal Management

GO mapping proposals are managed separately. Access via the GO Proposals link on the admin page, or navigate directly to /admin/go-proposals.

The workflow is the same as KE-WP proposals: review, approve (creates/updates GO mapping), or reject with notes.

Guest Code Management

Workshop participants can log in with temporary access codes instead of GitHub OAuth. Manage codes at Guest Codes in the navigation or /admin/guest-codes.

Creating Guest Codes

  1. Click Create Code
  2. The system generates a unique access code
  3. Share the code with workshop participants

Revoking Guest Codes

Click Revoke next to any active code to disable it immediately. Revoked codes cannot be used to log in.

Export & Publication

Admin users can regenerate export files and publish to Zenodo from the admin interface:

  • Regenerate exports: Rebuilds GMT and RDF files in static/exports/
  • Publish to Zenodo: Uploads the latest dataset to Zenodo for DOI assignment

Database Management

The application uses SQLite with automatic migrations on startup. The database is stored in the data/ directory.

Tables

TablePurpose
mappingsKE-WP mapping entries with UUID and provenance
proposalsChange proposals for KE-WP mappings
ke_go_mappingsKE-GO BP mapping entries with UUID and provenance
ke_go_proposalsChange proposals for KE-GO mappings
sparql_cacheCached SPARQL query responses (24-hour expiry)
Important: All admin actions are logged with timestamps and usernames for accountability. Audit trails are maintained in the database via provenance columns.

User Management

User access is managed through:

  • GitHub OAuth for authentication (primary)
  • Guest access codes for workshop participants (admin-managed)
  • Environment variable whitelist for admin privileges