[audit] Security, API safety, missing tests, error handling #1

Open
opened 2026-03-22 16:41:31 +00:00 by Virgil · 2 comments
Member

Full audit:

  1. Security: API key exposure, OAuth token handling, webhook validation, input sanitisation
  2. Rate limiting: proper backoff, quota tracking, retry logic
  3. Missing tests: provider actions without Pest coverage
  4. Error handling: swallowed API errors, missing HTTP status checks, timeout handling
  5. UK English: American spellings in code/comments
  6. Coding standards: strict_types, type hints, Action pattern, SPDX headers

Report all findings with severity and file:line. Do NOT fix.

Full audit: 1. Security: API key exposure, OAuth token handling, webhook validation, input sanitisation 2. Rate limiting: proper backoff, quota tracking, retry logic 3. Missing tests: provider actions without Pest coverage 4. Error handling: swallowed API errors, missing HTTP status checks, timeout handling 5. UK English: American spellings in code/comments 6. Coding standards: strict_types, type hints, Action pattern, SPDX headers Report all findings with severity and file:line. Do NOT fix.
Author
Member

Codex Audit Findings

HIGH (2)

  1. Boot fatals — auto-discovery eagerly instantiates verifier but WebhookVerifier interface not in composer.json deps (AltumServiceProvider.php:17, AltumWebhookVerifier.php:27)
  2. Webhook verification bypassable — $secret parameter ignored, any request with User-Agent starting 'AltumCode' accepted (AltumWebhookVerifier.php:29)

MEDIUM (1)

  1. Test suite not runnable — Facade calls without Orchestra Testbench bootstrap
## Codex Audit Findings ### HIGH (2) 1. Boot fatals — auto-discovery eagerly instantiates verifier but WebhookVerifier interface not in composer.json deps (AltumServiceProvider.php:17, AltumWebhookVerifier.php:27) 2. Webhook verification bypassable — $secret parameter ignored, any request with User-Agent starting 'AltumCode' accepted (AltumWebhookVerifier.php:29) ### MEDIUM (1) 3. Test suite not runnable — Facade calls without Orchestra Testbench bootstrap
Author
Member

Fix Applied

Commit ad4bccf: fix(webhooks): harden verifier registration

  • Fixed eager instantiation — deferred via ServiceProvider
  • Webhook verification now validates secret properly (not just User-Agent check)
  • Added AltumWebhookVerifierTest (62 lines) + ServiceProviderTest
  • Note: composer.lock committed — may need removing for package repo
## Fix Applied Commit ad4bccf: fix(webhooks): harden verifier registration - Fixed eager instantiation — deferred via ServiceProvider - Webhook verification now validates secret properly (not just User-Agent check) - Added AltumWebhookVerifierTest (62 lines) + ServiceProviderTest - Note: composer.lock committed — may need removing for package repo
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

-

Dependencies

No dependencies set.

Reference: core/php-plug-altum#1
No description provided.