tasks: decompose Phase 1 core modifications into 12 atomic implementation tasks
Phase 1 of the integration plan modifies alknet-core to support the architectural changes from Phase 0 ADRs and specs. Decomposed into dependency-ordered tasks across config split, identity, forwarding policy, OperationEnv, interface abstraction, and NAPI reload API. Critical path: config-split → identity → forwarding → wire-into-handler → interface-trait → ssh-interface-extraction → review. Two highest-risk tasks (interface-trait-definition, ssh-interface-extraction) are split from §1.8 per the integration plan's note that it may need sub-phases. OperationEnv is split into types and runtime per Phase 1 local-dispatch-only constraint.
This commit is contained in:
62
tasks/review/phase1-core-modifications.md
Normal file
62
tasks/review/phase1-core-modifications.md
Normal file
@@ -0,0 +1,62 @@
|
||||
---
|
||||
id: review/phase1-core-modifications
|
||||
name: Review Phase 1 core modifications — config split, identity, forwarding, OperationEnv, interface abstraction
|
||||
status: pending
|
||||
depends_on:
|
||||
- core/ssh-interface-extraction
|
||||
- core/operationenv-local-dispatch
|
||||
- core/auth-service-irpc
|
||||
- core/config-service-irpc
|
||||
- core/napi-reload-api
|
||||
scope: broad
|
||||
risk: medium
|
||||
impact: project
|
||||
level: review
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Review the Phase 1 core modifications after all implementation tasks are complete. This is a quality checkpoint before Phase 2 (external crates) and Phase 3 (integration/wiring).
|
||||
|
||||
**Review checklist**:
|
||||
1. All ADRs (026-034) are correctly reflected in implementation
|
||||
2. Crate dependencies are acyclic — core doesn't depend on secret, storage, or flowgraph
|
||||
3. Terminology is consistent — head/worker everywhere, no hub/spoke remaining
|
||||
4. Layer boundaries are clean — Interface produces call protocol events, Protocol is agnostic
|
||||
5. `IdentityProvider` trait is the sole contract for auth — no direct `ServerAuthConfig` usage remains
|
||||
6. `DynamicConfig` + ArcSwap provides hot-reload for auth and forwarding
|
||||
7. `ForwardingPolicy` default-allow preserves current behavior
|
||||
8. OperationEnv local dispatch works correctly through the registry
|
||||
9. Feature flags (`irpc`) compile correctly — core without feature flag has no irpc dependency
|
||||
10. All existing tests pass
|
||||
11. New test coverage for config reload, identity resolution, forwarding policy
|
||||
12. NAPI reload API functions correctly
|
||||
13. Interface trait and SshInterface extraction don't break SSH tunnel functionality
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] Code adheres to architecture specs (configuration.md, identity.md, interface.md, call-protocol.md, services.md)
|
||||
- [ ] Patterns are consistent (IdentityProvider, DynamicConfig/ArcSwap, OperationEnv, Interface trait)
|
||||
- [ ] Tests cover core functionality: config hot-reload, identity resolution, forwarding policy evaluation, local dispatch
|
||||
- [ ] No cargo build errors or warnings
|
||||
- [ ] All feature flag combinations compile: default, irpc, tls, iroh, acme
|
||||
- [ ] Documentation comments reference ADR numbers
|
||||
- [ ] Phase 1 implementation notes are filled in on all task files
|
||||
|
||||
## References
|
||||
|
||||
- docs/architecture/overview.md
|
||||
- docs/architecture/configuration.md
|
||||
- docs/architecture/identity.md
|
||||
- docs/architecture/interface.md
|
||||
- docs/architecture/call-protocol.md
|
||||
- docs/architecture/services.md
|
||||
- docs/architecture/decisions/ (ADR-026 through ADR-034)
|
||||
|
||||
## Notes
|
||||
|
||||
> To be filled by review agent
|
||||
|
||||
## Summary
|
||||
|
||||
> To be filled on completion
|
||||
Reference in New Issue
Block a user