@codyswann/lisa 4.53.0 → 4.53.2
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/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 +4 -3
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- 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/hooks/withdrawn-rulings.mjs +76 -1
- package/plugins/lisa/rules/eager/withdrawn-rulings.md +22 -0
- package/plugins/lisa/rules/reference/withdrawn-rulings.md +34 -0
- 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-copilot/hooks/withdrawn-rulings.mjs +76 -1
- package/plugins/lisa-copilot/rules/eager/withdrawn-rulings.md +22 -0
- package/plugins/lisa-copilot/rules/reference/withdrawn-rulings.md +34 -0
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/hooks/withdrawn-rulings.mjs +76 -1
- package/plugins/lisa-cursor/rules/withdrawn-rulings-reference.mdc +34 -0
- package/plugins/lisa-cursor/rules/withdrawn-rulings.mdc +22 -0
- 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/plugins/src/base/hooks/withdrawn-rulings.mjs +76 -1
- package/plugins/src/base/rules/eager/withdrawn-rulings.md +22 -0
- package/plugins/src/base/rules/reference/withdrawn-rulings.md +34 -0
|
@@ -75,6 +75,40 @@ JSONL rather than prose: each line is independent, so concurrent appends from ma
|
|
|
75
75
|
collide and `merge=union` reconstructs the union exactly. A prose ledger would need a bespoke merge
|
|
76
76
|
driver to survive the same traffic.
|
|
77
77
|
|
|
78
|
+
## The re-audit field, and why it is required (CodySwannGT/lisa#3489)
|
|
79
|
+
|
|
80
|
+
A tombstone answers "this claim is dead". It does not answer **"what did I build while it was
|
|
81
|
+
alive?"** — and that is the half that reached other agents and the human. Correcting a premise
|
|
82
|
+
removes the belief and leaves every inference standing.
|
|
83
|
+
|
|
84
|
+
The observed instance: a session spent part of a day believing a readiness preflight's false claim
|
|
85
|
+
that a credential CLI was unavailable. A delegate probed the binary and disproved it, the session
|
|
86
|
+
updated the fact, and carried on. It never asked what it had concluded while believing the false
|
|
87
|
+
thing. Two hours later it relayed to its human that a work item was blocked because an SSO session
|
|
88
|
+
had expired and a deployed template could not be read — relayed unexamined, while already knowing
|
|
89
|
+
the vault worked, and while its own config had listed the relevant bootstrap secret the whole time.
|
|
90
|
+
Three facts sat in one context and were never joined.
|
|
91
|
+
|
|
92
|
+
So `--derived` is a required field on every withdrawal, and `--derived none` is the explicit empty
|
|
93
|
+
answer. The record always carries the key: an empty list means *audited, nothing survives*, and an
|
|
94
|
+
absent key means *never audited*. Distinguishing those two is the entire purpose, which is why the
|
|
95
|
+
push gate refuses a ledger entry that omits it — otherwise the write-time refusal would be a
|
|
96
|
+
formality anyone could route around by editing the file.
|
|
97
|
+
|
|
98
|
+
**Why it cannot be a scanner instead.** Re-auditing after the fact would require asking "which
|
|
99
|
+
artifacts rest on premise P". Nothing can answer that. Learnings-ledger entries carry `provenance`
|
|
100
|
+
refs and are genuinely queryable that way, but they are the only artifact class that is: a tracker
|
|
101
|
+
item marked blocked, a sentence relayed to an operator, a message to a peer session, an evidence
|
|
102
|
+
file — none record the premise they rest on. **Re-auditing those is not merely unenforced; for
|
|
103
|
+
anyone but the session still holding the context, it is impossible.** The obligation therefore has
|
|
104
|
+
to bind at the one moment that knowledge is both present and being written down.
|
|
105
|
+
|
|
106
|
+
Note the division of labour with `--reached`, which is a different question. `--reached` records the
|
|
107
|
+
**audience** — who received the claim, which is #3752's problem of delivery. `--derived` records the
|
|
108
|
+
**derivation** — what now stands on it, which is #3489's problem. A tombstone can reach every holder
|
|
109
|
+
and still leave a wrong tracker state behind, and it can enumerate its inferences while reaching
|
|
110
|
+
nobody. Both fields, or neither half is covered.
|
|
111
|
+
|
|
78
112
|
## How a running session is reached
|
|
79
113
|
|
|
80
114
|
`--session-start` stamps a per-session mark recording the ids the session was born already knowing.
|