Skip to content

zedagent: fix docs inaccuracies from review#5965

Open
eriknordmark wants to merge 2 commits into
lf-edge:masterfrom
eriknordmark:zedagent-docs-review
Open

zedagent: fix docs inaccuracies from review#5965
eriknordmark wants to merge 2 commits into
lf-edge:masterfrom
eriknordmark:zedagent-docs-review

Conversation

@eriknordmark
Copy link
Copy Markdown
Contributor

@eriknordmark eriknordmark commented May 15, 2026

Description

As I've said, the output needs to be reviewed. I looked over zedagent.md and zedagent-internals.md before they were merged but I didn't review every sentence. I did that today (actually using annotated pdf copies of the markdown files which claude figured out how to parse and extract the comments), and I came up with 17 issues (one "please check" and 16 "this looks incorrect") against zedagent.md and a few against zedagent-internals.md.

While the incorrect things aren't random hallucinations, they do show a lack of attention to detail. I don't know if it is useful to add "Please double check your work" to the prompt.


See the individual commit messages for the full list; highlights:

  • zedagent.md: bootstrap-config path made explicit with a fourth
    fallback to types.DefaultConfigItemValueMap; the controller-cert
    fetch by zedclient is called out at the onboarding gate; saved
    config moved above bootstrap in the source-hierarchy table;
    ConfigItemValueMap layering corrected (LPS does not override);
    config-fetch jitter corrected to [0.3, 1.0] x ConfigInterval;
    deferred queue described as holding objects keyed by identity.
  • zedagent-internals.md: Publications table now shows concrete
    pubsub-key literals; Attestation FSM section frames the
    controller↔TPM flow and lists the three EVE-API ZAttestReq types;
    Maintenance Mode table is corrected (apiMaintenanceMode is a
    dedicated protobuf field; the GlobalConfig knob is maintenance.mode,
    controller/LOC only; localMaintenanceMode is one of six
    MaintenanceModeReason enum values).

How to test and validate this PR

Render the two markdown files (GitHub preview or markdown-to-pdf)
and review the affected sections. Each correction is grounded in
grep-verified code references cited inline (file:line).

Changelog notes

No user-facing changes (documentation only).

PR Backports

  • 16.0-stable: No, docs-only fix.
  • 14.5-stable: No, docs-only fix.
  • 13.4-stable: No, docs-only fix.

Checklist

  • I've provided a proper description
  • I've added the proper documentation
  • I've tested my PR on amd64 device (N/A — docs-only)
  • I've tested my PR on arm64 device (N/A — docs-only)
  • I've written the test verification instructions

Corrects pkg/pillar/docs/zedagent.md based on review feedback. Among
the substantive changes: the bootstrap-config path is now stated and a
fourth fallback to types.DefaultConfigItemValueMap is added; the
"no controller communication" claim around the onboarding gate flags
zedclient's pre-onboarding cert fetch; saved config is moved above
bootstrap in the source-hierarchy table (it takes precedence at boot);
the GlobalConfig layering description drops the incorrect "LPS
overrides" claim and starts from the compiled-in defaults; the config-
fetch jitter is corrected to [0.3, 1.0] x ConfigInterval; the deferred
queue is described as holding objects keyed by identity rather than
independent HTTP requests. Smaller wording fixes throughout.

Signed-off-by: eriknordmark <erik@zededa.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@eriknordmark eriknordmark requested review from a team, milan-zededa and rene May 15, 2026 18:29
@milan-zededa
Copy link
Copy Markdown
Contributor

While the incorrect things aren't random hallucinations, they do show a lack of attention to detail. I don't know if it is useful to add "Please double check your work" to the prompt.

I don’t think throwing more AI at the hallucination problem is the right solution. Every PR, including AI-generated ones, should still be reviewed carefully, first by the person signing off on it, and then by the rest of the team (or at least a smaller review group).

Erik, I noticed you’ve opened a large number of PRs this month already. Are you realistically able to review all of them thoroughly, or are the AI agents effectively opening and submitting these PRs on your behalf? At the end of the day, the author of the PR is still responsible for its contents, regardless of whether parts of it were generated by AI.

We also should not merge AI-generated code or text unchecked, including documentation and tests. Incorrect or low-quality generated content eventually becomes training material, examples, and references for future systems, which only compounds the hallucination and quality problems over time.

Corrects pkg/pillar/docs/zedagent-internals.md based on review
feedback. The Publications table now shows the concrete pubsub-key
literal for every row (mostly "global"; "lps" for the LPS-sourced
DevicePortConfig; "zedagent" for ZedAgentStatus; empty for LOCConfig;
plus three dynamic-key topics flagged as such). The Attestation FSM
section opens by framing the security-relevant flow as end-to-end
between controller and TPM with zedagent as courier, and adds a table
of the three EVE-API ZAttestReq types and a link to the Measured Boot
and Remote Attestation Confluence page. The Maintenance Mode table is
corrected: apiMaintenanceMode comes from the dedicated
EdgeDevConfig.MaintenanceMode protobuf field (not a ConfigItemValueMap
entry); the GlobalConfig knob is now named maintenance.mode and can
only be set by controller or LOC, not LPS; and localMaintenanceMode is
expanded to the six-value MaintenanceModeReason enum published by
nodeagent. Also renames "DNS gate" in the subscription table to match
the renamed gate in zedagent.md.

Signed-off-by: eriknordmark <erik@zededa.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@eriknordmark eriknordmark force-pushed the zedagent-docs-review branch from 0fa3174 to 4009fab Compare May 20, 2026 14:12
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.

2 participants