aboutsummaryrefslogtreecommitdiff
path: root/docs/roadmap.md
blob: 59eb6c99a410ae108f946c27ba253baa167604dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# v0.1.0 Roadmap

Initial release of the routing/middleware kernel.

## Proposed beads

### [EPIC] miniroute v0.1.0 — attribute routing + middleware kernel

- Type: epic
- Priority: P2

Children (create with `--parent`):

1. **Core: attribute route declaration and reflection loader**
   - Type: task, Priority: P2
   - Description: Implement `Get`/`Post`/`Put`/`Patch`/`Delete`/`Middleware`
     attributes and `RouteLoader` reflection scanning.
   - Acceptance: `RouteLoaderTest` passes.

2. **Core: deterministic route matching**
   - Type: task, Priority: P2
   - Description: `RouteMatcher` with `{param}` support and
     literal-before-parameter precedence.
   - Acceptance: `RouteMatcherTest` passes.

3. **Core: middleware pipeline and groups**
   - Type: task, Priority: P2
   - Description: `MiddlewarePipeline` onion composition and router-level
     `group()` prefix middleware.
   - Acceptance: `MiddlewarePipelineTest` and router group coverage pass.

4. **Core: controller resolution and dispatch**
   - Type: task, Priority: P2
   - Description: `ControllerResolverInterface` seam and `Router::dispatch`.
   - Acceptance: `RouterTest` passes.

5. **Tests: unit coverage for loader/matcher/pipeline/router**
   - Type: task, Priority: P2
   - Acceptance: `vendor/bin/phpunit` green.

6. **Docs: ADRs, README, usage**
   - Type: task, Priority: P2

7. **Release: Composer metadata and git tags**
   - Type: task, Priority: P2
   - Description: `composer.json` PSR-4 autoload, MIT license, tag `v0.1.0`.

8. **Repo: publish to src.brett-parson.com**
   - Type: task, Priority: P2
   - Description: Add cgit remote, push, set `git-daemon-export-ok` marker.