@codyswann/lisa 4.53.1 → 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.
Files changed (67) hide show
  1. package/dist/core/nightly-e2e-guard-behavior-certificate.js +2 -2
  2. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  3. package/dist/core/upstream-evidence-manifest.js +4 -3
  4. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  5. package/package.json +4 -4
  6. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  7. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  8. package/plugins/lisa/hooks/withdrawn-rulings.mjs +76 -1
  9. package/plugins/lisa/rules/eager/withdrawn-rulings.md +22 -0
  10. package/plugins/lisa/rules/reference/withdrawn-rulings.md +34 -0
  11. package/plugins/lisa-agy/plugin.json +1 -1
  12. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  13. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  14. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  15. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  16. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  17. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  18. package/plugins/lisa-copilot/hooks/withdrawn-rulings.mjs +76 -1
  19. package/plugins/lisa-copilot/rules/eager/withdrawn-rulings.md +22 -0
  20. package/plugins/lisa-copilot/rules/reference/withdrawn-rulings.md +34 -0
  21. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  22. package/plugins/lisa-cursor/hooks/withdrawn-rulings.mjs +76 -1
  23. package/plugins/lisa-cursor/rules/withdrawn-rulings-reference.mdc +34 -0
  24. package/plugins/lisa-cursor/rules/withdrawn-rulings.mdc +22 -0
  25. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  26. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  27. package/plugins/lisa-expo-agy/plugin.json +1 -1
  28. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  29. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  30. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  31. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  32. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  33. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  34. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  35. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  36. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  37. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  38. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  40. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  41. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  42. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  43. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  44. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  45. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  46. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  47. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  48. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  49. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  50. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  51. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  52. package/plugins/lisa-rails-agy/plugin.json +1 -1
  53. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  54. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  55. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  56. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  57. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  58. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  59. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  60. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  61. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  62. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  63. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  64. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  65. package/plugins/src/base/hooks/withdrawn-rulings.mjs +76 -1
  66. package/plugins/src/base/rules/eager/withdrawn-rulings.md +22 -0
  67. 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.