Skip to content

Add --report, and a bug form that asks for it - #10

Merged
edimarlnx merged 1 commit into
mainfrom
report
Aug 30, 2026
Merged

edimarlnx merged 1 commit into
mainfrom
report

Conversation

@edimarlnx

Copy link
Copy Markdown
Contributor

Every bug report from a machine nobody here owns starts with the same three questions: which version, against which backend, on what. --report answers all of them in one block, so a reporter pastes rather than remembers.

$ tui-firewall --report
tui-firewall 0.2.2 (kit v0.2.9-…)
backend: firewalld 2.3.2
mode: live
distro: fedora 42 (Fedora Linux 42 (Workstation Edition))
kernel: 6.19.14-108.fc42.x86_64
arch: x86_64
locale: en_US.UTF-8
term: xterm-256color
theme: tokyo-night
sudo: sudo -n
root: no
binary: /usr/bin/tui-firewall (packaged)
backends: ufw absent, firewalld active

The generic half comes from the kit's new report package, so the whole family answers in the same shape. What this tool adds is its own: the selected backend, the version the same probe --check uses read off it, and what the detector saw of the backend it did not pick.

  • It reads nothing privileged and runs before the backend is required, so a user who cannot escalate — or a machine with no firewall at all — still produces a report, with the selection error as one of its lines.
  • --demo reports backend: demo and names the backend the fake imitates.
  • The block is written to be published: no hostname, no user name, no home path, no address. A binary under /home is reported as being elsewhere rather than by path.

.github/ISSUE_TEMPLATE/bug_report.yml is rendered from the kit template and now asks for that block first, then what happened, the steps, the expectation, whether --demo reproduces it, and any output. config.yml and feature_request.yml are untouched.

test/smoke.sh gains five read-only cases, run without sudo: the report names the backend the machine should be driving, says the run was live, still answers under --demo, and leaks neither a home path nor the host name.

The kit dependency moves to a pseudo-version on main because report is not in a tag yet. It must be re-pinned to the next kit tag.

🤖 Generated with Claude Code

https://claude.ai/code/session_01MCypLQF5AD8JD831Ea9S9q

Every bug report from a machine nobody here owns starts with the same three
questions: which version, against which backend, on what. --report answers all
of them in one block, so a reporter pastes rather than remembers.

The block comes from the kit's new report package, so the whole family answers
in the same shape. What this tool adds is its own half: the backend that was
selected, the version the same probe --check uses read off it, and what the
detector saw of the backend it did not pick, because "firewalld was chosen" and
"ufw is not installed" are different reports.

It reads nothing privileged and it runs before the backend is required. A user
who cannot escalate, or a machine with no firewall at all, still produces a
report — the missing backend is one of its lines. In --demo it says demo on the
backend line and names the backend the fake imitates.

The block is written to be published: no hostname, no user name, no home path,
no address. The smoke test asserts that on a real guest, next to the checks
that the report agrees with the backend the machine should be driving.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MCypLQF5AD8JD831Ea9S9q
@edimarlnx
edimarlnx merged commit e3ccd27 into main Aug 30, 2026
8 checks passed
@edimarlnx
edimarlnx deleted the report branch August 30, 2026 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant