Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fb68a12b86 | |||
| 5dd9f4dbc6 | |||
| 01ec869a35 | |||
| cfb8acea58 | |||
| 3a56a9f4f3 | |||
| cf33100c4b | |||
| ca91ebeae9 | |||
| 8ffcdf53db | |||
| dac39c8fa7 | |||
| 5fccccb0ed | |||
| d8cc0402a3 | |||
| 1982e74aaf | |||
| 64f1d1bd12 | |||
| daa3866926 | |||
| 2208c61ff1 | |||
| 99ffdf48c4 | |||
| 2eadeeb4ee | |||
| a30834db51 | |||
| b4460ad818 | |||
| e228f61c21 | |||
| 80f4d5be22 | |||
| ee224fba3d | |||
| 8f26dff2f6 | |||
| a2f45be7f1 |
+19
-12
@@ -6,9 +6,11 @@ Cross-repo milestones. Per-API phases live in each API repo's ROADMAP.md.
|
|||||||
|
|
||||||
## Phase 0 — Orientation (one-time)
|
## Phase 0 — Orientation (one-time)
|
||||||
- [x] Audit cluster: nodes, namespaces, ingress, Flux state → `docs/cluster-audit.md` (issue #36 — closed ✅)
|
- [x] Audit cluster: nodes, namespaces, ingress, Flux state → `docs/cluster-audit.md` (issue #36 — closed ✅)
|
||||||
- [ ] Add Flux GitRepository + Kustomization watching `leeworks-agents/api-company`
|
- [ ] Add Flux GitRepository + Kustomization watching `leeworks-agents/api-company` — issue #2 (Talos PR implementation: issue #187)
|
||||||
- [ ] Deploy `gitea-act-runner` in cluster via Flux HelmRelease (`flux/gitea-runner/`)
|
- [ ] Deploy `gitea-act-runner` in cluster via Flux HelmRelease (`flux/gitea-runner/`) — issue #3
|
||||||
- [ ] Stand up `registry.leeworks.dev` (container registry) — required before any API CI works
|
- [ ] Stand up `registry.leeworks.dev` (container registry) — required before any API CI works — issue #4
|
||||||
|
- [ ] Validate ESO HelmRelease deployment and ExternalSecret sync for all 4 API namespaces — issue #178
|
||||||
|
- [ ] Extend full-stack Flux validation checklist to cover VIN Decoder — issue #179 (extends #66)
|
||||||
|
|
||||||
## Phase 1 — API Contracts
|
## Phase 1 — API Contracts
|
||||||
Each API repo writes its `openapi.yaml` first and lints it. Spec is the source of truth.
|
Each API repo writes its `openapi.yaml` first and lints it. Spec is the source of truth.
|
||||||
@@ -16,23 +18,25 @@ Each API repo writes its `openapi.yaml` first and lints it. Spec is the source o
|
|||||||
|
|
||||||
## Phase 2 — Data
|
## Phase 2 — Data
|
||||||
Per-API: pull free public data sources, cache locally (SQLite or in-memory), schedule monthly re-seed.
|
Per-API: pull free public data sources, cache locally (SQLite or in-memory), schedule monthly re-seed.
|
||||||
- VIN Decoder: NHTSA vPIC as data source — SQLite cache seeded on demand (issue #120)
|
- [x] VIN Decoder: NHTSA vPIC as data source — SQLite cache seeded on demand (issue #120 — closed ✅)
|
||||||
|
|
||||||
## Phase 3 — Servers
|
## Phase 3 — Servers
|
||||||
Per-API: implement Fastify/FastAPI service matching `openapi.yaml` exactly. RapidAPI proxy-secret middleware on every route.
|
Per-API: implement Fastify/FastAPI service matching `openapi.yaml` exactly. RapidAPI proxy-secret middleware on every route.
|
||||||
- VIN Decoder: Fastify server implementation (issue #121)
|
- [x] VIN Decoder: Fastify server implementation (issue #121 — closed ✅)
|
||||||
|
|
||||||
## Phase 4 — Monitoring
|
## Phase 4 — Monitoring
|
||||||
- [ ] Prometheus + Grafana via Flux HelmRelease (`flux/monitoring/`)
|
- [ ] Prometheus + Grafana via Flux HelmRelease (`flux/monitoring/`) — issue #7
|
||||||
- [ ] Gatus public status page at `status.leeworks.dev`
|
- [ ] Gatus public status page at `status.leeworks.dev` — issue #8
|
||||||
- [ ] Instrument every API with `api_requests_total`, `api_response_duration_seconds`, `api_data_freshness_seconds`
|
- [x] Instrument every API with `api_requests_total`, `api_response_duration_seconds`, `api_data_freshness_seconds` (issue #27 — closed ✅)
|
||||||
|
- [x] Add Prometheus metrics endpoint to holidays service (issue #180 — closed ✅)
|
||||||
|
- [ ] Verify VIN Decoder metrics endpoint and ServiceMonitor scrape config — issue #174
|
||||||
- [x] VIN Decoder metrics instrumentation + Grafana dashboard (issue #129 — closed ✅)
|
- [x] VIN Decoder metrics instrumentation + Grafana dashboard (issue #129 — closed ✅)
|
||||||
- [x] VIN Decoder Gatus health check (issue #134 — closed ✅)
|
- [x] VIN Decoder Gatus health check (issue #134 — closed ✅)
|
||||||
|
|
||||||
## Phase 5 — Documentation site
|
## Phase 5 — Documentation site
|
||||||
- [x] `docs-site/` Astro + Redoc skeleton (issue #28 — closed ✅)
|
- [x] `docs-site/` Astro + Redoc skeleton (issue #28 — closed ✅)
|
||||||
- [x] Gitea Actions pipeline that copies per-API `openapi.yaml` files at build time (issues #29 ✅, #38 ✅, #85 ✅)
|
- [x] Gitea Actions pipeline that copies per-API `openapi.yaml` files at build time (issues #29 ✅, #38 ✅, #85 ✅)
|
||||||
- [ ] Deploy to `docs.leeworks.dev` via Flux
|
- [ ] Deploy to `docs.leeworks.dev` via Flux — issue #30
|
||||||
- [x] One SEO blog post per API minimum (issues #39 ✅ — ZIP/Holidays/AirQuality, #124 ✅ — VIN Decoder)
|
- [x] One SEO blog post per API minimum (issues #39 ✅ — ZIP/Holidays/AirQuality, #124 ✅ — VIN Decoder)
|
||||||
- [x] VIN Decoder docs page (issue #123 — closed ✅)
|
- [x] VIN Decoder docs page (issue #123 — closed ✅)
|
||||||
- [x] VIN Decoder SEO blog post (issue #124 — closed ✅)
|
- [x] VIN Decoder SEO blog post (issue #124 — closed ✅)
|
||||||
@@ -41,11 +45,14 @@ Per-API: implement Fastify/FastAPI service matching `openapi.yaml` exactly. Rapi
|
|||||||
- [x] `docs/legal/terms-of-service.md` (issue #40 — closed ✅)
|
- [x] `docs/legal/terms-of-service.md` (issue #40 — closed ✅)
|
||||||
- [x] `docs/legal/privacy-policy.md` (issue #40 — closed ✅)
|
- [x] `docs/legal/privacy-policy.md` (issue #40 — closed ✅)
|
||||||
- [x] `docs/legal/acceptable-use-policy.md` (issues #40 ✅, #89 ✅)
|
- [x] `docs/legal/acceptable-use-policy.md` (issues #40 ✅, #89 ✅)
|
||||||
- [ ] DNS: `zip.leeworks.dev`, `holidays.leeworks.dev`, `aqi.leeworks.dev`, `docs.`, `status.`, `registry.`
|
- [ ] DNS: `zip.leeworks.dev`, `holidays.leeworks.dev`, `aqi.leeworks.dev`, `docs.`, `status.`, `registry.` — issues #33, #106, #150
|
||||||
- [x] VIN Decoder DNS `vin.leeworks.dev` (issue #130 — closed ✅)
|
- [x] VIN Decoder DNS `vin.leeworks.dev` (issue #130 — closed ✅)
|
||||||
- [x] VIN Decoder RapidAPI listing (issue #131 — closed ✅ as tracker; operator action required)
|
- [x] VIN Decoder RapidAPI listing (issue #131 — closed ✅ as tracker; operator action required)
|
||||||
- [ ] PayPal linked to RapidAPI (manual, on 18th birthday)
|
- [ ] PayPal linked to RapidAPI (manual, on 18th birthday) — issue #19
|
||||||
- [ ] Paid tiers enabled on RapidAPI listings (manual)
|
- [ ] Paid tiers enabled on RapidAPI listings (manual) — issues #44 (original 3), #151 (VIN Decoder)
|
||||||
|
|
||||||
|
- [ ] Execute pre-launch checklist before go-live — issue #166
|
||||||
|
- [ ] Publish launch announcement (HN, Reddit, Twitter, Dev.to) — issue #167
|
||||||
|
|
||||||
## Revenue target
|
## Revenue target
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
# Company Status
|
# Company Status
|
||||||
|
|
||||||
_Last updated: 2026-06-01 (triage cycle — second pass)_
|
_Last updated: 2026-06-04_
|
||||||
|
|
||||||
## APIs
|
## APIs
|
||||||
| API | Spec | Code | Deployed | Listed on RapidAPI | Paying Users | MRR |
|
| API | Spec | Code | Deployed | Listed on RapidAPI | Paying Users | MRR |
|
||||||
|----------------|------|------|----------|--------------------|--------------|-----|
|
|----------------|------|------|----------|--------------------|--------------|-----|
|
||||||
| ZIP Enrichment | [~] | [~] | [ ] | [ ] | 0 | $0 |
|
| ZIP Enrichment | [x] | [x] | [ ] | [ ] | 0 | $0 |
|
||||||
| Holidays | [~] | [~] | [ ] | [ ] | 0 | $0 |
|
| Holidays | [x] | [x] | [ ] | [ ] | 0 | $0 |
|
||||||
| Air Quality | [ ] | [ ] | [ ] | [ ] | 0 | $0 |
|
| Air Quality | [x] | [x] | [ ] | [ ] | 0 | $0 |
|
||||||
| VIN Decoder | [x] | [x] | [ ] | [ ] | 0 | $0 |
|
| VIN Decoder | [x] | [x] | [ ] | [ ] | 0 | $0 |
|
||||||
|
|
||||||
Legend: [x]=done, [~]=in-progress, [ ]=not started
|
Legend: [x]=done, [~]=in-progress, [ ]=not started
|
||||||
|
|
||||||
## Infrastructure
|
## Infrastructure
|
||||||
- Cluster nodes: 3 control plane (10.0.1.3, .4, .5) + workers (testing1)
|
- Cluster nodes: 3 control plane (10.0.1.3, .4, .5) + workers (testing1)
|
||||||
- **Flux wiring (api-company):** Manifests staged at `flux/api-company-source/` — PENDING Talos merge (issue #2)
|
- **Flux wiring (api-company):** `flux/api-company-source/` — Fork PR #399 **MERGED** to leeworks-agents/Talos; upstream PR #14 open on 0xWheatyz/Talos — awaiting operator merge to activate Flux (issue #2)
|
||||||
- **Gitea Actions runner:** Flux manifest committed at `flux/gitea-runner/` — PENDING runner token secret + Talos wiring (issue #3)
|
- **Gitea Actions runner:** Flux manifest committed at `flux/gitea-runner/` — PENDING runner token secret + Talos wiring (issue #3)
|
||||||
- **Container registry:** Gitea built-in registry selected; docs/registry.md committed — PENDING Gitea packages enabled (issue #4)
|
- **Container registry:** Gitea built-in registry selected; docs/registry.md committed — PENDING Gitea packages enabled (issue #4)
|
||||||
- **Prometheus + Grafana:** Flux HelmRelease at `flux/monitoring/` — PENDING Flux wiring + Grafana secret (issue #7)
|
- **Prometheus + Grafana:** Flux HelmRelease at `flux/monitoring/` — PENDING Flux wiring + Grafana secret (issue #7)
|
||||||
@@ -23,14 +23,79 @@ Legend: [x]=done, [~]=in-progress, [ ]=not started
|
|||||||
- **Image automation:** `flux/image-automation/` — ImageRepository + ImagePolicy + ImageUpdateAutomation for all three APIs
|
- **Image automation:** `flux/image-automation/` — ImageRepository + ImagePolicy + ImageUpdateAutomation for all three APIs
|
||||||
- **VIN Decoder manifests:** `flux/vin-decoder/` — Flux HelmRelease + Kustomization committed (issue #140)
|
- **VIN Decoder manifests:** `flux/vin-decoder/` — Flux HelmRelease + Kustomization committed (issue #140)
|
||||||
|
|
||||||
## Completed This Cycle (2026-06-01 — Triage Cycle)
|
## Completed This Cycle (2026-06-04 — Sprint Planning Cycle #200/#201)
|
||||||
|
|
||||||
|
- **#200** — STATUS.md Infrastructure section updated: Flux wiring row for `flux/api-company-source/` updated to reflect Fork PR #399 **MERGED** to leeworks-agents/Talos; upstream PR #14 open on 0xWheatyz/Talos awaiting operator merge. Current Blockers updated to note upstream PR #14 as critical gate.
|
||||||
|
- **#201** — Sprint planning STATUS.md update for 2026-06-04 cycle. Issues #200 and #201 created this cycle. ROADMAP cross-reference: all 18 unchecked items confirmed grounded in open issues (no gaps). Staleness check: oldest open issue is #2 from 2026-05-18 (17 days, not stale — threshold 30 days). Priority review: all labels confirmed appropriate. Critical path: operator-gated on 0xWheatyz/Talos PR #14 merge.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-04 — Sprint Planning Cycle #198)
|
||||||
|
|
||||||
|
- **#198** — STATUS.md updated for 2026-06-04 sprint planning cycle. Last updated date set to 2026-06-04.
|
||||||
|
- **Sprint Summary:** 0 new code issues created (all ROADMAP items grounded — all 18 unchecked items have corresponding open issues). 0 issues closed (no stale; oldest is #2 at 17 days). 0 label changes. Critical path is entirely operator-gated: Talos merge of #187 unblocks the #2/#3/#4 chain.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-04 — Sprint Planning Cycle #196)
|
||||||
|
|
||||||
|
- **#196** — STATUS.md updated for 2026-06-04 sprint planning cycle. Last updated date set to 2026-06-04.
|
||||||
|
- **Sprint Summary:** ROADMAP cross-reference complete — all 18 unchecked items have corresponding open issues (no gaps). 1 new issue created: #196 (this STATUS.md update). 0 issues closed (no stale issues; oldest open issue is #2 from 2026-05-18, only 17 days old). 0 label changes (all priority/complexity labels correct). Critical path remains entirely operator-gated.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-03 — Sprint Planning Cycle #193/#194)
|
||||||
|
|
||||||
|
- **#194** — ROADMAP.md annotated with missing issue cross-references: Phase 0 issue #2 entry updated to reference implementation issue #187; Phase 6 entries added for issue #166 (pre-launch checklist) and #167 (launch announcement). Closes leeworks-agents/api-company#194.
|
||||||
|
- **#193** — STATUS.md updated for 2026-06-03 sprint planning cycle. Current Blockers confirmed accurate; #80 (gitea-image-automation-token) listed. Closes leeworks-agents/api-company#193.
|
||||||
|
- **Sprint Summary:** 2 new documentation issues created (#193 STATUS.md update, #194 ROADMAP annotation). 0 issues closed. 0 stale. Critical path entirely operator-gated.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-03 — Audit Cycle #190/#191)
|
||||||
|
|
||||||
|
- **#190** — ZIP Enrichment API audit complete: `openapi.yaml` present at repo root (57 KB, OpenAPI 3.0.3); server entry point `src/server.js`; all routes confirmed implemented; `X-RapidAPI-Proxy-Secret` preHandler middleware on all routes except `/health`; `/metrics` Prometheus endpoint present; STATUS.md ZIP Enrichment Spec and Code rows updated to `[x]`. Closes leeworks-agents/api-company#190.
|
||||||
|
- **#191** — Holidays API audit complete: `openapi.yaml` present at repo root (13 KB, OpenAPI 3.0.3); server entry point `src/server.js`; all routes confirmed implemented; `X-RapidAPI-Proxy-Secret` preHandler middleware on all routes except `/health` and `/metrics`; `/metrics` Prometheus endpoint present (issue #180 confirmed done); STATUS.md Holidays Spec and Code rows updated to `[x]`. Closes leeworks-agents/api-company#191.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-03 — Sprint Planning Cycle)
|
||||||
|
|
||||||
|
- **#188** — STATUS.md updated for 2026-06-03 sprint planning cycle (this entry). Last updated date set to 2026-06-03.
|
||||||
|
- **#187** — Talos PR for api-company Flux source manifests: PR #399 on `leeworks-agents/Talos` confirmed valid; upstream deploy PR created targeting `0xWheatyz/Talos`.
|
||||||
|
- **#186** — Air Quality API audit complete: `openapi.yaml` ✅ exists at repo root in `leeworks-agents/air-quality`; server implementation ✅ present (`src/server.ts`, `src/app.ts`, `src/routes/`); STATUS.md Air Quality row updated to `[x]/[x]`.
|
||||||
|
- **#178** relabeled — added `blocked` label (depends on #173 + Flux active).
|
||||||
|
- **#174** relabeled — added `blocked` label (depends on #18 deploy + #7 monitoring).
|
||||||
|
- **Current Blockers updated:** #187 added before #90 (same unblock target, more actionable).
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-02 — Sprint Planning Cycle #175/#176)
|
||||||
|
|
||||||
|
- **#176** — ROADMAP.md Phase 6 unchecked items annotated with issue cross-references: DNS — issues #33, #106, #150; PayPal — issue #19; Paid tiers — issues #44 (original 3), #151 (VIN Decoder). No checked items changed.
|
||||||
|
- **#175** — STATUS.md updated with 2026-06-02 sprint planning cycle results (this entry). Last updated date set to 2026-06-02.
|
||||||
|
- **Sprint Summary:** 2 new documentation issues created (#175 STATUS.md update, #176 ROADMAP Phase 5/6 annotation). 0 code issues created (all ROADMAP items already covered by existing issues). 0 issues closed (none stale). 0 reprioritizations.
|
||||||
|
- **Current Blockers updated:** #173 (ESO source secrets in `external-secrets` ns) and #174 (VIN Decoder metrics instrumentation) added.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-02 — Sprint Planning Cycle)
|
||||||
|
|
||||||
|
- **#171** — ROADMAP.md Phase 0 unchecked items annotated with issue #2, #3, #4; Phase 4 unchecked items annotated with issue #7, #8, #27; Phase 5 unchecked item annotated with issue #30. No checked-off items changed.
|
||||||
|
- **#170** — STATUS.md updated with 2026-06-02 sprint planning cycle results (this entry). Last updated date set to 2026-06-02.
|
||||||
|
- **Sprint Summary:** 2 new issues created (#171, #170), 0 issues closed this cycle, 0 stale found.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions confirmed.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-02 — Triage Cycle #168)
|
||||||
|
- **#168** — STATUS.md cleanup: removed all stale “open, in progress” references to #120 and #121 (both confirmed closed ✅ in leeworks-agents/vin-decoder). Historical sections corrected. VIN Decoder Code column confirmed `[x]`.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-01 — Sprint Planning Cycle)
|
||||||
|
- **#163** — ROADMAP.md Phase 2 and Phase 3 VIN Decoder bullets marked `[x]` with closed ✅ references for issues #120 and #121.
|
||||||
|
- **#164** — STATUS.md Current Blockers updated: removed #120 and #121 (both confirmed closed ✅). Top actionable agent task updated to #163.
|
||||||
|
- **`kustomize build flux/` = PASS** — no regressions.
|
||||||
|
|
||||||
|
## Completed Previous Cycle (2026-06-01 — Triage Cycle)
|
||||||
- **#158** — STATUS.md updated with 2026-06-01 current blockers and sprint summary.
|
- **#158** — STATUS.md updated with 2026-06-01 current blockers and sprint summary.
|
||||||
- **#156** — ROADMAP.md checkboxes updated: Phase 4 VIN Decoder metrics, Phase 5 docs-site/pipeline/blog, Phase 6 legal docs all checked off.
|
- **#156** — ROADMAP.md checkboxes updated: Phase 4 VIN Decoder metrics, Phase 5 docs-site/pipeline/blog, Phase 6 legal docs all checked off.
|
||||||
- **VIN Decoder Code `[x]`** — leeworks-agents/vin-decoder data layer (#120) and Fastify server (#121) confirmed merged; STATUS.md Code column updated.
|
- **VIN Decoder Code `[x]`** — leeworks-agents/vin-decoder data layer (#120) and Fastify server (#121) confirmed merged; STATUS.md Code column updated.
|
||||||
- **PR #160 closed** — had merge conflicts and ROADMAP.md regressions (unchecked completed items). Clean fix applied here.
|
- **PR #160 closed** — had merge conflicts and ROADMAP.md regressions (unchecked completed items). Clean fix applied here.
|
||||||
- **`kustomize build flux/` = PASS** — no regressions.
|
- **`kustomize build flux/` = PASS** — no regressions.
|
||||||
|
|
||||||
## Current Blockers (as of 2026-06-01)
|
## Current Blockers (as of 2026-06-04)
|
||||||
|
|
||||||
In dependency order — operator tasks unless noted:
|
In dependency order — operator tasks unless noted:
|
||||||
|
|
||||||
@@ -39,17 +104,29 @@ In dependency order — operator tasks unless noted:
|
|||||||
3. **P1 #77** — Create `gitea-runner-token` secret in `gitea-runner` namespace (operator)
|
3. **P1 #77** — Create `gitea-runner-token` secret in `gitea-runner` namespace (operator)
|
||||||
4. **P1 #79** — Create `gitea-registry` imagePullSecrets in all API namespaces (operator)
|
4. **P1 #79** — Create `gitea-registry` imagePullSecrets in all API namespaces (operator)
|
||||||
5. **P1 #83** — Configure `GITEA_TOKEN` Actions secret in zip-enrichment, holidays, air-quality repos (operator)
|
5. **P1 #83** — Configure `GITEA_TOKEN` Actions secret in zip-enrichment, holidays, air-quality repos (operator)
|
||||||
6. **P1 #120** — VIN Decoder data layer — SQLite cache seeded from NHTSA vPIC (**agent — actionable now, not blocked**)
|
6. **P1 #126** — Configure `GITEA_TOKEN` Actions secret in vin-decoder repo (operator — depends on #122 ✅)
|
||||||
7. **P1 #121** — VIN Decoder Fastify server implementation (agent — depends on #120)
|
7. **P1 #127** — Create `gitea-registry` imagePullSecret in `vin-decoder` namespace (operator)
|
||||||
8. **P1 #126** — Configure `GITEA_TOKEN` Actions secret in vin-decoder repo (operator — depends on #122 ✅)
|
8. **P1 #187** — Merge upstream PR #14 on 0xWheatyz/Talos to activate Flux for api-company (operator) — Fork PR #399 already MERGED to leeworks-agents/Talos; upstream PR #14 is the critical gate; unblocks #2, #3, #4, #66 chain
|
||||||
9. **P1 #127** — Create `gitea-registry` imagePullSecret in `vin-decoder` namespace (operator)
|
9. **P1 #90** — Wire Flux GitRepository + Kustomization for api-company in `0xWheatyz/Talos` (superseded by #187; upstream PR #14 pending operator merge)
|
||||||
|
10. **P2 #80** — Create `gitea-image-automation-token` secret in `flux-system` namespace (operator) — enables Flux image automation
|
||||||
|
11. **P2 #173** — Create ESO source secrets in `external-secrets` namespace for RapidAPI proxy-secret syncing (operator) — blocks ESO sync
|
||||||
|
12. **P2 #174** — VIN Decoder metrics instrumentation in `leeworks-agents/vin-decoder` repo (agent task, depends on #18 deploy)
|
||||||
|
13. **P2 #178** — Validate ESO HelmRelease deployment and ExternalSecret sync for all 4 API namespaces (depends on #173 + Flux active)
|
||||||
|
14. **P2 #179** — Execute extended full-stack Flux validation checklist including VIN Decoder (depends on #126, #127, #128)
|
||||||
|
|
||||||
|
## Sprint Summary (2026-06-01 — Sprint Planning Cycle)
|
||||||
|
- **Issues closed this cycle:** 0
|
||||||
|
- **New issues created this cycle:** 1 (#163 — ROADMAP/STATUS cleanup after #120/#121)
|
||||||
|
- **Stale issues found:** 0
|
||||||
|
- **Top actionable agent task:** #163 (pure doc update, immediately actionable)
|
||||||
|
- **Critical path:** Entirely operator-gated after #163 is merged (see Current Blockers)
|
||||||
|
|
||||||
## Sprint Summary (2026-06-01)
|
## Sprint Summary (2026-06-01)
|
||||||
- **Issues closed since last STATUS update (#146):** #145–#154 — VIN Decoder sprint docs + infra (✅ all closed)
|
- **Issues closed since last STATUS update (#146):** #145–#154 — VIN Decoder sprint docs + infra (✅ all closed)
|
||||||
- **Issues opened this sprint:** #150 (vin DNS reminder), #151 (VIN Decoder RapidAPI tiers), #155 (if applicable), #156 (ROADMAP.md update), #157 (full-stack validation), #158 (STATUS.md update)
|
- **Issues opened this sprint:** #150 (vin DNS reminder), #151 (VIN Decoder RapidAPI tiers), #155 (if applicable), #156 (ROADMAP.md update), #157 (full-stack validation), #158 (STATUS.md update), #163 (ROADMAP/STATUS cleanup post-#120/#121), #164 (STATUS.md sprint planning update)
|
||||||
- **Top actionable agent task:** VIN Decoder code work — #120 (data layer) then #121 (Fastify server)
|
- **Top actionable agent task:** #163 (ROADMAP/STATUS doc cleanup for #120/#121 — pure doc update, immediately actionable)
|
||||||
|
|
||||||
## Completed This Cycle (2026-05-31 — Sprint Cycle)
|
## Completed Previous Cycle (2026-05-31 — Sprint Cycle)
|
||||||
- **#146** — STATUS.md updated to reflect VIN Decoder sprint wave (#117–#141): APIs table row added, completed wave documented, blockers updated.
|
- **#146** — STATUS.md updated to reflect VIN Decoder sprint wave (#117–#141): APIs table row added, completed wave documented, blockers updated.
|
||||||
- **#145** — ROADMAP.md updated to reference VIN Decoder as 4th API across all phases (Phase 1–6). `kustomize build flux/` = PASS.
|
- **#145** — ROADMAP.md updated to reference VIN Decoder as 4th API across all phases (Phase 1–6). `kustomize build flux/` = PASS.
|
||||||
- **PR #147 opened** — docs: update ROADMAP.md and STATUS.md for VIN Decoder sprint wave (closes #145, #146).
|
- **PR #147 opened** — docs: update ROADMAP.md and STATUS.md for VIN Decoder sprint wave (closes #145, #146).
|
||||||
@@ -57,8 +134,8 @@ In dependency order — operator tasks unless noted:
|
|||||||
## Completed Previous Cycle (2026-05-30 — VIN Decoder Sprint Wave)
|
## Completed Previous Cycle (2026-05-30 — VIN Decoder Sprint Wave)
|
||||||
### VIN Decoder issues #117–#141 — status as of 2026-05-31:
|
### VIN Decoder issues #117–#141 — status as of 2026-05-31:
|
||||||
- **#117** — VIN Decoder spec + feasibility — **closed ✅** (`apis/vin-decoder/openapi.yaml` merged)
|
- **#117** — VIN Decoder spec + feasibility — **closed ✅** (`apis/vin-decoder/openapi.yaml` merged)
|
||||||
- **#120** — VIN Decoder data layer (SQLite/NHTSA vPIC) — **open, in progress** (P1 blocker)
|
- **#120** — VIN Decoder data layer (SQLite/NHTSA vPIC) — **closed ✅** (leeworks-agents/vin-decoder)
|
||||||
- **#121** — VIN Decoder Fastify server — **open, in progress** (P1 blocker, depends on #120)
|
- **#121** — VIN Decoder Fastify server — **closed ✅** (leeworks-agents/vin-decoder)
|
||||||
- **#122** — Create `leeworks-agents/vin-decoder` repo — **closed ✅**
|
- **#122** — Create `leeworks-agents/vin-decoder` repo — **closed ✅**
|
||||||
- **#123** — VIN Decoder docs page — **closed ✅**
|
- **#123** — VIN Decoder docs page — **closed ✅**
|
||||||
- **#124** — VIN Decoder SEO blog post — **closed ✅**
|
- **#124** — VIN Decoder SEO blog post — **closed ✅**
|
||||||
@@ -84,8 +161,6 @@ See **Current Blockers** section above for the full ordered list as of 2026-06-0
|
|||||||
6. **All other secrets** (#70, #73, #74, #79, #80, #81, #83) follow in order
|
6. **All other secrets** (#70, #73, #74, #79, #80, #81, #83) follow in order
|
||||||
|
|
||||||
## Blockers — VIN Decoder critical path
|
## Blockers — VIN Decoder critical path
|
||||||
- **P1: #120** — VIN Decoder data layer (NHTSA vPIC SQLite cache) — **agent work, actionable now**
|
|
||||||
- **P1: #121** — VIN Decoder Fastify server — agent work pending, depends on #120
|
|
||||||
- **P1: #127** — Create `gitea-registry` imagePullSecret in `vin-decoder` namespace — operator manual task
|
- **P1: #127** — Create `gitea-registry` imagePullSecret in `vin-decoder` namespace — operator manual task
|
||||||
- **P2: #126** — Configure `GITEA_TOKEN` secret in `vin-decoder` repo — operator manual task
|
- **P2: #126** — Configure `GITEA_TOKEN` secret in `vin-decoder` repo — operator manual task
|
||||||
- **P2: #128** — Create `rapidapi-proxy-secret` in `vin-decoder` namespace — operator manual task
|
- **P2: #128** — Create `rapidapi-proxy-secret` in `vin-decoder` namespace — operator manual task
|
||||||
@@ -93,8 +168,8 @@ See **Current Blockers** section above for the full ordered list as of 2026-06-0
|
|||||||
- **P3: #139** — Add RAPIDAPI_VIN_* Actions secrets — operator task, depends on RapidAPI listing (#131)
|
- **P3: #139** — Add RAPIDAPI_VIN_* Actions secrets — operator task, depends on RapidAPI listing (#131)
|
||||||
|
|
||||||
## New Issues This Sprint (2026-05-30, #120–#146)
|
## New Issues This Sprint (2026-05-30, #120–#146)
|
||||||
- **#120** — VIN Decoder data layer — **open, P1**
|
- **#120** — VIN Decoder data layer — **closed ✅** (leeworks-agents/vin-decoder)
|
||||||
- **#121** — VIN Decoder Fastify server — **open, P1**
|
- **#121** — VIN Decoder Fastify server — **closed ✅** (leeworks-agents/vin-decoder)
|
||||||
- **#126** — Operator: GITEA_TOKEN secret in vin-decoder repo — manual operator task
|
- **#126** — Operator: GITEA_TOKEN secret in vin-decoder repo — manual operator task
|
||||||
- **#127** — Operator: gitea-registry imagePullSecret in vin-decoder namespace — manual operator task, P1 blocker
|
- **#127** — Operator: gitea-registry imagePullSecret in vin-decoder namespace — manual operator task, P1 blocker
|
||||||
- **#128** — Operator: rapidapi-proxy-secret in vin-decoder namespace — manual operator task
|
- **#128** — Operator: rapidapi-proxy-secret in vin-decoder namespace — manual operator task
|
||||||
|
|||||||
Reference in New Issue
Block a user