-
Notifications
You must be signed in to change notification settings - Fork 0
docs/devx: Features ledger + progress automation + drift report #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
ff6c686
bc6b7dd
a9933b9
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
#!/usr/bin/env bash | ||
set -euo pipefail | ||
|
||
repo_root="$(git rev-parse --show-toplevel)" | ||
cd "$repo_root" | ||
|
||
if [ -f scripts/update_progress.py ]; then | ||
echo "[pre-commit] Recomputing weighted progress and updating bars…" | ||
if ! python3 scripts/update_progress.py; then | ||
echo "[pre-commit] Progress update failed. Aborting commit." >&2 | ||
exit 1 | ||
fi | ||
# Stage updated docs so the commit includes refreshed bars/KLoC | ||
git add docs/features-ledger.md README.md || true | ||
fi | ||
|
||
exit 0 | ||
|
Original file line number | Diff line number | Diff line change | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,47 @@ | ||||||||||||||||||
name: Update Progress Bars | ||||||||||||||||||
|
||||||||||||||||||
on: | ||||||||||||||||||
push: | ||||||||||||||||||
branches: [ main ] | ||||||||||||||||||
workflow_dispatch: {} | ||||||||||||||||||
Comment on lines
+3
to
+6
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) Lint your YAML and stop sprinkling spaces like confetti. Fix bracket spacing and truthy lint noise. on:
push:
- branches: [ main ]
+ branches: [main]
workflow_dispatch: {} 📝 Committable suggestion
Suggested change
🧰 Tools🪛 YAMLlint (1.37.1)[warning] 3-3: truthy value should be one of [false, true] (truthy) [error] 5-5: too many spaces inside brackets (brackets) [error] 5-5: too many spaces inside brackets (brackets) 🤖 Prompt for AI Agents
|
||||||||||||||||||
|
||||||||||||||||||
permissions: | ||||||||||||||||||
contents: write | ||||||||||||||||||
|
||||||||||||||||||
jobs: | ||||||||||||||||||
update-progress: | ||||||||||||||||||
if: github.actor != 'github-actions[bot]' | ||||||||||||||||||
runs-on: ubuntu-latest | ||||||||||||||||||
steps: | ||||||||||||||||||
Comment on lines
+12
to
+15
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Add concurrency control and drop the redundant recursion guard.
jobs:
update-progress:
- if: github.actor != 'github-actions[bot]'
runs-on: ubuntu-latest
+ concurrency:
+ group: update-progress-${{ github.ref }}
+ cancel-in-progress: true
@@
- - name: Push commit
- if: steps.commit.outputs.changed == 'true'
- run: |
- git push
+ - name: Push commit
+ if: steps.commit.outputs.changed == 'true'
+ run: git push Also applies to: 43-47 🤖 Prompt for AI Agents
|
||||||||||||||||||
- name: Check out repository | ||||||||||||||||||
uses: actions/checkout@v4 | ||||||||||||||||||
with: | ||||||||||||||||||
fetch-depth: 0 | ||||||||||||||||||
|
||||||||||||||||||
- name: Set up Python | ||||||||||||||||||
uses: actions/setup-python@v5 | ||||||||||||||||||
with: | ||||||||||||||||||
python-version: '3.x' | ||||||||||||||||||
|
||||||||||||||||||
- name: Recompute weighted progress | ||||||||||||||||||
run: | | ||||||||||||||||||
python3 scripts/update_progress.py | ||||||||||||||||||
- name: Commit changes (if any) | ||||||||||||||||||
id: commit | ||||||||||||||||||
run: | | ||||||||||||||||||
git config user.name "github-actions[bot]" | ||||||||||||||||||
git config user.email "github-actions[bot]@users.noreply.github.com" | ||||||||||||||||||
git add docs/features-ledger.md README.md | ||||||||||||||||||
if git diff --cached --quiet; then | ||||||||||||||||||
echo "changed=false" >> $GITHUB_OUTPUT | ||||||||||||||||||
else | ||||||||||||||||||
git commit -m "ci: update progress bars and KLoC [skip ci]" | ||||||||||||||||||
echo "changed=true" >> $GITHUB_OUTPUT | ||||||||||||||||||
fi | ||||||||||||||||||
Comment on lines
+39
to
+41
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive)
Consider dropping it or using a more targeted filter. Your anti-loop check already prevents recursion. - git commit -m "ci: update progress bars and KLoC [skip ci]"
+ git commit -m "ci: update progress bars and KLoC" 📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents
|
||||||||||||||||||
- name: Push commit | ||||||||||||||||||
if: steps.commit.outputs.changed == 'true' | ||||||||||||||||||
run: | | ||||||||||||||||||
git push | ||||||||||||||||||
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -12,6 +12,14 @@ all: build | |||||||||||||||||||||||||||||
build: | ||||||||||||||||||||||||||||||
GO111MODULE=on go build -ldflags "$(LDFLAGS)" -o bin/$(APP) ./cmd/$(APP) | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
Comment on lines
12
to
14
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) Stop exporting GO111MODULE. It’s default since Go 1.16. Trim noise. - GO111MODULE=on go build -ldflags "$(LDFLAGS)" -o bin/$(APP) ./cmd/$(APP)
+ go build -ldflags "$(LDFLAGS)" -o bin/$(APP) ./cmd/$(APP)
...
- GO111MODULE=on go build -ldflags "$(LDFLAGS)" -o bin/tui ./cmd/tui
+ go build -ldflags "$(LDFLAGS)" -o bin/tui ./cmd/tui Also applies to: 15-22 🤖 Prompt for AI Agents
|
||||||||||||||||||||||||||||||
.PHONY: build-tui tui-build | ||||||||||||||||||||||||||||||
build-tui tui-build: | ||||||||||||||||||||||||||||||
GO111MODULE=on go build -ldflags "$(LDFLAGS)" -o bin/tui ./cmd/tui | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
.PHONY: run-tui tui | ||||||||||||||||||||||||||||||
run-tui tui: build-tui | ||||||||||||||||||||||||||||||
./bin/tui --config=config/config.yaml | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
run: | ||||||||||||||||||||||||||||||
./bin/$(APP) --role=all --config=config/config.yaml | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
@@ -23,3 +31,38 @@ tidy: | |||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
version: | ||||||||||||||||||||||||||||||
@echo $(VERSION) | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
Comment on lines
32
to
+34
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) Add a Make it easy. version:
@echo $(VERSION)
+
+.PHONY: progress
+progress:
+ python3 scripts/update_progress.py 📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents
|
||||||||||||||||||||||||||||||
.PHONY: hooks | ||||||||||||||||||||||||||||||
hooks: | ||||||||||||||||||||||||||||||
@git config core.hooksPath .githooks | ||||||||||||||||||||||||||||||
@chmod +x .githooks/pre-commit | ||||||||||||||||||||||||||||||
@echo "Git hooks enabled (pre-commit updates progress bars and stages docs)." | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
Comment on lines
+35
to
+40
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) Add a proper clean target and stop leaving build trash around. Also declare it PHONY. .PHONY: hooks
hooks:
@git config core.hooksPath .githooks
@chmod +x .githooks/pre-commit
@echo "Git hooks enabled (pre-commit updates progress bars and stages docs)."
+
+.PHONY: clean
+clean:
+ rm -rf bin/* 📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents
|
||||||||||||||||||||||||||||||
.PHONY: mdlint | ||||||||||||||||||||||||||||||
mdlint: | ||||||||||||||||||||||||||||||
@if ! command -v npx >/dev/null 2>&1; then \ | ||||||||||||||||||||||||||||||
echo "npx not found. Please install Node.js to run markdownlint."; \ | ||||||||||||||||||||||||||||||
exit 1; \ | ||||||||||||||||||||||||||||||
fi | ||||||||||||||||||||||||||||||
@npx -y markdownlint-cli2 "**/*.md" "!**/node_modules/**" | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
Comment on lines
+41
to
+48
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) 🛠️ Refactor suggestion Your lint targets ignore AGENTS.md and README.md. Fix scope.
-mdlint:
+mdlint:
@if ! command -v npx >/dev/null 2>&1; then \
echo "npx not found. Please install Node.js to run markdownlint."; \
exit 1; \
fi
- @npx -y markdownlint-cli2 "**/*.md" "!**/node_modules/**"
+ @npx -y markdownlint-cli2 "**/*.md" "!**/node_modules/**"
-mdlint-docs:
+mdlint-docs:
@if ! command -v npx >/dev/null 2>&1; then \
echo "npx not found. Please install Node.js to run markdownlint."; \
exit 1; \
fi
- @npx -y markdownlint-cli2 "docs/**/*.md"
+ @npx -y markdownlint-cli2 "docs/**/*.md"
-mdlint-fix:
+mdlint-fix:
@if ! command -v npx >/dev/null 2>&1; then \
echo "npx not found. Please install Node.js to run markdownlint."; \
exit 1; \
fi
- @npx -y markdownlint-cli2 --fix "docs/**/*.md"
+ @npx -y markdownlint-cli2 --fix "**/*.md" "!**/node_modules/**" Also applies to: 49-56, 57-64 🤖 Prompt for AI Agents
|
||||||||||||||||||||||||||||||
.PHONY: mdlint-docs | ||||||||||||||||||||||||||||||
mdlint-docs: | ||||||||||||||||||||||||||||||
@if ! command -v npx >/dev/null 2>&1; then \ | ||||||||||||||||||||||||||||||
echo "npx not found. Please install Node.js to run markdownlint."; \ | ||||||||||||||||||||||||||||||
exit 1; \ | ||||||||||||||||||||||||||||||
fi | ||||||||||||||||||||||||||||||
@npx -y markdownlint-cli2 "docs/**/*.md" | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
.PHONY: mdlint-fix | ||||||||||||||||||||||||||||||
mdlint-fix: | ||||||||||||||||||||||||||||||
@if ! command -v npx >/dev/null 2>&1; then \ | ||||||||||||||||||||||||||||||
echo "npx not found. Please install Node.js to run markdownlint."; \ | ||||||||||||||||||||||||||||||
exit 1; \ | ||||||||||||||||||||||||||||||
fi | ||||||||||||||||||||||||||||||
@npx -y markdownlint-cli2 --fix "docs/**/*.md" | ||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
.PHONY: mdlint-docker | ||||||||||||||||||||||||||||||
mdlint-docker: | ||||||||||||||||||||||||||||||
@docker run --rm -v "$(PWD)":/work -w /work node:20 \ | ||||||||||||||||||||||||||||||
npx -y markdownlint-cli2 "**/*.md" "!**/node_modules/**" |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
# Design–Implementation Drift Report | ||
|
||
This report compares each feature spec in `docs/ideas/` against the current implementation under `internal/` and related code. It highlights alignment, gaps, and concrete next steps. | ||
|
||
## Executive Summary | ||
|
||
- Overall alignment score: 60.1/100 (Medium) | ||
- Overall drift: 39.9% | ||
- Scope: 37 feature specs reviewed; corresponding `internal/<feature>` modules scanned (handlers, logic, tests, and TODOs), plus TUI and Admin API integration points where relevant. | ||
|
||
Key observations | ||
- Foundation is strong: Admin API, tracing, exactly-once, storage backends, theme playground, terminal voice, and time-travel debugger are comparatively well aligned (low drift ≤25%). | ||
- Productization gaps recur: runtime configuration endpoints, RBAC tie‑in, pagination at scale, and TUI wiring are the most common sources of drift. | ||
- Several modules are substantial but not yet integrated into TUI flows or Admin API surfaces (e.g., rate limiting, DLQ UI depth, right‑click menus, patterned load). | ||
|
||
Comment on lines
+12
to
+15
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick (assertive) Surround lists with blank lines per GFM. Minor lint nit—fix it and move on. -Key observations
+
+Key observations
🧰 Tools🪛 markdownlint-cli2 (0.17.2)12-12: Lists should be surrounded by blank lines (MD032, blanks-around-lists) 🤖 Prompt for AI Agents
|
||
## Scoring Model | ||
|
||
- We compute a feature Alignment Score (0–100) from code presence, tests, and obvious TODOs; Drift % = 100 − Alignment. | ||
- Categories (by Alignment Score): | ||
- Critical: 0–39 (very high drift) | ||
- High: 40–59 | ||
- Medium: 60–79 | ||
- Low: 80–89 | ||
- Excellent: 90–100 (very low drift) | ||
|
||
Heuristic inputs used for this pass: presence of `internal/<feature>` module, number of `.go` files and tests, explicit TODOs/WIP markers, basic route/handler availability, and TUI/Admin integration indicators found via grep. This is a fast quantitative baseline; targeted deep‑dives recommended for “High” and “Critical”. | ||
|
||
## Critical Issues (Immediate Attention) | ||
|
||
- Collaborative Session (Drift 80%): Minimal code, no tests, not integrated. | ||
- Advanced Rate Limiting (Drift 60%): Strong core limiter present, but runtime Admin API controls and TUI widgets missing; producer/worker integration incomplete. | ||
- Patterned Load Generator (Drift 60%): Handlers exist; patterns/scheduler/guardrails and TUI overlay not wired end‑to‑end. | ||
|
||
## Detailed Findings by Category | ||
|
||
- Low Drift (≤25%): admin-api, distributed-tracing-integration, storage-backends, time-travel-debugger, rbac-and-tokens, smart-retry-strategies, terminal-voice-commands, theme-playground | ||
- Medium Drift (30–45%): exactly-once-patterns, multi-cluster-control, visual-dag-builder, automatic-capacity-planning, kubernetes-operator, producer-backpressure, event-hooks, job-genealogy-navigator, calendar-view, anomaly-radar-slo-budget, canary-deployments, chaos-harness, forecasting, json-payload-studio, job-budgeting, dlq-remediation-pipeline, dlq-remediation-ui, trace-drilldown-log-tail, worker-fleet-controls, right-click-context-menus, smart-payload-deduplication | ||
- High–Critical (≥55%): multi-tenant-isolation, queue-snapshot-testing, advanced-rate-limiting, patterned-load-generator, collaborative-session | ||
|
||
## Recommendations (Cross‑Cutting) | ||
|
||
- Close the loop to TUI: For DLQ UI, rate limiting, patterned load, context menus — wire handlers into `internal/tui` and persist state where needed. | ||
- Expose runtime controls via Admin API: Add update endpoints for limits, toggles, and policies; document OpenAPI and add tests. | ||
- Pagination and guardrails: Ensure DLQ, list endpoints, and patterned load enforce bounds and use server‑side pagination. | ||
- RBAC integration everywhere: Require tokens for sensitive ops; confirm deny‑by‑default semantics; add audit logs to destructive flows. | ||
- Tests and docs: Add handler and e2e tests for newly exposed endpoints; update README/TUI docs with new keybindings and flows. | ||
|
||
--- | ||
|
||
## Feature Drift Table | ||
|
||
| Feature | Folder | Finished? | Drift % | Remarks | Recommendation | | ||
| --- | --- | --- | ---:| --- | --- | | ||
| admin-api | internal/admin-api | Yes | 20 | HTTP v1 endpoints (Stats, Keys, Peek, Purge DLQ/All, Bench) and middleware (auth, rate‑limit, audit, CORS, recovery) implemented; OpenAPI served; gRPC not present; TUI still mostly calls internal helpers directly. | Switch TUI Stats to Admin API; decide on gRPC scope (ship or de‑scope); expand CI integration tests; confirm deny‑by‑default tokens in all destructive routes. | | ||
| advanced-rate-limiting | internal/advanced-rate-limiting | No | 60 | Redis Lua token bucket with priority fairness and tests in place; missing Admin API runtime updates, dry‑run preview endpoint, producer/worker integration, and TUI status widget. | Add Admin API CRUD for limits/weights; integrate with producer hints/worker throttling; surface TUI widget and metrics; document tuning. | | ||
| anomaly-radar-slo-budget | internal/anomaly-radar-slo-budget | No | 45 | Handlers exist; metrics/alerts endpoints stubbed; thresholds/SLO budgets not clearly tuned; limited tests. | Define SLO config and thresholds; add Prometheus metrics; wire TUI “status/radar” widget; add calibration docs. | | ||
| automatic-capacity-planning | internal/automatic-capacity-planning | No | 35 | Core structs and planner logic present; needs scheduler hooks and Admin API surface; limited integration tests. | Expose plan/apply/dry‑run via Admin API; add forecast inputs; e2e soak tests with patterned load. | | ||
| calendar-view | internal/calendar-view | No | 35 | Routes and TUI helpers exist; TODOs for auth and multi‑queue filtering; pagination needs verification. | Add auth context, filters, and paging; connect to Admin API; add large‑list tests. | | ||
| canary-deployments | internal/canary-deployments | No | 45 | Canary logic exists; limited production guardrails and rollback controls; minimal test coverage. | Add rollback/abort endpoints; audit logging; e2e with worker fleets. | | ||
| chaos-harness | internal/chaos-harness | No | 45 | Fault injection scaffolding present; missing safety gates and observability glue. | Add scoped chaos profiles, RBAC, and kill‑switch; record effects to tracing/metrics. | | ||
| collaborative-session | internal/collaborative-session | No | 80 | Minimal code; no tests; not wired to TUI. | Define protocol and permissions; add session host/guest modes; defer if out of scope this release. | | ||
| distributed-tracing-integration | internal/distributed-tracing-integration | Yes | 20 | OTEL integration, trace propagation tests, and trace URL helpers implemented. | Link from TUI job views to external tracing UI; document configuration. | | ||
| dlq-remediation-pipeline | internal/dlq-remediation-pipeline | No | 45 | Pipeline components present; classifier rules and auto‑retry policies limited; tests light. | Add rules engine, rate‑limited requeue, and safety bounds; expose via Admin API. | | ||
| dlq-remediation-ui | internal/dlq-remediation-ui | No | 45 | API handlers (list/peek/requeue/purge) and TUI model exist; single test file; need pagination at scale and TUI polish; ensure Admin API parity. | Implement server‑side pagination and filters; expand tests; integrate with main TUI tab and keybindings; confirm RBAC/audit on destructive ops. | | ||
| event-hooks | internal/event-hooks | No | 40 | Webhook plumbing in place; base URL TODO and health/status routes present. | Make base URL configurable; add signing/verification and retries; Admin API to manage subscriptions. | | ||
| exactly-once-patterns | internal/exactly-once-patterns | No | 30 | Idempotency/outbox patterns implemented; some TODOs (hit‑rate calc, publishers). | Finalize metrics; add publisher adapters; document patterns and failure modes. | | ||
| forecasting | internal/forecasting | No | 45 | Forecast stubs implemented; needs model selection and evaluation harness. | Provide baseline models (ARIMA/Prophet external or simple EMA); surface via Admin API and TUI. | | ||
| job-budgeting | internal/job-budgeting | No | 45 | Budget manager, cost model, notifications present; limited tests and UI. | Add enforcement hooks and Admin API; TUI budget panel; alerting thresholds. | | ||
| job-genealogy-navigator | internal/job-genealogy-navigator | No | 40 | Types and graph traversal present; non‑Go assets for views; integration unclear. | Expose via Admin API; TUI drill‑down; add pagination on lineage. | | ||
| json-payload-studio | internal/json-payload-studio | No | 45 | Core handlers present; minimal tests; not fully plugged into TUI. | Add validation schemas, templates, and enqueue paths; TUI editor with previews. | | ||
| kubernetes-operator | internal/kubernetes-operator | No | 35 | Operator scaffolding and tests exist; CRDs integration simulated. | Define CRDs; reconcile loops; e2e against kind; RBAC manifests. | | ||
| long-term-archives | internal/long-term-archives | No | 45 | Archival hooks present; backends not fully pluggable; tests light. | Implement S3/ClickHouse adapters; retention/TTL policies; Admin API to export. | | ||
| multi-cluster-control | internal/multi-cluster-control | No | 30 | Manager, errors, handlers, and many artifacts exist; compare/switch logic present; lots of non‑Go test assets. | Finalize e2e tests; wire to TUI tabs; Admin API for fan‑out actions with audit. | | ||
| multi-tenant-isolation | internal/multi-tenant-isolation | No | 55 | Handlers with TODOs for RBAC validation; quotas/tenancy boundaries incomplete. | Enforce tenant authz middleware; define quotas and keys; add tests for isolation. | | ||
| patterned-load-generator | internal/patterned-load-generator | No | 60 | Handlers exist; patterns/scheduling/guardrails and TUI overlay unproven; single test. | Implement sine/burst/ramp + stop/cancel; guardrails; profile save/load; chart overlay in TUI. | | ||
| plugin-panel-system | internal/plugin-panel-system | No | 40 | Plugin lifecycle present; hot‑reload/sandboxing needs validation; non‑Go assets included. | Add permission model and sandbox; plugin SDK docs; TUI panel registry. | | ||
| policy-simulator | internal/policy-simulator | No | 40 | Simulator with TODOs for retrieval/rollback; multiple tests present. | Wire Admin API preview/apply/rollback; persist scenarios; integrate with TUI. | | ||
| producer-backpressure | internal/producer-backpressure | No | 35 | Backpressure scaffolding and tests; not hooked into rate limiter hints. | Integrate with advanced rate limiting; expose hints in client SDKs; metrics. | | ||
| queue-snapshot-testing | internal/queue-snapshot-testing | No | 55 | Snapshot framework present with testdata; low code/test counts suggest early stage. | Expand differ coverage; add golden tests; docs for snapshot lifecycle. | | ||
| rbac-and-tokens | internal/rbac-and-tokens | Yes | 25 | JWT manager, middleware, and handlers with tests; revoke and cache implemented. | Integrate with all sensitive Admin API routes; add per‑action scopes and audit trails. | | ||
| right-click-context-menus | internal/right-click-context-menus | No | 50 | Zones/registry/menu implemented; TODO for focused item context; not wired into TUI tables. | Integrate with TUI table rows via bubblezone; add context actions and tests. | | ||
| smart-payload-deduplication | internal/smart-payload-deduplication | No | 50 | Compression/dedup logic present with TODOs (dict build); limited integration. | Add dict training pipeline; expose dedup stats; integrate in enqueue path. | | ||
| smart-retry-strategies | internal/smart-retry-strategies | Yes | 25 | Strategies and handlers implemented; metrics endpoint TODO; decent tests. | Implement Prometheus metrics; surface strategy selection in TUI; add docs. | | ||
| storage-backends | internal/storage-backends | Yes | 20 | Multiple backends scaffolding present with tests; OpenAPI docs exist. | Complete adapter matrix; add conformance tests; document migration paths. | | ||
| terminal-voice-commands | internal/terminal-voice-commands | Yes | 25 | Command mapping, handlers, and tests present; privacy/telemetry not addressed. | Add opt‑in, PII handling, and offline mode; short TUI tutorial. | | ||
| theme-playground | internal/theme-playground | Yes | 25 | Theme system prototypes and tests; TUI integration partial. | Centralize styles; add theme toggle in Settings tab; docs for accessible palettes. | | ||
| time-travel-debugger | internal/time-travel-debugger | Yes | 20 | Capture/replay and simple TUI implemented with tests. | Add selective replay controls; export/import; document guardrails. | | ||
| trace-drilldown-log-tail | internal/trace-drilldown-log-tail | No | 45 | Trace ID plumbing present; log tail integration limited; tests partial. | Add tailing with filters; link TUI job to trace URL; privacy filtering. | | ||
| visual-dag-builder | internal/visual-dag-builder | No | 30 | Orchestrator and types present; some .bak tests; not wired to enqueue pipeline. | Backend validation and DAG execution plan; TUI builder; Admin API to submit DAGs. | | ||
| worker-fleet-controls | internal/worker-fleet-controls | No | 45 | Control handlers and audits exist; needs live graphs and safety checks. | Add pause/drain/resume with RBAC; per‑node metrics; TUI controls panel. | | ||
|
||
--- | ||
|
||
## Methodology Notes | ||
|
||
- Inputs: `docs/ideas/*.md` specs; `internal/<feature>` modules; grep for endpoints/routes, middleware, and TODOs; presence of tests and non‑Go assets; TUI and Admin API usage. | ||
- Limitations: This pass uses heuristic signals and spot‑reads; it does not execute binaries or hit live services. High‑drift items should get a focused deep‑dive before scheduling. | ||
|
||
## Next Steps | ||
|
||
- Confirm priorities in AGENTS.md backlog; create tickets per “Recommendation” above. | ||
- If desired, I can: (1) wire TUI to Admin API Stats, (2) add Admin API endpoints for rate‑limits, and (3) implement DLQ pagination + filters with tests. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
This hook silently assumes python3 and force-stages files. Be smarter.
🤖 Prompt for AI Agents