- Replace form_urlencoded with RFC 3986 compliant URI encoding - Implement aws_uri_encode() matching AWS SigV4 spec exactly - Unreserved chars (A-Z,a-z,0-9,-,_,.,~) not encoded - All other chars percent-encoded with uppercase hex - Preserve slashes in paths, encode in query params - Normalize empty paths to '/' per AWS spec - Fix test expectations (body hash, HMAC values) - Add comprehensive SigV4 signature determinism test This fixes the canonicalization mismatch that caused signature validation failures in T047. Auth can now be enabled for production. Refs: T058.S1
202 lines
5.6 KiB
YAML
202 lines
5.6 KiB
YAML
id: T049
|
|
name: Component Audit - 全コンポーネント総点検
|
|
goal: Review all 13 PhotonCloud components for obsolete code, feature completeness, and outstanding TODOs
|
|
status: active
|
|
priority: P1
|
|
owner: peerA
|
|
created: 2025-12-12
|
|
depends_on: []
|
|
blocks: []
|
|
|
|
context: |
|
|
**User Direction (2025-12-12):**
|
|
"これまで作られたコンポーネントを振り返って一つ一つのコンポーネントについて
|
|
obsoleteな実装が含まれていないか、機能は十分か、TODOはないかなどを
|
|
確認する総合的な長期タスク"
|
|
|
|
PROJECT.md守るべき事柄 #10:
|
|
"完璧な一つの実装を作ることに専念してほしい"
|
|
|
|
This is a systematic health check to ensure production readiness.
|
|
|
|
acceptance:
|
|
- All 13 components audited
|
|
- Obsolete code identified and removed
|
|
- TODO comments catalogued and prioritized
|
|
- Feature gaps documented per PROJECT.md requirements
|
|
- Each component has clear "production ready" or "needs work" status
|
|
|
|
steps:
|
|
- step: S1
|
|
name: ChainFire Audit
|
|
done: Review chainfire for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] Custom Raft implementation complete (T041)?
|
|
- [ ] OpenRaft remnants removed?
|
|
- [ ] Gossip layer implemented?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S2
|
|
name: IAM (Aegis) Audit
|
|
done: Review iam for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] Multiple auth methods (PROJECT.md Item 2)?
|
|
- [ ] mTLS service-to-service auth?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S3
|
|
name: FlareDB Audit
|
|
done: Review flaredb for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] SQL layer complete (T037)?
|
|
- [ ] Strong/eventual consistency modes (PROJECT.md Item 3)?
|
|
- [ ] High performance validated?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S4
|
|
name: PlasmaVMC Audit
|
|
done: Review plasmavmc for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] Multiple VM backends (KVM, FireCracker, mvisor)?
|
|
- [ ] CreditService integration (T045)?
|
|
- [ ] HA gaps (T040 documented)?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S5
|
|
name: LightningSTOR Audit
|
|
done: Review lightningstor for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] S3 API complete (T047)?
|
|
- [ ] FlareDB metadata integration?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S6
|
|
name: FlashDNS Audit
|
|
done: Review flashdns for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] PowerDNS replacement features?
|
|
- [ ] Route53-like API?
|
|
- [ ] Subnet mask reverse DNS?
|
|
- [ ] TODO comments
|
|
|
|
- step: S7
|
|
name: FiberLB Audit
|
|
done: Review fiberlb for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] Maglev L4 LB?
|
|
- [ ] BGP Anycast?
|
|
- [ ] L7 LB?
|
|
- [ ] TODO comments
|
|
|
|
- step: S8
|
|
name: k8shost Audit
|
|
done: Review k8shost for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P0
|
|
notes: |
|
|
Check:
|
|
- [ ] CreditService integration (T045.S4)?
|
|
- [ ] CNI + PrismNET integration?
|
|
- [ ] TODO comments
|
|
- [ ] Test coverage
|
|
|
|
- step: S9
|
|
name: PrismNET Audit
|
|
done: Review prismnet for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] OVN integration complete?
|
|
- [ ] Multi-tenant isolation?
|
|
- [ ] TODO comments
|
|
|
|
- step: S10
|
|
name: NightLight Audit
|
|
done: Review nightlight for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] PromQL complete?
|
|
- [ ] Push ingestion working?
|
|
- [ ] mTLS (PROJECT.md Item 12)?
|
|
- [ ] Persistence layer?
|
|
- [ ] TODO comments
|
|
|
|
- step: S11
|
|
name: CreditService Audit
|
|
done: Review creditservice for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] Wallet management?
|
|
- [ ] Admission control?
|
|
- [ ] Billing batch?
|
|
- [ ] Persistent storage (currently InMemory)?
|
|
- [ ] TODO comments
|
|
|
|
- step: S12
|
|
name: Baremetal Provisioning Audit
|
|
done: Review baremetal for obsolete code, TODOs, feature completeness
|
|
status: complete
|
|
priority: P1
|
|
notes: |
|
|
Check:
|
|
- [ ] PXE boot working?
|
|
- [ ] NixOS image builder?
|
|
- [ ] First-boot automation?
|
|
- [ ] TODO comments
|
|
|
|
- step: S13
|
|
name: Audit Summary & Remediation Plan
|
|
done: Compile findings and prioritize fixes
|
|
status: pending
|
|
owner: peerA
|
|
priority: P0
|
|
notes: |
|
|
Output: docs/por/T049-component-audit/FINDINGS.md
|
|
- Summary table of all components
|
|
- Critical issues requiring immediate fix
|
|
- Nice-to-have improvements
|
|
- Recommended task creation for major gaps
|
|
|
|
evidence: []
|
|
notes: |
|
|
**Strategic Value:**
|
|
- Ensures production readiness before T039
|
|
- Identifies technical debt before it compounds
|
|
- Validates PROJECT.md requirements are met
|
|
- Creates clear remediation roadmap
|
|
|
|
**Execution Approach:**
|
|
- Can run in parallel with T045.S4, T047
|
|
- Each audit step is independent
|
|
- Quick scan pattern: grep TODO, review exports, check PROJECT.md alignment
|