Skip to content

docs(config): fix configuration reference for jailbreak, streaming and sample conversation#1643

Open
Pouyanpi wants to merge 1 commit intodevelopfrom
docs/configure-rails-configuration-reference
Open

docs(config): fix configuration reference for jailbreak, streaming and sample conversation#1643
Pouyanpi wants to merge 1 commit intodevelopfrom
docs/configure-rails-configuration-reference

Conversation

@Pouyanpi
Copy link
Collaborator

Description

  • Fix check jailbreak to jailbreak detection heuristics in input rails table
  • Add injection detection to output rails table
  • Fix sample_conversation format to use Colang syntax
  • Deprecate top-level streaming field with proper admonition
  • Simplify streaming config to boolean

…nd sample conversation

- Fix check jailbreak to jailbreak detection heuristics in input rails
table
- Add injection detection to output rails table
- Fix sample_conversation format to use Colang syntax
- Deprecate top-level streaming field with proper admonition
- Simplify streaming config to boolean
@Pouyanpi Pouyanpi added this to the v0.21 milestone Feb 16, 2026
@Pouyanpi Pouyanpi added the documentation Improvements or additions to documentation label Feb 16, 2026
@github-actions
Copy link
Contributor

Documentation preview

https://nvidia-nemo.github.io/Guardrails/review/pr-1643

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Feb 16, 2026

Greptile Summary

This PR corrects documentation inaccuracies in the configuration reference:

  • Renames check jailbreak to jailbreak detection heuristics in the Built-in Input Flows table to match the actual flow name defined in nemoguardrails/library/jailbreak_detection/flows.co
  • Adds injection detection to the Built-in Output Flows table, which was previously missing
  • Updates sample_conversation format from a simplified user:/assistant: style to the correct Colang 1.0 syntax with intent annotations, matching nemoguardrails/rails/llm/default_config.yml
  • Deprecates the top-level streaming field with a proper admonition and simplifies it from an object to a boolean, consistent with the Pydantic model in config.py

Issues found:

  • The check jailbreak flow name was only corrected in the Built-in Input Flows table but not in two YAML code examples (Rails Schema at line 171 and Input Rails example at line 239), creating an inconsistency within the same document
  • The Complete Example at the bottom still shows streaming as an object (streaming:\n enabled: true) rather than the simplified boolean, contradicting the deprecation change made in this PR

Confidence Score: 3/5

  • Documentation-only PR with correct intent but incomplete application of the fixes across all relevant sections
  • Score of 3 reflects that while the changes are directionally correct and verified against source code, the PR introduces internal inconsistencies by not applying the flow name fix and streaming format change to all YAML examples in the document. Users copying from the uncorrected examples would use incorrect configuration.
  • Pay close attention to docs/configure-rails/configuration-reference.md — the YAML code examples at lines 171, 239, and 829-830 were not updated to match the fixes applied elsewhere in the document

Important Files Changed

Filename Overview
docs/configure-rails/configuration-reference.md Fixes jailbreak flow name and sample_conversation format, adds injection detection to output rails, and deprecates top-level streaming field. However, the check jailbreak flow name was not updated in two other YAML code examples (lines 171, 239), and the Complete Example still shows streaming as an object instead of a boolean.

Flowchart

flowchart TD
    A[User Input] --> B[Input Rails]
    B --> B1["self check input"]
    B --> B2["jailbreak detection heuristics ✏️"]
    B --> B3["jailbreak detection model"]
    B --> B4["mask sensitive data on input"]
    B --> B5["detect sensitive data on input"]
    B --> B6["llama guard check input"]
    B --> B7["content safety check input"]
    B --> B8["topic safety check input"]
    B1 & B2 & B3 & B4 & B5 & B6 & B7 & B8 --> C[LLM Processing]
    C --> D[Output Rails]
    D --> D1["self check output"]
    D --> D2["self check facts"]
    D --> D3["self check hallucination"]
    D --> D4["mask sensitive data on output"]
    D --> D5["llama guard check output"]
    D --> D6["content safety check output"]
    D --> D7["injection detection ✨"]
    D1 & D2 & D3 & D4 & D5 & D6 & D7 --> E[Bot Response]

    style B2 fill:#ffd700,stroke:#333
    style D7 fill:#90ee90,stroke:#333
Loading

Last reviewed commit: 44ca5f2

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 file reviewed, 3 comments

Edit Code Review Agent Settings | Greptile

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Feb 16, 2026

Additional Comments (3)

docs/configure-rails/configuration-reference.md
Inconsistent flow name not updated

The flow name check jailbreak was corrected to jailbreak detection heuristics in the Built-in Input Flows table (line 253), but this YAML example still uses the old incorrect name. The actual flow is defined as jailbreak detection heuristics in nemoguardrails/library/jailbreak_detection/flows.co and flows.v1.co. This should be updated for consistency.

      - jailbreak detection heuristics
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/configure-rails/configuration-reference.md
Line: 171:171

Comment:
**Inconsistent flow name not updated**

The flow name `check jailbreak` was corrected to `jailbreak detection heuristics` in the Built-in Input Flows table (line 253), but this YAML example still uses the old incorrect name. The actual flow is defined as `jailbreak detection heuristics` in `nemoguardrails/library/jailbreak_detection/flows.co` and `flows.v1.co`. This should be updated for consistency.

```suggestion
      - jailbreak detection heuristics
```

How can I resolve this? If you propose a fix, please make it concise.

docs/configure-rails/configuration-reference.md
Inconsistent flow name not updated

Same issue as the Rails Schema section — this YAML example still references the old check jailbreak flow name. It should match the corrected name in the Built-in Input Flows table.

      - jailbreak detection heuristics
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/configure-rails/configuration-reference.md
Line: 239:239

Comment:
**Inconsistent flow name not updated**

Same issue as the Rails Schema section — this YAML example still references the old `check jailbreak` flow name. It should match the corrected name in the Built-in Input Flows table.

```suggestion
      - jailbreak detection heuristics
```

How can I resolve this? If you propose a fix, please make it concise.

docs/configure-rails/configuration-reference.md
Complete Example contradicts streaming deprecation

The Complete Example at the bottom of the document still shows the top-level streaming field as an object (streaming:\n enabled: true), which contradicts the change made earlier in this PR that simplifies it to a boolean and marks it as deprecated. This should either be updated to streaming: true (to match the new boolean format) or removed entirely (since the field is deprecated and ignored at runtime).

streaming: true
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/configure-rails/configuration-reference.md
Line: 829:830

Comment:
**Complete Example contradicts streaming deprecation**

The Complete Example at the bottom of the document still shows the top-level `streaming` field as an object (`streaming:\n  enabled: true`), which contradicts the change made earlier in this PR that simplifies it to a boolean and marks it as deprecated. This should either be updated to `streaming: true` (to match the new boolean format) or removed entirely (since the field is deprecated and ignored at runtime).

```suggestion
streaming: true
```

How can I resolve this? If you propose a fix, please make it concise.

Copy link
Member

@trebedea trebedea left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Pouyanpi , should we list here (in the input / output rails) the different integrations as well?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants