liberusoftware / liberusoftware/module-ecommerce-reporting
No published query lists a tenant's runs, so a surface cannot offer a run picker
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Found while building module-ecommerce-reporting-livewire.
Queries\ListRunResults answers two questions: the newest run that succeeded (runId null), and one run by id. There is nothing in between.
A surface that wants to show "the last seven runs, and which of them refused something" — which the runbook question "is this module one that has never run, or one with nothing to report" invites — has no published route to it. The only way to get a list of runs is ReportRun::query(), and reaching for a domain model is forbidden in an -api package by BoundaryAssertions::apiAdapterAvoidsDomainModels and by every surface package's own boundary suite.
So the Livewire package ships no run history and no run picker. A host that wants one has to pass a runId it obtained from somewhere this module does not publish.
A ListRuns(string $tenantId, int $limit) returning list<RunReport> — the DTO already exists and already carries the window, the counts and the refusals — would close it without adding a table or a decision.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with Queries\ListRunResults and the existing RunReport DTO, then inspect the API package's published query registrations and boundary tests, including BoundaryAssertions::apiAdapterAvoidsDomainModels. Add the tenant-scoped ListRuns query with its limit and verify that it returns the existing DTOs without reaching for domain models.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 74/100