Some checks failed
Main Confidence / confidence (push) Failing after 1m29s
## Summary - add the first in-app support request flow with an immutable `SupportRequest` record, canonical context builder, submission service, and generated internal reference - expose contextual support-request actions from the tenant dashboard and operation run surfaces, including audit logging and support-safe diagnostic capture rules - add Pest coverage plus the `specs/246-support-request-context` artifacts for the new support-request slice ## Testing - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/SupportRequests/OperationRunSupportRequestActionTest.php tests/Feature/SupportRequests/SupportRequestAuditTest.php tests/Feature/SupportRequests/SupportRequestAuthorizationTest.php tests/Feature/SupportRequests/TenantSupportRequestActionTest.php tests/Unit/Support/SupportRequests/SupportRequestContextBuilderTest.php tests/Unit/Support/SupportRequests/SupportRequestReferenceTest.php` ## Notes - this PR supersedes the earlier session-branch PR opened from `246-support-request-context-session-1777289015` Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #285
3.4 KiB
3.4 KiB
Specification Quality Checklist: In-App Support Request with Context
Purpose: Validate specification completeness and implementation readiness before the feature moves into the implementation loop
Created: 2026-04-27
Feature: spec.md
Content Quality
- Business value and operator outcomes stay explicit
- The first slice is bounded to two existing support-aware entry surfaces plus one internal support reference only
- Runtime-governance sections are present for an implementation-ready package
- All mandatory sections are completed
Requirement Completeness
- No
[NEEDS CLARIFICATION]markers remain - Requirements are testable and unambiguous
- Acceptance scenarios are defined for the primary user journeys
- Edge cases are identified, including reduced-attachment mode and missing related records
- Scope is clearly bounded away from external ticketing, support inboxes, request lifecycle workflow, and customer-facing portals
- Dependencies and assumptions are identified
Feature Readiness
- The first slice is small enough for a bounded implementation loop
- The plan identifies concrete repo surfaces likely to change
- The tasks are ordered, testable, and grouped by user story
- Foundational work includes the persisted truth, capability gate, audit path, and shared context builder before surface wiring
- No unresolved product question blocks safe implementation of the first slice
Governance Readiness
- New persisted support-request truth is explicitly justified and bounded
SupportRequestownership is explicit as tenant-owned, with required not-nullworkspace_idandtenant_id- Support-request context remains provider-neutral and redaction-aware
- Existing
/adminauthorization and tenant-safe 404 versus 403 boundaries remain authoritative - Operator-facing surface changes include the required UI contract sections and action matrix
- External ticketing, status workflow, and support inbox surfaces are explicitly deferred
- Livewire v4 compliance, unchanged provider registration location, no global-search changes, no destructive-action additions, and no asset-strategy changes are explicit in the package
Test Governance Review
- Lane fit stays in focused unit plus feature validation only and matches the plan
- Fixture and helper growth stays local to the
SupportRequeststest namespace - No browser or heavy-governance family is introduced implicitly
- Minimal validation commands are explicit in both the plan and the task list
- The active feature PR close-out entry remains
Guardrail
Review Outcome
- Review outcome class:
documentation-required-exception - Workflow outcome:
document-in-feature - Final note location: active feature PR close-out entry
Guardrail
Notes
- This checklist completes the implementation-ready package alongside
spec.md,plan.md, andtasks.md. - The active slice stops at structured request creation and internal reference generation. Any later ticket-provider adapter or lifecycle management remains a separate feature.
- Guardrail close-out: focused unit and feature validation passed, live browser smoke passed on both approved entry points, the tenant dashboard exemption remained bounded to two support-aware actions, and no provider-registration, global-search, destructive-action, or asset-strategy changes were introduced.