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.
2.5 KiB
2.5 KiB
id, name, status, depends_on, scope, risk, impact, level
| id | name | status | depends_on | scope | risk | impact | level | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| review/phase1-core-modifications | Review Phase 1 core modifications — config split, identity, forwarding, OperationEnv, interface abstraction | pending |
|
broad | medium | project | 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:
- All ADRs (026-034) are correctly reflected in implementation
- Crate dependencies are acyclic — core doesn't depend on secret, storage, or flowgraph
- Terminology is consistent — head/worker everywhere, no hub/spoke remaining
- Layer boundaries are clean — Interface produces call protocol events, Protocol is agnostic
IdentityProvidertrait is the sole contract for auth — no directServerAuthConfigusage remainsDynamicConfig+ ArcSwap provides hot-reload for auth and forwardingForwardingPolicydefault-allow preserves current behavior- OperationEnv local dispatch works correctly through the registry
- Feature flags (
irpc) compile correctly — core without feature flag has no irpc dependency - All existing tests pass
- New test coverage for config reload, identity resolution, forwarding policy
- NAPI reload API functions correctly
- 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