Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[Feature]: Let a project declare optional components absent by choice, so fw doctor stays green and readable

Đang mở
#98 4 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
45/100
Loại issue
Tính năng
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
shell, yaml
Lĩnh vực
cli, devops, tooling

Hướng nghiên cứu

Start by reading lib/config.sh and agents/context/sidecar-autostart.sh, then trace how fw doctor, fw audit, and fw cron generate read project configuration. Identify how fw upgrade preserves MESSAGING_TOOLKIT and which cron jobs and checks map to each component. Done means disabled components are skipped in doctor and audit, omitted from generated cron jobs, and kept through upgrades.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:doctor enhancement severity:low status:in-progress triaged
Problem

A consumer project can deliberately run without some optional components. Here: no embedding service (Ollama: memory is tight on the host), no Playwright (no framework UI tests in a consumer), no TermLink and no cross-host messaging, no framework cron (fw cron install needs root and the two seeded jobs serve the components above).

The framework has no way to record that choice, so fw doctor exits 1 forever:

  • six FAIL lines for the vector index (index, manifest, age, lag, canary, token) plus WARN usage: recall and WARN [host] embed endpoint not reachable. lib/config.sh only offers thresholds (INDEX_MAX_AGE_HOURS, RECALL_FAIL_PCT_WARN...), no switch;
  • WARN Playwright pip package missing;
  • WARN Cron registry present but not generated (the seeded jobs are sidecar-sweep-5m and index-reindex-hourly);
  • WARN Sidecar watcher live but INERT: TermLink absent and WARN [host] TermLink not installed.

MESSAGING_TOOLKIT: 0 (T-4042, thank you) stops the slash commands and scripts, but not the sidecar: the sidecar-autostart SessionStart hook still starts a receiver and two watchers for every session (agents/context/sidecar-autostart.sh); the only opt-outs are the environment variable FW_SIDECAR_AUTOSTART=0, which belongs to the launcher, not to the project, and fw sidecar stop.

A doctor that is always red teaches the operator to stop reading it, and the real failures are lost among the expected ones.

Proposed Solution
  1. One project-level switch per optional component in .framework.yaml, read by fw doctor and fw audit, for example SEMANTIC_INDEX: 0, UI_TESTS: 0, SIDECAR: 0. When off, the related checks print SKIP <name> (disabled in .framework.yaml) and do not count toward the exit code.
  2. MESSAGING_TOOLKIT: 0 also implies no sidecar autostart and no sidecar-sweep-5m job (or SIDECAR: 0 as its own key, documented next to it).
  3. fw cron generate leaves out jobs whose component is off, so fw cron install installs only what is used.
  4. fw upgrade keeps these keys, as it already keeps MESSAGING_TOOLKIT.
Subsystem

Task Management

Scope

None

Alternatives Considered
  • Install everything: Ollama costs memory the host does not have; Playwright and TermLink serve nothing in this project.
  • Live with the red doctor: that is what happens now, and it hides real failures.
  • FW_SIDECAR_AUTOSTART=0 in the launcher: it works for the sidecar only, and the setting then lives outside the project.
Additional Context

1.8.11 (e42aa41bf), vendored consumer, Linux (Ubuntu 20.04, systemd 245), Claude Code. Found during a review of the installation after upgrading from 1.8.6. Related defects found in the same review (smoke test, cron OK, resolver-loop, turn driver) are reported separately; this request is only about declaring components absent.

Ngôn ngữ chính
Shell
Star
16
Fork
6
Merge trung bình
6 giờ 24 phút
Pull request đã merge (30 ngày)
5

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của DimitriGeelen/agentic-engineering-framework

Tất cả issue của DimitriGeelen/agentic-engineering-framework

Issue tương tự

Thêm issue về Shell/Bash

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.