Skip to content

Milestones

List view

  • Port and expand the test suite 1. Unit Tests * Test individual middleware components * Validate error handling scenarios * Test payment validation logic

    No due date
    0/4 issues closed
  • Create Python equivalents of TypeScript interfaces Tasks: * Create PaymentMiddlewareOptions model * Implement BSVPayment data structure * Define PaymentResult and related types

    No due date
    4/4 issues closed
  • Port the main payment processing functionality Tasks: Payment Middleware Class * createPaymentMiddleware() function to Python class * Implement request price calculation interface * Handle wallet integration and validation Payment Flow Implementation * Implement 402 Payment Required response logic * Port BSV payment header parsing and validation * Handle derivation prefix creation and verification Transaction Processing * wallet.internalizeAction() (Depends on WalletToolbox work below) * Implement payment result handling * Add proper error handling and status codes

    No due date
    9/10 issues closed
  • Implement advanced features and optimizations Tasks: * 7.1 Port well-known endpoint handling /.well-known/auth * 7.2 Allow users to set log level for debugging.

    No due date
    2/3 issues closed
  • Ensure reliability and usability Tasks: * 6.1 Port existing test suite to Python testing framework * 6.2 Create integration tests for chosen web framework * 6.3 Add performance benchmarks * 6.4 Write comprehensive API documentation * 6.5 Create usage examples and tutorials * 6.6 Add security testing and validation

    No due date
    2/7 issues closed
  • Create seamless web framework integration Tasks: * 5.1 Implement middleware factory function (equivalent to createAuthMiddleware) * 5.2 Port authentication options and configuration * 5.3 Handle authenticated vs unauthenticated request routing * 5.4 Implement request decoration with auth context * 5.5 Port error handling and response formatting * 5.6 Add middleware chaining support

    No due date
    6/7 issues closed
  • Implement certificate handling and verification Tasks: * 4.1 Port certificate request/response logic * 4.5 Implement revocation checking capabilities * 4.6 Add certificate validation utilities

    No due date
    2/4 issues closed
  • Implement BRC-103 mutual authentication logic Tasks: * 3.1 Port AuthMessage building from HTTP requests * 3.2 Implement cryptographic handshake logic * 3.3 Port nonce handling and replay prevention * 3.4 Implement peer identity verification * 3.5 Port session management functionality * 3.6 Handle authentication state tracking

    No due date
    6/7 issues closed
  • Port the ExpressTransport class and HTTP handling logic Tasks: * 2.1 Implement Python Transport interface/abstract base class * 2.2 Port ExpressTransport class for chosen web framework * 2.3 Implement request/response payload building functions * 2.4 Port HTTP header parsing and BRC-104 compliance * 2.5 Handle multipart/form-data and various content types * 2.6 Implement response interception and modification

    No due date
    4/7 issues closed
  • Establish the foundational Python environment and dependencies * 1.1 Set up Python project structure (pyproject.toml, requirements, etc.) * 1.2 Research and integrate BSV SDK Python equivalent * 1.3 Choose web framework (Flask/FastAPI/Django) for middleware integration * 1.4 Set up logging framework compatible with configurable log levels * 1.5 Create base interfaces and type definitions (Transport, AuthRequest, etc.)

    No due date
    5/6 issues closed