@rasensio/aidlc-content 1.84.0 → 1.86.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -73,8 +73,13 @@ inside it before starting the agent session.
|
|
|
73
73
|
concurrency check told a second session in the same checkout it had "nothing to collide on",
|
|
74
74
|
while the roadmap read a `.aidlc/` that did not exist. It was deleted rather than kept beside the
|
|
75
75
|
new one: a helper answering the wrong question is how one mistake reached five callers.
|
|
76
|
-
`
|
|
77
|
-
|
|
76
|
+
`worktree.ts` `createWorktree` uses the same path rule through `projectPathInCheckout`: the new
|
|
77
|
+
worktree goes beside the *checkout*, not beside the project, and the instance, its cost shim and
|
|
78
|
+
its actions use the worktree's copy of the project. For a project at `packages/<name>` the project's
|
|
79
|
+
`../` is still inside the repository, so a worktree there showed up in the main checkout as an
|
|
80
|
+
untracked folder that `git add -A` would commit, and the state landed at a top no command reads.
|
|
81
|
+
The `Worktree:` line `aidlc start` prints names that copy, because it is the directory to work
|
|
82
|
+
in and the one autopilot launches its agent in; a `Checkout:` line names the top when it differs.
|
|
78
83
|
- `packages/cli/src/state` — instance folders, `phase-<name>.yaml`, and the append-only
|
|
79
84
|
`transitions.log`.
|
|
80
85
|
- `packages/cli/src/commands/claim.ts` — the `claim` and `release` commands, which also write the
|
package/package.json
CHANGED
package/skills/03-entry-point.md
CHANGED
|
@@ -86,7 +86,7 @@ Two sessions sharing one checkout collide on **git**, not on state: creating a b
|
|
|
86
86
|
3. A live claim that does **not** share this working directory: say so in one line and proceed with no gate. Knowing another instance is in flight is useful even when it cannot interfere; silence would be worse.
|
|
87
87
|
4. Not a git repo, or no live claim sharing this working directory → proceed normally, no gate.
|
|
88
88
|
5. A live claim sharing this working directory → present exactly three options and proceed with none until one is chosen:
|
|
89
|
-
1. **Start in a separate worktree (recommended)** — `git worktree add -b <prefix>/<YYYYMMDD>-<name> <worktree_dir>/<repo>-<name> main` (prefix per template: bugfix→fix, micro-task/spike→chore, else feat; `worktree_dir` from the `concurrency:` config block, default
|
|
89
|
+
1. **Start in a separate worktree (recommended)** — `git worktree add -b <prefix>/<YYYYMMDD>-<name> <worktree_dir>/<repo>-<name> main` (prefix per template: bugfix→fix, micro-task/spike→chore, else feat; `worktree_dir` from the `concurrency:` config block, default `../`, resolved from the repository's top and `<repo>` its directory name — for a project below the repository root, never from the project). Do all further work for the new instance inside that worktree's copy of the project (`<worktree>/<project path>`); set `AIDLC_WORKTREE=1` before firing `on-instance-start` actions so the branch action no-ops. CLI shortcut: `aidlc start <template> --name <name> --worktree`.
|
|
90
90
|
2. **Stop** — come back when the other instance is done.
|
|
91
91
|
3. **Continue in this checkout, no code changes** — record `branch: null` in the new `instance.yaml`; entering Implementation stays blocked until a branch exists. CLI shortcut: `aidlc start <template> --name <name> --no-code`.
|
|
92
92
|
6. `concurrency.mode: forbid` in config replaces the menu with a hard stop while another session is live — **any** live session, sharing this working directory or not. Someone choosing a hard stop is choosing it for reasons this gate should not second-guess.
|