@codyswann/lisa 4.39.0 → 4.40.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.
- package/all/copy-overwrite/scripts/lisa-cross-worktree-guard.mjs +276 -0
- package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
- package/dist/core/lisa-owned-hash-ledger.js +10 -0
- package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
- package/dist/core/nightly-e2e-guard-behavior-certificate.js +2 -2
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +9 -4
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/npm-package/create-only/.github/workflows/publish-to-npm.yml +48 -19
- package/package.json +4 -4
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/scripts/two-channel-couplings.json +1 -1
- package/typescript/copy-contents/.husky/pre-commit +40 -0
- package/typescript/copy-overwrite/.prettierignore +1 -0
|
@@ -107,6 +107,46 @@ if [ -f ".lintstagedrc.json" ]; then
|
|
|
107
107
|
fi
|
|
108
108
|
fi
|
|
109
109
|
|
|
110
|
+
# ---------------------------------------------------------------------------
|
|
111
|
+
# Cross-worktree staged-blob guard.
|
|
112
|
+
#
|
|
113
|
+
# Refuses a commit that stages a NEW file byte-identical to uncommitted work
|
|
114
|
+
# sitting in a different linked worktree. Where several agents share one
|
|
115
|
+
# repository through worktrees, one agent's in-progress file can be committed
|
|
116
|
+
# by another: the file is real, the branch is real, the commit succeeds and
|
|
117
|
+
# every other gate passes, so nothing reports it. Confirmed once — a 284-line
|
|
118
|
+
# test file staged in one worktree, committed an hour later from elsewhere,
|
|
119
|
+
# byte-identical, under a reworded subject.
|
|
120
|
+
#
|
|
121
|
+
# HERE RATHER THAN IN THE GATE REGISTRY, deliberately. This is a property of
|
|
122
|
+
# the machine — which other worktrees exist and what is sitting in them —
|
|
123
|
+
# not of the project, so there is no task a project could declare to prove it.
|
|
124
|
+
# It also has to run on EVERY commit: the whole failure mode is that nobody
|
|
125
|
+
# notices, so a check that waits to be invoked is a check that was not running
|
|
126
|
+
# on the commit where it mattered.
|
|
127
|
+
#
|
|
128
|
+
# Fails OPEN when the script is missing, unlike the lint-staged preflight
|
|
129
|
+
# above. That preflight guards a tool that reports success for work it did not
|
|
130
|
+
# do, so skipping it cannot be read as a pass. This one only ever adds a
|
|
131
|
+
# refusal — a repository without it is exactly as safe as it was before the
|
|
132
|
+
# guard existed, and blocking every commit in a project that has not yet
|
|
133
|
+
# re-applied templates would be a worse trade than the window it closes.
|
|
134
|
+
# ---------------------------------------------------------------------------
|
|
135
|
+
CROSS_WORKTREE_GUARD="node_modules/@codyswann/lisa/all/copy-overwrite/scripts/lisa-cross-worktree-guard.mjs"
|
|
136
|
+
if [ ! -f "$CROSS_WORKTREE_GUARD" ]; then
|
|
137
|
+
CROSS_WORKTREE_GUARD="scripts/lisa-cross-worktree-guard.mjs"
|
|
138
|
+
fi
|
|
139
|
+
if [ ! -f "$CROSS_WORKTREE_GUARD" ]; then
|
|
140
|
+
CROSS_WORKTREE_GUARD="all/copy-overwrite/scripts/lisa-cross-worktree-guard.mjs"
|
|
141
|
+
fi
|
|
142
|
+
if [ -f "$CROSS_WORKTREE_GUARD" ] && command -v node >/dev/null 2>&1; then
|
|
143
|
+
node "$CROSS_WORKTREE_GUARD"
|
|
144
|
+
CROSS_WORKTREE_GUARD_STATUS=$?
|
|
145
|
+
if [ $CROSS_WORKTREE_GUARD_STATUS -ne 0 ]; then
|
|
146
|
+
exit $CROSS_WORKTREE_GUARD_STATUS
|
|
147
|
+
fi
|
|
148
|
+
fi
|
|
149
|
+
|
|
110
150
|
# ---------------------------------------------------------------------------
|
|
111
151
|
# Gate-driven checks.
|
|
112
152
|
#
|
|
@@ -80,6 +80,7 @@ scripts/check-verification-coverage.mjs
|
|
|
80
80
|
scripts/classify-maestro-failures.mjs
|
|
81
81
|
scripts/lisa-command-envelope.mjs
|
|
82
82
|
scripts/lisa-commit-msg-gates.mjs
|
|
83
|
+
scripts/lisa-cross-worktree-guard.mjs
|
|
83
84
|
scripts/lisa-destructive-guard.mjs
|
|
84
85
|
scripts/lisa-environment-prepare.mjs
|
|
85
86
|
scripts/lisa-floor-collisions.mjs
|