## Summary - align verification-start tests with the canonical credential-enabled provider fixture - seed required tenant-permission evidence for provider operation start tests so inventory/compliance assertions exercise the real queued and `scopeBusy` contracts - refresh stale provider-connection and verification-report test baselines to current shared output - add the complete Spec 294 artifacts for the bounded provider/verification stabilization follow-up ## Scope - bounded to `apps/platform/tests`, shared Pest test helpers, and `specs/294-provider-verification-runtime-semantics` - no runtime application code changes under `apps/platform/app` - no schema, route-cutover, framework, or asset changes ## Validation - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Verification/VerificationAuthorizationTest.php tests/Feature/Verification/VerificationStartAfterCompletionTest.php tests/Feature/Verification/VerificationStartDedupeTest.php` - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/ProviderConnections/ProviderDispatchGateStartSurfaceTest.php tests/Feature/ProviderConnections/ProviderOperationConcurrencyTest.php` - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/ProviderConnections/ProviderConnectionNeutralitySpec238Test.php tests/Feature/Verification/ProviderConnectionHealthCheckWritesReportTest.php` - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/ProviderConnections tests/Feature/Verification` - `cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent` ## Notes - browser smoke was not run because the final diff contains no runtime app or UI changes; only tests, shared test helpers, and spec artifacts changed - provider registration remains unchanged in `apps/platform/bootstrap/providers.php` - no new globally searchable resource or destructive action behavior was introduced Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #349
64 lines
4.1 KiB
Markdown
64 lines
4.1 KiB
Markdown
# Requirements Checklist: Provider Verification Runtime Semantics Stabilization
|
|
|
|
## Scope and Problem Framing
|
|
|
|
- [x] The package is explicitly framed as the bounded post-`293` provider/verification runtime stabilization follow-up.
|
|
- [x] The primary failing lane is exactly `tests/Feature/ProviderConnections` plus `tests/Feature/Verification`.
|
|
- [x] Non-goals explicitly exclude full-suite repair, route-cutover repair, new provider abstractions, new verification schema versions, and historical-spec rewrites.
|
|
|
|
## Repo-Truth Anchoring
|
|
|
|
- [x] The targeted failing command was already rerun and confirmed as the current baseline for `294`.
|
|
- [x] The authoritative prep-time failure baseline lives in `failure-classification.md`, and other artifacts treat it as context only.
|
|
- [x] The owner seams were read directly from the repository before drafting the package.
|
|
- [x] The current canonical startable verification fixture contract is recorded as repo truth to align before widening runtime changes.
|
|
|
|
## Failure Categories and Seam Inventory
|
|
|
|
- [x] Pinned failure categories listed here: `surface-or-report-baseline-drift`, `fixture-contract-drift`, `provider-verification-runtime-regression`, `dedupe-concurrency-contract-drift`, `out-of-scope-existing-debt`, `resolved-or-not-needed`.
|
|
- [x] Pinned stabilization seams listed here: `provider-neutrality-surface`, `shared-startable-fixtures`, `verification-start-contract`, `provider-dispatch-concurrency`, `verification-report-summary`.
|
|
- [x] `spec.md`, `plan.md`, `research.md`, `data-model.md`, `quickstart.md`, `tasks.md`, `checklists/requirements.md`, and `failure-classification.md` all use the same six failure categories.
|
|
- [x] `spec.md`, `plan.md`, `research.md`, `data-model.md`, `quickstart.md`, `tasks.md`, `checklists/requirements.md`, and `failure-classification.md` all use the same five stabilization seams.
|
|
- [x] `failure-classification.md` defines one-row-per-group tracking with one seam and one category per failing group.
|
|
|
|
## Runtime Ownership and Boundedness
|
|
|
|
- [x] `StartVerification` is named as the verification start owner seam.
|
|
- [x] `ProviderOperationStartGate` is named as the provider-operation dedupe and `scopeBusy` owner seam.
|
|
- [x] `ProviderConnectionSurfaceSummary` and the target-scope helpers are named as the provider-neutral disclosure owner seams.
|
|
- [x] `MicrosoftProviderHealthCheck` and `VerificationReportSchema` are named as the report-summary owner seams.
|
|
- [x] The package introduces no new tables, persisted provider profiles, run status values, verification schema version, or abstraction family.
|
|
|
|
## Validation Workflow
|
|
|
|
- [x] The full in-scope proof command is recorded exactly.
|
|
- [x] Focused reruns are recorded for verification start, provider dispatch/concurrency, and surface/report baseline clusters.
|
|
- [x] The existing provider-connection scope browser smoke is documented as conditional reuse only for visible provider-connection disclosure changes.
|
|
- [x] Formatting closure through `./vendor/bin/sail bin pint --dirty --format agent` is recorded.
|
|
|
|
## Related-Spec Guardrails
|
|
|
|
- [x] Spec `293` is explicitly treated as context only and not a refresh target.
|
|
- [x] Specs `238`, `188`, `084`, and `074` are explicitly treated as historical context only.
|
|
- [x] The manual follow-up status is documented because the automatic candidate queue is intentionally empty.
|
|
|
|
## Filament and Platform Guardrails
|
|
|
|
- [x] Livewire v4.0+ compliance is stated explicitly.
|
|
- [x] Provider registration remains in `apps/platform/bootstrap/providers.php`.
|
|
- [x] No new globally-searchable resource is introduced.
|
|
- [x] No new destructive action or new asset strategy is introduced.
|
|
|
|
## Implementation Close-Out
|
|
|
|
- [x] Application implementation stayed bounded to the active ProviderConnections plus Verification lane.
|
|
- [x] The implementation resolved the seven tracked failure groups without widening into route-cutover, full-suite, provider-framework, or schema-version work.
|
|
- [x] The final bounded lane rerun is green at `109 passed`.
|
|
|
|
## Outcome
|
|
|
|
- [x] Review outcome class: `acceptable-special-case`
|
|
- [x] Workflow outcome: `keep`
|
|
- [x] Test-governance outcome: `keep`
|
|
- [x] `294` is ready for bounded implementation.
|