Skip to content

docs(agents): heal only what this repository owns; the settings file is refused, never repaired - #465

Merged
Vivswan merged 2 commits into
mainfrom
docs/healing-scope
Oct 5, 2026
Merged

Vivswan merged 2 commits into
mainfrom
docs/healing-scope

Conversation

@Vivswan

@Vivswan Vivswan commented Oct 5, 2026 •

Copy link
Copy Markdown
Owner

What this changes

before (as merged in #464):
- A malformation in a settings file or an input with one unambiguous repair (an identical duplicate entry, surrounding
  whitespace, an enum value off only by case) is healed where it is parsed
  and the repair reported in the run output, the healing step's comment stating this rule in one line.
  One with no single repair is refused there, naming the key and the fix, never discovered at apply time:
  GET-only fields, other enum violations, contradictory key pairs, and unknown keys in a closed GitHub shape have none,
  since dropping or guessing a value discards what the author wrote.
  Open passthrough shapes keep unknown keys and note them at check time when GitHub does not echo them back.

after:
- What can be known wrong from the settings file or the run inputs alone is refused when the file is parsed, naming the
  key and the fix, never discovered at apply time:
  GET-only fields, enum violations, contradictory key pairs, unknown keys in a closed GitHub shape.
  Healing is for state this action owns: GitHub's repository settings, which apply converges toward what the settings
  file declares;
  the settings file and the inputs are the user's and are never healed from GitHub or repaired by the parser.
  Open passthrough shapes keep unknown keys and note them at check time when GitHub does not echo them back.

How

Proof

…is refused, never repaired

The owner clarified that auto-healing applies only to files and state this repository owns, so the settings file and the run inputs return to the refuse-at-parse rule that held before #464. The heal examples go, and one sentence states the scope boundary.
Copilot AI balanced review requested due to automatic review settings October 5, 2026 06:41
The owner asked for the direction to be explicit: apply converges GitHub toward the settings file, and the settings file is never healed from GitHub. The sentence folds into the scope sentence so the bullet keeps three.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The documentation change is clear, internally consistent, and matches the stated purpose.

Review effort: Balanced
Findings: None

What changed in this PR

Clarifies that parsers refuse invalid user settings and inputs, while healing applies only to repository state owned by the action.

Changes:

  • Restores parse-time refusal for known-invalid configuration.
  • Defines the boundary between user-owned configuration and action-owned GitHub state.
File Description
AGENTS.md Updates repository guidance for validation and healing behavior.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@github-actions

github-actions Bot commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

File size check

0 over a hard cap (fails), 34 warning(s).

File Size Tier Cap
.github/actions/setup/action.yml:7 169 chars warn 150
.github/scripts/gen-inputs-table.ts:54 11 comment lines warn 10
.github/scripts/generated.ts:28 191 chars warn 150
.github/scripts/release-pipeline.ts:7 156 chars warn 150
.github/scripts/release-pipeline.ts:456 151 chars warn 150
.github/scripts/release-pipeline.ts:1250 153 chars warn 150
.github/scripts/release-pipeline.ts:1 33 comment lines (header) warn 25
.github/scripts/release-pipeline.ts:452 14 comment lines warn 10
.github/workflows/post-green.yml:29 153 chars warn 150
.github/workflows/update-release-pr.yml:110 14 comment lines warn 10
docs/upgrading/v2-to-v3.md 1276 lines warn 1040
src/engine/layers.ts:75 157 chars warn 150
src/engine/layers.ts:95 167 chars warn 150
src/flows/settings-write.ts:137 159 chars warn 150
src/github/api-error.ts:104 159 chars warn 150
src/github/secret-scan.ts:45 11 comment lines warn 10
src/schema.ts:188 153 chars warn 150
src/schema.ts:199 176 chars warn 150
src/sections/contract/errors.ts:13 14 comment lines warn 10
src/sections/secret_scanning_custom_patterns/compilable-form.ts:382 161 chars warn 150
src/sections/shared/roles.ts:43 13 comment lines warn 10
src/sections/shared/schema-helpers.ts:15 153 chars warn 150
src/types.ts:16 156 chars warn 150
test/docs/guides.test.ts:451 155 chars warn 150
test/docs/nightly-workflows.test.ts:206 160 chars warn 150
test/e2e/constants.ts:9 197 chars warn 150
test/e2e/generators.ts 2634 lines warn 2560
test/e2e/generators.ts:1704 166 chars warn 150
test/e2e/generators.ts:1858 161 chars warn 150
test/e2e/generators.ts:1667 12 comment lines warn 10
test/engine/execute.test.ts:617 152 chars warn 150
test/flows/merge-parity.test.ts:63 164 chars warn 150
test/scripts/auto-fix-allowlist.test.ts:12 12 comment lines warn 10
test/sections/refusal-messages.test.ts:61 19 comment lines warn 10

Split the file, wrap the line, shorten or exempt the comment, or list the path in .file-size-allow.local with a # reason.

5 managed file(s) skipped; repo-platform owns them.

@Vivswan Vivswan added the merge-when-green Owner approved: merge once every gate is green label Oct 5, 2026
@Vivswan
Vivswan merged commit 3051c79 into main Oct 5, 2026
30 checks passed
@Vivswan
Vivswan deleted the docs/healing-scope branch October 5, 2026 08:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-when-green Owner approved: merge once every gate is green

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants