Skip to content

Initial version#1

Merged
streaky merged 26 commits into
mainfrom
initial-version
Jul 3, 2026
Merged

Initial version#1
streaky merged 26 commits into
mainfrom
initial-version

Conversation

@streaky

@streaky streaky commented Jul 1, 2026

Copy link
Copy Markdown
Owner

This pull request introduces foundational infrastructure, documentation, and core authentication/authorization logic for the acme.api project. It sets up the project for local development and CI, provides comprehensive documentation, and implements a robust API key-based authentication and RBAC system. The most important changes are summarized below.

Project Infrastructure and Tooling

  • Added a Dockerfile for multi-stage builds, supporting isolated dependency installation, non-root execution, and health checks.
  • Introduced .dockerignore to exclude development and cache files from Docker builds.
  • Added a Makefile with targets for development, testing, linting, formatting, type checking, and CI simulation.
  • Created a GitHub Actions workflow (ci.yml) for automated quality gates and tests on push and PRs.
  • Added .env for pytest coverage configuration and a VSCode workspace file for development convenience. [1] [2]

Documentation

  • Overhauled README.md with project overview, warnings, quick start, architecture, API reference, and configuration instructions.
  • Added AGENTS.md with project structure, development standards, and command reference for future contributors and agents.

Authentication and Authorization System

  • Implemented API key hashing and verification using PBKDF2-SHA512 (acme_api/auth/hash.py), including the AuthenticatedUser dataclass and custom exceptions for authentication errors.
  • Added RBAC dependencies for FastAPI endpoints (acme_api/auth/rbac.py), providing require_admin, require_operator, and require_readonly for role-based access control.
  • Provided a bootstrap routine to seed initial API keys from configuration (acme_api/auth/bootstrap.py).
  • Updated package initializers and added module docstrings. [1] [2]

These changes collectively establish the groundwork for secure, maintainable, and well-documented development of the acme.api service.

This comment was marked as outdated.

This comment was marked as outdated.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 82 out of 84 changed files in this pull request and generated 3 comments.

Comment thread alembic/env.py
Comment thread acme_api/webhooks.py
Comment thread tests/test_alembic.py
@streaky
streaky marked this pull request as ready for review July 3, 2026 22:45
@streaky
streaky merged commit a4393f8 into main Jul 3, 2026
1 check passed
@streaky
streaky deleted the initial-version branch July 3, 2026 23:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants