mirror of
https://github.com/KeygraphHQ/shannon.git
synced 2026-08-24 12:12:37 +02:00
README update
Documentation pass over the README and supporting docs, incorporating the Aug 19 review with Parathan. README: - Dark/light banner and Discord/Keygraph buttons via <picture> - Add a Common Questions section at the bottom of the page - State one consistent position on model support and provider breadth - Name the OpenAI Responses API alongside Chat Completions - Frame local and self-hosted models as technically supported but not recommended, since capability varies once the harness opens every provider and model - Describe SARIF as machine-readable output rather than a CI feature Docs: - ai-providers: drop the Claude-preference claim; explain that capability varies and the model should be evaluated against your own targets - configuration: correct rating semantics stale since v2.2.0, since severity is now recorded in both exploitative and analysis-only runs - safety: reframe the model-support caveat in the same terms - worker: correct the stale rationale on the SARIF analysis-mode gate CI/CD documentation is intentionally omitted until the GitHub Marketplace action lands, so the README does not ship a hand-rolled npx wrapper that is about to be replaced. llms.txt and llms-full.txt regenerated from source, with one deliberate exception: the "Is Shannon free?" and "Is Shannon free for startups and nonprofits?" questions are kept in the llms-full.txt copy of the README but not in the README itself. That section exists for agents, so a naive regeneration of llms-full.txt would drop them; re-add them if you rebuild the file from source. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
12d1c48a78
commit
af1ed2a563
@@ -452,9 +452,11 @@ export async function runAuthzExploitAgent(input: ActivityInput): Promise<AgentM
|
||||
/**
|
||||
* Write report.sarif when the run is exploitative and the operator asked for it.
|
||||
*
|
||||
* Skipped entirely for analysis-only runs: those findings carry no severity, so every
|
||||
* `result.level` would be invented. Failures are logged and swallowed — the SARIF log is a
|
||||
* secondary artifact and must not fail a run whose report is already written.
|
||||
* Skipped entirely for analysis-only runs. The original reason was that those findings carried
|
||||
* no severity, so every `result.level` would have been invented; since severity is recorded in
|
||||
* both modes an analysis run could now populate `level`, but it would report an assessed
|
||||
* severity as a measured one, so the gate stays. Failures are logged and swallowed — the SARIF
|
||||
* log is a secondary artifact and must not fail a run whose report is already written.
|
||||
*/
|
||||
async function writeSarifIfEnabled(
|
||||
input: ActivityInput,
|
||||
|
||||
Reference in New Issue
Block a user