-
Notifications
You must be signed in to change notification settings - Fork 1
📖 [Docs]: Ways of working now follows the canonical issue model #97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Marius Storhaug (MariusStorhaug)
merged 31 commits into
main
from
issue-86-align-ways-of-working
Jul 26, 2026
Merged
Changes from 28 commits
Commits
Show all changes
31 commits
Select commit
Hold shift + click to select a range
9010e39
📖 [Docs]: Align delivery workflow with issue types
MariusStorhaug a840def
📖 [Docs]: Align issue model consumers
MariusStorhaug 3f78fbd
📖 [Docs]: Give propagated updates delivery issues
MariusStorhaug 133ad22
📖 [Docs]: Clarify delivery checklist terminology
MariusStorhaug eab23ca
📖 [Docs]: Clarify propagation delivery pair
MariusStorhaug a71bd38
📖 [Docs]: Frame agent guidance as workflow stages
MariusStorhaug 9ae0d89
📖 [Docs]: Remove stale agent role framing
MariusStorhaug a5ba29c
📖 [Docs]: Route work through workflow stages
MariusStorhaug 965df09
📖 [Docs]: Discover workflow from root indexes
MariusStorhaug 9d5eb5f
📖 [Docs]: Align workflow maintenance navigation
MariusStorhaug be0e173
📖 [Docs]: Use type-neutral delivery plan steps
MariusStorhaug 85c4ce6
📖 [Docs]: Label the stage index precisely
MariusStorhaug 59770e5
📖 [Docs]: Flatten workflow stage navigation
MariusStorhaug d75e44a
📖 [Docs]: Move procedures under ways of working
MariusStorhaug 0c62e6e
⚙️ [Maintenance]: Require fresh context repositories
MariusStorhaug 1402121
📖 [Docs]: Gate discovery on fresh context
MariusStorhaug 8665d70
✅ [Tests]: Cover context freshness failures
MariusStorhaug b4790ff
✅ [Tests]: Satisfy PowerShell fixture analysis
MariusStorhaug a40ef22
✅ [Tests]: Verify all context repos synchronize
MariusStorhaug a1a49b1
⚙️ [Maintenance]: Preserve pluggable agent setup
MariusStorhaug 5a573b3
⚙️ [Maintenance]: Clarify bootstrap identity warning
MariusStorhaug 7994668
📖 [Docs]: Defer memory writes to repository policy
MariusStorhaug 212fab4
⚙️ [Maintenance]: Normalize project context paths
MariusStorhaug c4f4adb
⚙️ [Maintenance]: Restore bare docs worktree topology
MariusStorhaug 973eea0
⚙️ [Maintenance]: Harden docs topology bootstrap
MariusStorhaug b3c9255
⚙️ [Maintenance]: Complete topology rollback coverage
MariusStorhaug edde2c9
⚙️ [Maintenance]: Reject all context path overlaps
MariusStorhaug fec49c6
⚙️ [Maintenance]: Verify canonical context remotes
MariusStorhaug a8b9ee1
⚙️ [Maintenance]: Preflight all context safety
MariusStorhaug df1e7c5
Merge origin/main into issue 86 workflow alignment
MariusStorhaug b854996
📖 [Docs]: Resolve seed default branches dynamically
MariusStorhaug File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,29 +1,72 @@ | ||
| # Agents | ||
| # Agent Instructions | ||
|
|
||
| ## Main directive | ||
|
|
||
| Everything is a work in progress and can be updated and improved. | ||
| If you find a problem, fix it if it's small; otherwise, register it as an issue in the respective repo. | ||
| Everything is a work in progress and can be updated and improved. Fix a small problem when it is directly in scope; register a larger or unrelated problem as an issue in the repository that owns it. | ||
|
|
||
| ## Install the ecosystem | ||
| This repository belongs to `github.com/MSXOrg`. | ||
|
|
||
| 1. Create a folder in the home directory called `.msx`: | ||
| 2. Clone the ecosystem locally: | ||
| 1. <https://github.com/MSXOrg/docs> — requires PRs to be updated. | ||
| - Clone as bare and use worktrees. | ||
| - Create a worktree for every branch. Use a concise `<issue>-<slug>` worktree folder for a topic branch named `<type>/<issue>-<slug>`. | ||
| 2. <https://github.com/MSXOrg/memory/> — work directly towards main. | ||
| - Simple clone, only main. | ||
| ## Install and synchronize the ecosystem | ||
|
|
||
| To install: | ||
| - Clone the repos in the users home folder under a sub-folder named `.msx`. | ||
| - Set configs locally to each of these repos using the GitHub username and email. | ||
| The agent workspace lives under `~/.msx`: | ||
|
|
||
| ## Working with the ecosystem | ||
| | Repository | Local path | Purpose | Change model | | ||
| | --- | --- | --- | --- | | ||
| | `MSXOrg/docs` | `~/.msx/docs.git` + `~/.msx/docs` | Bare backing repository plus clean readable main worktree for reviewed organization context. | Pull requests through topic worktrees only. | | ||
| | `MSXOrg/memory` | `~/.msx/memory` | Durable organization memory: prior decisions, gotchas, and reusable working knowledge. | Commit and push directly to `main`, per that repository's policy. | | ||
|
|
||
| 1. Get to know this repo first: | ||
| - [README](README.md) for what this repository is and how it builds. | ||
| - [CONTRIBUTING](CONTRIBUTING.md) for how to contribute and the review process. | ||
| 2. Read `~/.msx/docs` - start with the index to get an overview of what is here. | ||
| 3. Read `~/.msx/memory` - start with the index to get an overview of what is here. Use this while working - commit your memories here for work inside the PSModule organization. | ||
| 4. While working with the code, do small micro commits and push on every commit. This will make it easier to review and merge your changes. | ||
| From this repository, install missing context repositories and synchronize every existing clone before use: | ||
|
|
||
| ```powershell | ||
| pwsh bootstrap/Initialize-MsxWorkspace.ps1 ` | ||
| -UserName '<github-user>' ` | ||
| -UserEmail '<github-noreply-email>' | ||
| ``` | ||
|
|
||
| Projects that add their own docs and memory provide plug-in coordinates without changing the synchronization implementation: | ||
|
|
||
| ```powershell | ||
| $projects = @( | ||
| @{ | ||
| Name = 'MSXOrg' | ||
| Path = '' | ||
| DocsUrl = 'https://github.com/MSXOrg/docs.git' | ||
| MemoryUrl = 'https://github.com/MSXOrg/memory.git' | ||
| } | ||
| @{ | ||
| Name = 'PSModule' | ||
| Path = 'projects/PSModule' | ||
| DocsUrl = 'https://github.com/PSModule/docs.git' | ||
| MemoryUrl = 'https://github.com/PSModule/memory.git' | ||
| } | ||
| ) | ||
| & ./bootstrap/Initialize-MsxWorkspace.ps1 -Project $projects | ||
| ``` | ||
|
|
||
| The bootstrap writes identity only to each context repository's local git configuration. It must succeed before any context is read; do not continue with missing, dirty, diverged, wrong-branch, unreachable, or stale context. | ||
|
|
||
| Use a dedicated worktree for every topic branch. Follow [Git Worktrees](src/docs/Ways-of-Working/Git-Worktrees.md) for the local layout and [Branching and Merging](src/docs/Ways-of-Working/Branching-and-Merging.md) for `<type>/<issue>-<slug>` branch names. | ||
|
|
||
| ## Canonical context | ||
|
|
||
| - Docs root: [src/docs/index.md](src/docs/index.md) | ||
| - Organization memory: `~/.msx/memory/index.md` | ||
|
|
||
| ## Before acting | ||
|
|
||
| 1. Segment the work by host, organization, repository, path, and task. | ||
| 2. Synchronize every canonical context repository to its remote default branch; stop if any context may be stale. | ||
| 3. Start at the docs root index and follow [Ways of Working](src/docs/Ways-of-Working/index.md) to the canonical [Workflow](src/docs/Ways-of-Working/Workflow.md). | ||
| 4. Infer the current stage from the task and its artifacts, then read the linked stage procedure. | ||
| 5. Read [README.md](README.md), [CONTRIBUTING.md](CONTRIBUTING.md), relevant standards, and organization memory. | ||
| 6. Apply path-specific local rules only when they match the files in scope. | ||
|
|
||
| ## Working in this repository | ||
|
|
||
| 1. Use [README.md](README.md) to understand what this repository is and how it builds. | ||
| 2. Use [CONTRIBUTING.md](CONTRIBUTING.md) for its contribution and review contract. | ||
| 3. Keep work reviewable with small, descriptive micro-commits. | ||
| 4. Push every commit so the remote branch, CI, and draft pull request reflect current work. | ||
| 5. Improve organization memory when a verified lesson is likely to matter again; commit and push MSXOrg memory directly to `main`. | ||
|
|
||
| This file owns bootstrap and repository-specific operating instructions. The linked documentation owns reusable process knowledge; this file does not redefine a workflow stage, coding standard, or review convention. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.