Compare commits

...

11 Commits

Author SHA1 Message Date
AI-Agent c8271db1ec docs: fix STATUS.md Current Blockers — replace closed #174 with open #231
Validate Flux manifests / kustomize-build (pull_request) Failing after 9s
Issue #174 (VIN Decoder metrics instrumentation) is closed .
Replace stale reference in Current Blockers with open issue #231
(Verify VIN Decoder metrics endpoint and ServiceMonitor scrape config
in live cluster), which correctly tracks the outstanding verification
work. Also bump the 'as of' date to 2026-06-07.

kustomize build flux/ = PASS

Closes leeworks-agents/api-company#235
2026-06-07 20:02:42 +00:00
AI-Manager 7adcc9a524 Merge pull request 'fix: update ROADMAP.md stale issue reference #174#231 (issue #233)' (#234) from feature/fix-roadmap-issue-233 into main
Validate Flux manifests / kustomize-build (push) Failing after 17s
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 41s
2026-06-07 15:01:55 +00:00
AI-Agent 25045d4ff1 fix: update ROADMAP.md stale issue reference from #174 to #231
Validate Flux manifests / kustomize-build (pull_request) Failing after 20s
Issue #174 (Add VIN Decoder metrics instrumentation) is closed .
The live-cluster verification of VIN Decoder metrics/ServiceMonitor
is now tracked by #231 (open).

Closes leeworks-agents/api-company#233
2026-06-07 15:01:30 +00:00
AI-Manager 7a45bfc369 Merge pull request 'docs: update STATUS.md for 2026-06-07 triage cycle #232' (#232) from feature/triage-2026-06-07-cycle232 into main
Validate Flux manifests / kustomize-build (push) Failing after 21s
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 43s
2026-06-07 10:03:01 +00:00
AI-Agent 273a41e1fe docs: update STATUS.md for 2026-06-07 triage cycle #232
Validate Flux manifests / kustomize-build (pull_request) Failing after 23s
- 28 agent-ready issues reviewed (27 previously known + new #231)
- Issue #231 triaged: @qa-engineer — VIN Decoder metrics live-cluster
  verification; BLOCKED on #218 (Flux not active)
- kustomize build flux/ PASS
- 0 open PRs
2026-06-07 10:02:32 +00:00
AI-Manager 23dfec20a1 Merge pull request 'fix: add named port 'http' to vin-decoder Service and container for ServiceMonitor scraping' (#230) from feature/fix-vin-decoder-servicemonitor-port into main
Validate Flux manifests / kustomize-build (push) Failing after 21s
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 37s
2026-06-07 05:06:43 +00:00
AI-Agent cc7172d563 fix: add named port 'http' to vin-decoder Service and container for ServiceMonitor compatibility
Validate Flux manifests / kustomize-build (pull_request) Failing after 20s
The ServiceMonitor at flux/vin-decoder/servicemonitor.yaml references port
by name ('http'), but the Service had anonymous port 80 -> 3000 and the
container had no named port. Prometheus ServiceMonitor port matching requires
the port name to match between the Service and the ServiceMonitor spec.

Adds:
- name: http to the containerPort (port 3000)
- name: http to the Service port (port 80 -> targetPort 3000)

This allows the kube-prometheus-stack ServiceMonitor to correctly scrape
/metrics from vin-decoder pods.

Closes leeworks-agents/api-company#174
2026-06-07 05:06:10 +00:00
AI-Manager 695dac91c4 Merge pull request 'docs: update STATUS.md for 2026-06-07 triage cycle' (#229) from feature/triage-2026-06-07 into main
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 34s
Validate Flux manifests / kustomize-build (push) Failing after 24s
2026-06-07 00:05:47 +00:00
AI-Agent b2d33a56c4 docs: update STATUS.md for 2026-06-07 triage cycle
Validate Flux manifests / kustomize-build (pull_request) Failing after 25s
- Updated last-updated date to 2026-06-07
- Added Completed This Cycle section for 2026-06-07 triage
- All 27 agent-ready issues triaged and commented
- 0 new issues, 0 closed, 0 PRs, kustomize build PASS
- Critical path unchanged: #47, #218, #33/#106/#150
2026-06-07 00:05:23 +00:00
AI-Agent 8c2cce576e chore: sprint planning cycle #227 — STATUS.md updated (2026-06-06)
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 59s
Validate Flux manifests / kustomize-build (push) Failing after 38s
Full ROADMAP cross-reference: all 18 unchecked items grounded in open issues, zero gaps.
Staleness check: oldest issue #3/#4 is 19 days old (< 30-day threshold), zero closures.
Label audit: all labels correct from prior cycle, zero changes.
kustomize build flux/ = PASS.
2026-06-06 20:25:07 +00:00
AI-Manager 9c2f228f0c Merge pull request 'docs: update ROADMAP.md Flux wiring entry to reference active tracker #218' (#228) from feature/issue-227-roadmap-flux-ref into main
Validate Flux manifests / kustomize-build (push) Failing after 13s
Build Docs Site / Aggregate OpenAPI Specs (push) Failing after 41s
2026-06-06 20:02:10 +00:00
3 changed files with 41 additions and 8 deletions
+1 -1
View File
@@ -29,7 +29,7 @@ Per-API: implement Fastify/FastAPI service matching `openapi.yaml` exactly. Rapi
- [ ] Gatus public status page at `status.leeworks.dev` — issue #8
- [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
- [ ] Verify VIN Decoder metrics endpoint and ServiceMonitor scrape config — issue #231
- [x] VIN Decoder metrics instrumentation + Grafana dashboard (issue #129 — closed ✅)
- [x] VIN Decoder Gatus health check (issue #134 — closed ✅)
- [x] Enable Alertmanager in kube-prometheus-stack + configure Slack receiver for SLO alerts (issue #210 — closed ✅)
+36 -5
View File
@@ -1,6 +1,6 @@
# Company Status
_Last updated: 2026-06-06_
_Last updated: 2026-06-07_
## APIs
| API | Spec | Code | Deployed | Listed on RapidAPI | Paying Users | MRR |
@@ -24,9 +24,40 @@ Legend: [x]=done, [~]=in-progress, [ ]=not started
- **VIN Decoder manifests:** `flux/vin-decoder/` — Flux HelmRelease + Kustomization committed (issue #140)
- **Alertmanager:** `flux/monitoring/helmrelease.yaml` — enabled with Slack receiver config (`gatus-slack-webhook` secret); PR #212 open (issue #210)
## Completed This Cycle (2026-06-06 — Triage Cycle #226)
## Completed This Cycle (2026-06-07 — Triage Cycle #232)
- **Triage** — All 27 open `agent-ready` issues reviewed and commented with current status (2026-06-06).
- **Triage** — All 28 open `agent-ready` issues reviewed and commented with current status (2026-06-07).
- **All issues confirmed blocked** on the same critical-path operator tasks: #47 (create `0xWheatyz/api-company`), #218 (merge Talos PR #14), #33/#106/#150 (DNS).
- **No agent-implementable work found** — all open issues are either manual operator tasks or gated on Flux/cluster activation; kubectl unreachable from agent environment.
- **1 new issue triaged** — #231 commented with @qa-engineer assessment; BLOCKED on #218.
- **0 new issues created** — no gaps found; all ROADMAP items remain grounded in open issues.
- **0 issues closed** — no stale issues.
- **0 label changes** — all existing labels correct.
- **0 open PRs** — nothing to review or merge.
- **`kustomize build flux/` = PASS** — no manifest regressions.
- **Critical path unchanged:** (1) Operator creates `0xWheatyz/api-company` (#47), (2) Operator merges `0xWheatyz/Talos` PR #14 (#218), (3) Operator configures DNS for all 8 subdomains (#33, #106, #150).
## Completed Previous Cycle (2026-06-06 — Sprint Planning Cycle #227)
- **Sprint Planning** — Full ROADMAP cross-reference + backlog triage completed (2026-06-06).
- **ROADMAP cross-reference:** All 18 unchecked items confirmed grounded in open issues — **zero gaps**.
- Phase 0: #3, #4, #66, #76#83, #126#128, #173, #178, #179, #203, #218 — all tracked.
- Phase 4: #7, #8, #174 — all tracked.
- Phase 5: #30 — tracked.
- Phase 6: #19, #33, #44, #106, #116, #139, #150, #151, #161, #166, #167 — all tracked.
- **Staleness check:** Oldest open issue is #3 / #4 from 2026-05-18 (19 days) — **below 30-day threshold; zero closures**.
- **Label audit:** All priority/complexity labels confirmed correct from cycle #221 audit — **zero changes**.
- **0 new issues created** — no roadmap gaps found.
- **0 issues closed** — no stale issues.
- **0 label changes** — all existing labels correct.
- **`kustomize build flux/` = PASS** — no manifest regressions.
- **Critical path unchanged:** (1) Operator creates `0xWheatyz/api-company` (#47), (2) Operator merges `0xWheatyz/Talos` PR #14 (#218), (3) Operator configures DNS for all 8 subdomains (#33, #106, #150).
## Completed Previous Cycle (2026-06-06 — Triage Cycle #226)
- **Triage** — All 28 open `agent-ready` issues reviewed and commented with current status (2026-06-06).
- **All issues confirmed blocked** on the same critical-path operator tasks: #47 (create `0xWheatyz/api-company`), #218 (merge Talos PR #14), #33/#106/#150 (DNS).
- **No agent-implementable work found** — all open issues are either manual operator tasks or gated on Flux/cluster activation.
- **0 new issues created** — no gaps found; all ROADMAP items are grounded in open issues.
@@ -172,7 +203,7 @@ Legend: [x]=done, [~]=in-progress, [ ]=not started
- **PR #160 closed** — had merge conflicts and ROADMAP.md regressions (unchecked completed items). Clean fix applied here.
- **`kustomize build flux/` = PASS** — no regressions.
## Current Blockers (as of 2026-06-06)
## Current Blockers (as of 2026-06-07)
In dependency order — operator tasks unless noted:
@@ -186,7 +217,7 @@ In dependency order — operator tasks unless noted:
8. **P1 #218** — Operator: merge 0xWheatyz/Talos upstream PR #14 to activate Flux GitOps for api-company — Fork PR #399 already MERGED to leeworks-agents/Talos; upstream PR #14 is the critical gate; unblocks #2, #3, #4, #66 chain (replaces closed #187 and #90)
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)
12. **P2 #231** Verify VIN Decoder metrics endpoint and ServiceMonitor scrape config in live cluster (depends on #218 — Flux must be active first)
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)
+4 -2
View File
@@ -37,7 +37,8 @@ spec:
- name: vin-decoder
image: registry.leeworks.dev/vin-decoder/api:latest # {"$imagepolicy": "flux-system:vin-decoder"}
ports:
- containerPort: 3000
- name: http
containerPort: 3000
env:
- name: RAPIDAPI_PROXY_SECRET
valueFrom:
@@ -72,7 +73,8 @@ spec:
selector:
app: vin-decoder
ports:
- port: 80
- name: http
port: 80
targetPort: 3000
- apiVersion: networking.k8s.io/v1
kind: Ingress