Skip to content

Explain the Workspace-Edit Default and Name the Aggregator's Expression Form - #3818

Merged
ptr727 merged 3 commits into
developfrom
burndown/3617-governance-prose
Nov 2, 2026
Merged

ptr727 merged 3 commits into
developfrom
burndown/3617-governance-prose

Conversation

@ptr727

@ptr727 ptr727 commented Nov 2, 2026

Copy link
Copy Markdown
Owner

Summary

Three small GOVERNANCE.md prose changes, each made the way the maintainer answered it, plus the .gitignore entry one of them calls for.

  • Decide How the Workspace-Edit Rule Reads an Unknown Window Session State #3617, the workspace-edit default. The maintainer kept the default that treats another VS Code window as hosting no session. Both sentences stating it, in "Verification Discipline" and "Editor and Tasks", now give the reason. Another window's session state is normally unobservable, so assuming a live one would hand every such edit back to the maintainer. That reason is there so a carrier's reviewer does not raise the same finding again. agent-conduct includes "Verification Discipline", so scripts/build_dist.py regenerated it.
  • GOVERNANCE.md Editor and Tasks Is Silent on the Python Environments Extension Writing .vscode/settings.json #3757, the Python Environments extension. "Editor and Tasks" now says a repository shipping Python lists .vscode/settings.json in .gitignore. The reason given is that the Python extension installs the Python Environments extension, which writes settings there (it is in ms-python.python's extensionPack). The rule that settings live only in the .code-workspace file stays. Its .vscode/ clause now speaks of tracked files, so the generated file does not contradict it. The hub ships Python, so its own .gitignore gains the entry.
  • Name the Expression Form of the Aggregator in GOVERNANCE.md's Job Name Rule #3790, the aggregator's expression name. The "Job and step name: suffixes" bullet now says the ruleset-bound name is the one a pull_request run posts. It points to WORKFLOW.md D1.5 for the expression form and says each string that expression yields ends in "job". The same-string sentence is scoped to that pull_request name too, since an expression name: is not literally the context string.

Not in this change

#3768 (Repository Layout) was assigned to this group, but develop already has every item its decision lists. #1685 added them on 2026-09-18, before #1155 was split. Its .github/workflows/ row already scopes the reusable task workflows to the hub, and the STANDUP.md/RESYNC.md, .agents/, and host-setup/ rows are all there. That issue is left open with a comment giving the evidence, so this pull request does not close it.

Verification

  • scripts/build_dist.py --check: generated distributions are current. Only agent-conduct changed.
  • prose_lint.py . --diff against the merge base: clean.
  • spec/validate.py: OK.
  • The tests/ unittest suite: 3332 tests, OK (7 skipped).
  • local-strict-review: three recorded passes at the frontier tier. The first two raised findings and each was fixed or classed. The third ran over the final content.

Pre-existing findings, not filed

  • GOVERNANCE.md "Verification Discipline", the workspace-edit bullet, pre-existing: "Where it cannot tell, it asks the maintainer" can be read as covering the unobservable other-window state. The default sentence just before it already settles that case, and the "Editor and Tasks" copy scopes its question to "whether the rule binds it". The sentence predates this change, which adds only the reason clause.

A resync is owed to carriers, since the sections this changes are carried.

Closes on promotion: #3617, #3757, #3790

🤖 Generated with Claude Code

ptr727 and others added 3 commits November 2, 2026 10:12
…on Form

Give both statements of the unknown-window default their reason, so a
carrier's reviewer does not re-raise it. Have a repository shipping
Python ignore .vscode/settings.json, which the Python Environments
extension writes regardless of the workspace file, and add the entry to
the hub's own .gitignore. Say the ruleset-bound aggregator name is the
one a pull_request run posts, pointing to WORKFLOW.md D1.5 for the
expression form.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ngs Rule

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… Comes From

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings November 2, 2026 18:23
@coderabbitai

coderabbitai Bot commented Nov 2, 2026

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@ptr727

ptr727 commented Nov 2, 2026

Copy link
Copy Markdown
Owner Author

A recorded local strict-review pass covers head 049339e8572e3649f87b47015b5f05ad753c5a0e, the content this pull request carries at that commit against develop, and it recorded 0 findings.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The reviewed governance, ignore-rule, and synchronized skill-file changes have no documented active issues.

No open issues 🎉

What changed in this PR

This pull request clarifies governance guidance for workspace-edit defaults, Python-generated VS Code settings, and the required-check aggregator’s expression-based name. It also synchronizes the affected agent-conduct skill distributions and source digest.

Changes:

  • Explains why unknown sessions in other VS Code windows default to no known session.
  • Documents the Python extension’s generated .vscode/settings.json and adds it to .gitignore.
  • Clarifies the aggregator’s pull_request expression form and ruleset-bound status name.
  • Regenerates the authored and distributed agent-conduct skill files and source digest.
File Description
GOVERNANCE.md Updates workspace-edit, Python settings, and aggregator naming guidance.
.gitignore Ignores generated Python extension settings.
.github/​skills/​agent-conduct/​SKILL.md Synchronizes the GitHub Copilot skill distribution.
.claude-plugin/​fleet-skills/​skills/​agent-conduct/​SKILL.md Synchronizes the Claude skill distribution.
.claude-plugin/​fleet-skills/​.source-digests/​agent-conduct Updates the generated skill source digest.
.agents/​skills/​agent-conduct/​SKILL.md Updates the authored agent-conduct skill content.

Review effort: Lite

@codecov

codecov Bot commented Nov 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.96%. Comparing base (b38e084) to head (049339e).
⚠️ Report is 73 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #3818      +/-   ##
===========================================
+ Coverage    81.60%   82.96%   +1.35%     
===========================================
  Files           26       29       +3     
  Lines         9070     9732     +662     
===========================================
+ Hits          7402     8074     +672     
+ Misses        1668     1658      -10     
Flag Coverage Δ
python-3.13 82.96% <ø> (+1.35%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ptr727
ptr727 merged commit 6984497 into develop Nov 2, 2026
14 checks passed
@ptr727
ptr727 deleted the burndown/3617-governance-prose branch November 2, 2026 18:35
ptr727 added a commit that referenced this pull request Nov 3, 2026
…rge on a Running Hosted Review, and Gate Skill Description Length (#3843)

Promotes the changes merged into `develop` since promotion #3797 to
`main`, the end of an away-mode backlog burndown.

- [#3803](#3803) exempts
the Roslyn embedded-language marker (`// lang=json`, `language=`) from
the prose gate's comment rules as a tool directive.
- [#3807](#3807) has
`local_review.py record` take `--report`, the file the reviewer wrote,
bind the pass to its sha256, and derive the finding count from it.
`status` gains `reportPath`.
- [#3809](#3809) holds
`pr_review.py merge` while a hosted review is still running on the head,
and routes a declined Qodo finding to a dismiss request.
- [#3811](#3811) dates an
anchored `intentRef` by the section its anchor names, and lets a
`driftNote` acknowledge a verified intent advisory.
- [#3816](#3816) moves the
null GraphQL node check into the shared `gh_graphql` transport as
`NullNodeError`.
- [#3818](#3818) explains
the workspace-edit default in `GOVERNANCE.md` and names the aggregator's
expression form.
- [#3822](#3822) moves the
abandon discard to the `backlog-burndown` orchestrator, aligns the
abandoned-branch delete, and holds a grown agent-safety set.
- [#3823](#3823) scopes
the Husky prose gate to staged paths and adds `--skip-generated` so a
named file inside a generated tree is skipped.
- [#3828](#3828) reads
Copilot's `Open findings:` label, drops the duplicate `null_node`, and
matches `scripts/README.md` to the Merge Gate.
- [#3829](#3829) bumps the
two stale hub caller snippet pins and documents the fallback's
mixed-pair refusal.
- [#3831](#3831) keeps an
inherited `GIT_DIR` from rerooting the prose gate's subdirectory git
reads.
- [#3832](#3832) gives
`backlog-burndown` a disposition for a worker's standalone clone and
keeps the agent-safety hold past a park.
- [#3835](#3835) makes
`carry.py check-sections` refuse what `apply-sections` would, and name
an open fence.
- [#3836](#3836) pins the
reusable-workflow stubs by placeholder and ticks the PlexCleaner gates
item.
- [#3838](#3838) has the
`runtime-secrets` audit dimension detect a bare `secrets/` directory
from the tracked files that name it.
- [#3839](#3839) gates
skill descriptions at the 1024-character limit and trims every one over
it.
- [#3846](#3846) fixes an
adjacent doc, an in-file pre-existing defect, and an edge case on new
code in the open pull request instead of filing an issue for each, and
keeps filing for code that runs elsewhere.
- [#3847](#3847) refuses
skill frontmatter that parses to a list or a scalar, so the description
length gate cannot be bypassed.

Fixes #3770
Fixes #3699
Fixes #3705
Fixes #3789
Fixes #1819
Fixes #727
Fixes #3710
Fixes #3706
Fixes #3623
Fixes #3687
Fixes #3617
Fixes #3757
Fixes #3790
Fixes #3786
Fixes #3785
Fixes #3772
Fixes #1657
Fixes #3443
Fixes #3824
Fixes #3817
Fixes #3805
Fixes #1666
Fixes #3700
Fixes #3821
Fixes #3771
Fixes #3794
Fixes #3825
Fixes #3690
Fixes #1472
Fixes #3813
Fixes #3719
Fixes #1592
Fixes #3845

🤖 Generated with [Claude Code](https://claude.com/claude-code)
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