TenantAtlas/specs/246-support-request-context/checklists/requirements.md
ahmido 6e3736a53f
Some checks failed
Main Confidence / confidence (push) Failing after 1m29s
Add in-app support request with context (#285)
## 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
2026-04-27 12:51:39 +00:00

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
  • SupportRequest ownership is explicit as tenant-owned, with required not-null workspace_id and tenant_id
  • Support-request context remains provider-neutral and redaction-aware
  • Existing /admin authorization 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 SupportRequests test 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, and tasks.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.