@codyswann/lisa 3.13.2 → 3.14.1

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 (63) hide show
  1. package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
  2. package/dist/core/lisa-owned-hash-ledger.js +140 -0
  3. package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
  4. package/dist/core/lisa-owned-templates.d.ts +40 -6
  5. package/dist/core/lisa-owned-templates.d.ts.map +1 -1
  6. package/dist/core/lisa-owned-templates.js +47 -10
  7. package/dist/core/lisa-owned-templates.js.map +1 -1
  8. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  9. package/dist/core/upstream-evidence-manifest.js +7 -2
  10. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  11. package/expo/create-only/.github/workflows/maestro-e2e.yml +16 -0
  12. package/package.json +1 -1
  13. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  14. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  15. package/plugins/lisa-agy/plugin.json +1 -1
  16. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  17. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  18. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  19. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  20. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  21. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  22. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  23. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  24. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  25. package/plugins/lisa-expo-agy/plugin.json +1 -1
  26. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  27. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  28. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  29. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  30. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  31. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  32. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  33. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  34. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  35. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  36. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  37. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  38. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  40. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  41. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  42. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  43. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  44. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  45. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  46. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  47. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  48. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  49. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  50. package/plugins/lisa-rails-agy/plugin.json +1 -1
  51. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  52. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  53. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  54. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  55. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  56. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  57. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  58. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  59. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  60. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  61. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  62. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  63. package/scripts/generate-lisa-owned-hash-ledger.mjs +18 -12
@@ -1 +1 @@
1
- {"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAqHjC,CAAC"}
1
+ {"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAiQjC,CAAC"}
@@ -8,6 +8,130 @@
8
8
  * `src/core/lisa-owned-provenance.ts`.
9
9
  */
10
10
  export const LISA_OWNED_HASH_LEDGER = Object.freeze({
11
+ "scripts/bdd-matrix.mjs": Object.freeze([
12
+ "4173a1c18d34285ab645314e0a99944f8baa02ae2632264b850c727347c8a836",
13
+ "519273668f08db7c14053ba1f25830e4cbb6e34ddf11f06264e72d0f7a80b98d",
14
+ "c2ae09e979cb60c5accf108650f1356614018549db4eb4aee1c6191d069a8313",
15
+ "f510e7e4484cd4f6182afab72f412ff9e8db458b18b96403ec1c0bd672f1dd51",
16
+ ]),
17
+ "scripts/bdd/baseline.mjs": Object.freeze([
18
+ "12503dd325bbfe95f4f4f7fc9d8284d78210d0f54fa75c9af774b42f20495fe0",
19
+ "630df2cbb6613534f755d3de1efbb6390a1c1dab5694d97f0ca09b8b7422881c",
20
+ "77394187362d95043e448dd27f28afc115dfc6580330dd2338afa7b33de3d31e",
21
+ "96f6a295bad34c0b52f7f667640243a462cb745998768c21a192c74d1a96dd34",
22
+ "dd48f24536fd36c56e8e6dc3c192f8862f3aa7dfef0e46db4f55205c1ee2b1ec",
23
+ ]),
24
+ "scripts/bdd/contract.mjs": Object.freeze([
25
+ "0cbbc0801c6d5fddf030205b18bc6b4d133b0fac7abaf7af19072e8bc83e21ad",
26
+ "7366f56fb66f609b17438f3b2b89d0a45aaf012886278b38b0744e69955fa5cc",
27
+ "d4dd79f24f64d8bd29352582433356b2b67fcca4fcfc4e4b253efa70bccd08be",
28
+ "d8a418d655d4a14d4d3287518b8d678cb410b7f08e38a60cf0dbf30b2e796973",
29
+ ]),
30
+ "scripts/bdd/discover.mjs": Object.freeze([
31
+ "2e5aade29ad47b4924d446e168631f4296d5e4f92b2daedbc2b6d9e9bf241eaf",
32
+ "820e8a869a0b46fc11461a655bb82f0c8c60f5b46005fbff48e5d19930d7d25a",
33
+ "d19b92e3f48bdc213c232175cd3021759080d635326e9675969976c0564d7676",
34
+ ]),
35
+ "scripts/bdd/envelope.mjs": Object.freeze([
36
+ "1f975f147900622019b20a724b4f5c7309b006a3f84385db414a4effcc475261",
37
+ "2b44e2baffd2bde541c95ed267f4a6962b421e3e7d2723d5f4660f8829c19645",
38
+ "7bb2aa5dbe49fa97d3f14e5400fef3f76e0fd99ab74e88d568a3d037c94c601d",
39
+ "ab3c9520be5c4c630ec3b6c8489015f24f97888c8687dde108865bbcff93efdb",
40
+ ]),
41
+ "scripts/bdd/parse.mjs": Object.freeze([
42
+ "18afb534f85c904af5da32e4dc0b48e4d2a89895a2866b60a544a790ce8b7afb",
43
+ "53eb89417516f3125a879076a31d50e3738e21163367d475532274fbb41c732e",
44
+ "d1bf74b01388d107e6869b90a3d1e1d2c03da8124cb2cc14f9cf6d64e2b00ce8",
45
+ "d6866a422d841cef291dea931424af4e0799be34d19f6817adba28e31972ac4f",
46
+ ]),
47
+ "scripts/bdd/render.mjs": Object.freeze([
48
+ "4678673c39b9f1aeeffc27265804566becb8373d47757d1ba8e28bdd0da21662",
49
+ "46fa8e969dce9d243e7c97fc04f70ec457ba0d6426ace822420811eb944fa815",
50
+ "47a5adb9fc607e5d330c246218d0b043be14a8527c7ba198b222df03fd96672a",
51
+ "c3cb36a6b3cf5771f5813cdd22f8273aa367c9de663ed1724c1fb3c59f2fbae9",
52
+ "c900d5be3b4692bc7f2252f1461b0db987d300f99817ad83466428c530da4fce",
53
+ "fa4f51fbb3a0517c4813c4a0dc9edde26d402efa115420cc251aaed7b5dfd5f3",
54
+ ]),
55
+ "scripts/bdd/report.mjs": Object.freeze([
56
+ "30a7c3471611e740f62f544e613a2ecf095946e7f70c752f62fa51ac58949822",
57
+ "41d9b085f9b593c77d9cd1be91d55cdff2440de233dcf8a6baac5574a68e1641",
58
+ "4a07425197ddbcc53052a334354325c5d6b1880d586a02c176362bfb5c826a2a",
59
+ "7c49bf1f430e32f7c2ac1fd90162293e928fe4fdf48db4cb5c8e3266187aac4e",
60
+ "effb76f834032e5a21e631134a1fb38a08382dcb1db5da2c57fc28aeebe6fb56",
61
+ ]),
62
+ "scripts/bdd/validate.mjs": Object.freeze([
63
+ "564e128ba1fc804861598baf509e2e13ec688bb99df9612b1aea3434ed9412a6",
64
+ "82e89c8af789705cb992768510d1c23f84471bbca3028b3a07b577f10cfb26bf",
65
+ "afb8dd052733a5f83e6d004eac3437783a707c08810ba9cc65138d898aff83e2",
66
+ "fa0c379c9ecab9ee2069f2ee41c1971f127b0a859647f911eaa707eb294a93e7",
67
+ ]),
68
+ "scripts/bdd/waivers.mjs": Object.freeze([
69
+ "4a918db61b6bdf3a23cf14c5cebdee88259964c60e4c5869abfebb7d743b181c",
70
+ "4b62574a0d59476f050c704888e114ce7baae6c996bb3a2b043c168f74823490",
71
+ "4b9ebf80100f478cc5e06d50b4d672ad08ec77a3746a7a109a74e1daf71a55b7",
72
+ ]),
73
+ "scripts/check-bdd-coverage.mjs": Object.freeze([
74
+ "13db95d2ed8bce81acfb4fdfd9adb195a60818952393268f6a269dbaa6e62d66",
75
+ "36eb042310a754b67b5e4cfcd35bfb8f8fbed132e51b7daf6128ce03d987ac87",
76
+ "98fa86e5987e7384c7fd23baa435f86830fb432424134bb7d8141c005af9167b",
77
+ "9ef2ef274602bf49ef5346b55ec95be575e3989e5c19e5c2b566d668ce0fd3ba",
78
+ "d8448a5ad476eb8ad51aa3a6ee5ff90aded974a0ea426682f25df5482d2b279d",
79
+ "fbfe26bf9a03da7b71a3cb9e2e5125ddb2897aa2a40e94fd4988cd5f606c32c5",
80
+ "ff8d1146f7829ad1e86636c3a4c076a26612a9978b25c343e7bb462eca20c882",
81
+ ]),
82
+ "scripts/check-e2e-coverage.mjs": Object.freeze([
83
+ "1b67cdc161191e9b2c51cef37ae864e57b2411d06df81bc5b8facff53c214f83",
84
+ "2b89c884e55f5736f26c00866ecfcece8120ff83c03ffce8bbc60e6438d02404",
85
+ "30cf7d860ecd3b838b8608f38da10fcddb4e7e90a0867438f411d68346a5f129",
86
+ "3c45d8239708da62e9dd564909b1702c141d88c8a5dd453c67a0eca145b9d0f3",
87
+ "880f37a8cc95ed051d7cfbdd4560d3e01cc99b1b9d01631681cadf0e33d37bd2",
88
+ "9d570347fb1177be2381fe3f119882762be08a1a23c0a9486bdf5a6a97e02b5b",
89
+ "d7134b5f05ec93ce15d8d195f47bb79b346a5e9beec49dce3fd55b8a8e80e8e8",
90
+ ]),
91
+ "scripts/check-nightly-e2e-health.mjs": Object.freeze([
92
+ "1c79ec49e5f4a3bba700bc1d97e9fc0f4f1799dec3acdf2bed5e3e5b866a0efd",
93
+ "3810fdea24d361f20895113f32d241f54d7194f4f3e3daba4dad01a941bbb230",
94
+ "38900cd4c9bb33ff26ff10e82cb928cb4b0a7fa10bc614c9c30d4860d2c0d017",
95
+ "5e64dad2e2ee08fabd99398c957cbe4dfc3b0a7243aae424c8e83f29283e503c",
96
+ "c1e4bf2287982c9814f168a13f66792c013f557a6028adbc8110ee4214cecf15",
97
+ "ce972e90c4a63a32b5753317c90eab56e7c4534f02132733a0e824a80dde7434",
98
+ "e497015ea207f43492dcb8a32918066ff061588af71c684531f38dbc1f2ed89c",
99
+ "effd213d5a8b6b5e424262ef8ff45f5927295926692bf2ceafd89084445845fe",
100
+ "f25be9368af95dba5a5ce9891e582d5c1fc04ffca9f31cbbd28bc061154e7605",
101
+ ]),
102
+ "scripts/check-skipped-required-checks.mjs": Object.freeze([
103
+ "0a8b14790f38e00e5abfc665d3e3d2c29e0a139a2a22c4a65e0c08547b42fb7f",
104
+ "1bcd3f065465731df4eb02b93b73a0162d287e365ed1a396138d97d71d403b31",
105
+ "48d3fa3043e144bcf52feb0e20db887d75c7ebda3b1fa708fe93f6554f6bec78",
106
+ "86de31fbda9dd26a938bf30846c5fc70744cf199df7d475a35f3f25dbc0f7c2f",
107
+ "86e9df17ea11fe0cd11d54f7fd60f016338e7fe28cdd4b07fab3b0b064b64ffb",
108
+ "8eaac3ea96d92b55c418877c1fe338a7c0b3a8f48ef3593258f54a633f761c85",
109
+ "e4a9d255c74a7ddeac3db5fdf47b5c5f8110f49f63576983d7e4ffe23e4a631b",
110
+ ]),
111
+ "scripts/check-state-classification.mjs": Object.freeze([
112
+ "94dc98e0bbfcf8d43cba035d4805a1c5d61a3a0db88faa791e8e06e34e741f46",
113
+ "ac539349c86a7b5b0083ec0e6aaf0eb4c3e40fbd4dc31511c6460a2bad7af9a5",
114
+ ]),
115
+ "scripts/check-threshold-ratchet.mjs": Object.freeze([
116
+ "04f660131bf50864239eb09cbf4d9555e53921254f6ab45ff2b85c173e160901",
117
+ "1e46e6ca651e87e7814a4f486af5784ed2f7a8a48eadcaa7d3fef26e380929f9",
118
+ "49dee610439f4f21aecb0420a0cc72f5d3595a36f2489970053096190b9909c4",
119
+ "6da00221189ed0f8a2938f15e02bcc2633d44f5f05489979fbb94202bc45a6d4",
120
+ "e1e3f22b33267212b90f915f83821559d1a45cab5b16c7164b86bd6c7b53549b",
121
+ ]),
122
+ "scripts/check-verification-coverage.mjs": Object.freeze([
123
+ "3c037e2f0d2c7ae48d3b8c798522847910daef671a787393997fc71107cc7ead",
124
+ "3c1d27d0668fc66a18cb014f2b607878f0a88c178a773fbe964b8e46b19e86d6",
125
+ "432a84eea2370bbaf8af01f2850f2b5a8fff355a869551425c5667548fc7508d",
126
+ "a1345fa793e0883ce57626a33575c124b42cc7d4aca1733793ecdcbfdbff4c16",
127
+ "c6a18edfd744cfc68d83c7ac35971d69f55bcaae82fe0eaf70fea44174df1401",
128
+ "c6e19b27e495f23022633c8226577ce7834fb1ae162d57daba02b4a30614a82e",
129
+ "fb306a2793489219483fabc4f084fba5fa2db73269b683ea8661cf490c7866ea",
130
+ ]),
131
+ "scripts/classify-maestro-failures.mjs": Object.freeze([
132
+ "7c550e8af431293b6b8d7ca2cfd777a07ec798fd3880275d8c12f7423d4d168b",
133
+ "aadb773bfb994e754cfdf576f59d4bfe020184b21953908d40049ddfe3a93fc1",
134
+ ]),
11
135
  "scripts/lisa-clean-git-env.sh": Object.freeze([
12
136
  "d15af6f13eedbca41046070972380e69fc0af8f7d903aac12b8644389b9a0c91",
13
137
  "e7121a0ee9e1bf7c01cd2ab55f563dd6d9ab75990739bb6ddf571a513efa10e9",
@@ -117,11 +241,27 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
117
241
  "fc0d92739e620d8fd70f7aa4a12d3e0b3a8f790d47c4a8322040f32c30b9445a",
118
242
  "fe064a2bd11200ed256fb36e203978f858fccbcaf40708496c066383345900ef",
119
243
  ]),
244
+ "scripts/nightly-e2e-suites.schema.json": Object.freeze([
245
+ "a6041930ca4536f3a76e4f54976ff846ab575f5f07a2356722eedcb06795e684",
246
+ "ea9b2b4ab1d2a39d7b4eb8c841ccae576836678ca42bb40161d6af383e3e378c",
247
+ ]),
120
248
  "scripts/schemas/lisa-command-envelope.v1.schema.json": Object.freeze([
121
249
  "d153b7c2953a30f180e38f09e98240c63327f5196eeba9bdf545e5a1f125a879",
122
250
  ]),
123
251
  "scripts/schemas/lisa-state-contract.v1.schema.json": Object.freeze([
124
252
  "6b7afe4ffeba8aaa53871d8855172f7eacde05953b1321145218ec638ff5c1c4",
125
253
  ]),
254
+ "scripts/threshold-ratchet-compare.mjs": Object.freeze([
255
+ "4535a145c5c5cbee13bdf970bc91d390a264043604e607288cdd6bf28de56192",
256
+ "67b5769dde341d06799c7a49c1fbcd46d92df1268177cc575e704e5a8a2d3096",
257
+ "8bc4b379d7057b2fecf9cb35820c39efad0a65df7df49073786f996cc2a74810",
258
+ "90affbeaed0d65c032dccfc0bd4a4b26eda291f6b61aa8b12599f41842452e0a",
259
+ ]),
260
+ "scripts/threshold-ratchet-families.mjs": Object.freeze([
261
+ "8fa58cc7276add0b2edf1de92bdcc32d81d840811ef0614ddc724010b59a888c",
262
+ "93190f926689725418c1ec9eae15c55910b128cff6e3cb10185e466c7b90cc4f",
263
+ "db14245ed89b483912af287bdee917a7a921dc21bb29b49be37fc799c05c413f",
264
+ "fee19c88c89eed5a2949dea42c4a4c794f04aabf0e36c71cdda70ffaaf2b17c9",
265
+ ]),
126
266
  });
127
267
  //# sourceMappingURL=lisa-owned-hash-ledger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lisa-owned-hash-ledger.js","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAE/B,MAAM,CAAC,MAAM,CAAC;IAChB,+BAA+B,EAAE,MAAM,CAAC,MAAM,CAAC;QAC7C,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,mCAAmC,EAAE,MAAM,CAAC,MAAM,CAAC;QACjD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,oCAAoC,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,kEAAkE;KACnE,CAAC;IACF,sCAAsC,EAAE,MAAM,CAAC,MAAM,CAAC;QACpD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,mCAAmC,EAAE,MAAM,CAAC,MAAM,CAAC;QACjD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,iDAAiD,EAAE,MAAM,CAAC,MAAM,CAAC;QAC/D,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,oDAAoD,EAAE,MAAM,CAAC,MAAM,CAAC;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,uCAAuC,EAAE,MAAM,CAAC,MAAM,CAAC;QACrD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,gDAAgD,EAAE,MAAM,CAAC,MAAM,CAAC;QAC9D,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,yCAAyC,EAAE,MAAM,CAAC,MAAM,CAAC;QACvD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,qCAAqC,EAAE,MAAM,CAAC,MAAM,CAAC;QACnD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,2BAA2B,EAAE,MAAM,CAAC,MAAM,CAAC;QACzC,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,kCAAkC,EAAE,MAAM,CAAC,MAAM,CAAC;QAChD,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,4BAA4B,EAAE,MAAM,CAAC,MAAM,CAAC;QAC1C,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACnE,CAAC;IACF,sDAAsD,EAAE,MAAM,CAAC,MAAM,CAAC;QACpE,kEAAkE;KACnE,CAAC;IACF,oDAAoD,EAAE,MAAM,CAAC,MAAM,CAAC;QAClE,kEAAkE;KACnE,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"lisa-owned-hash-ledger.js","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,46 @@
13
13
  * the vulnerable guard, until someone deleted the files by hand so the create
14
14
  * path would recreate them.
15
15
  *
16
- * The marker is the `lisa-` namespace in the path. Lisa names everything it owns
17
- * outright that way `lisa-hooks/`, `lisa-enforcement-fallback.sh`,
18
- * `lisa-work-item.mjs`, `lisa-command-envelope.mjs` — and its own skills and
19
- * hooks invoke those by exact path, which is precisely why a host cannot
20
- * meaningfully fork one in place. Nothing a project customises carries the
21
- * namespace.
16
+ * Ownership is recognised two ways, and the second exists because the first was
17
+ * not enough on its own.
18
+ *
19
+ * The original marker is the `lisa-` namespace in the path. Lisa names much of
20
+ * what it owns outright that way `lisa-hooks/`, `lisa-enforcement-fallback.sh`,
21
+ * `lisa-work-item.mjs` — and its own skills and hooks invoke those by exact
22
+ * path, which is precisely why a host cannot meaningfully fork one in place.
23
+ *
24
+ * But a naming convention is a stand-in for a property, and a stand-in nobody
25
+ * enforces drifts. `scripts/check-state-classification.mjs` shipped without the
26
+ * segment, so refresh never looked at it: every adopter who already had the file
27
+ * was frozen on whatever version they first installed, at every version bump,
28
+ * while CI ran the frozen gate and passed. That is #2374's undeliverable-fix
29
+ * incident reoccurring through the very marker introduced to close it (#2551).
30
+ *
31
+ * It was never one file. Across the stack trees 21 shipped gates were frozen the
32
+ * same way, `check-bdd-coverage.mjs` among them — its fix for six ways the gate
33
+ * could report what it had not proven could reach nobody who already had it.
34
+ *
35
+ * So the second rule names the property directly: **`scripts/` is Lisa's
36
+ * enforcement tree.** Everything Lisa installs there is a gate or the machinery
37
+ * a gate calls, its content *is* the guard, and a host tunes those gates through
38
+ * config — `.lisa.config.json`, `*.thresholds.json`, workflow inputs — never by
39
+ * editing the checker. `check-threshold-ratchet.mjs` is the worked example: its
40
+ * human override is a `thresholdRatchet.allow` entry, not a local edit.
41
+ *
42
+ * Two things bound the widening, and both matter:
43
+ *
44
+ * - **Scope.** This predicate is only ever asked about destinations Lisa ships
45
+ * from a `copy-overwrite` tree — `CopyOverwriteStrategy` and doctor's
46
+ * `shippedByStack` are the only callers. A host's own `scripts/` files are not
47
+ * Lisa-managed paths and never reach it, and Lisa's `create-only` seeds under
48
+ * `scripts/` are placed by a strategy that never consults it.
49
+ * - **Proof.** Owning a file is permission to *consider* refreshing it, not to
50
+ * overwrite it. `classifyHostCopy` still has to prove the installed copy is
51
+ * behind, and a path with no ledger entry classifies `unenrolled`, which
52
+ * refresh reads as permission to overwrite. So enrolment in
53
+ * `LISA_OWNED_HASH_LEDGER` must widen in the same change as this predicate;
54
+ * widening one alone converts a frozen guard into a silent clobber, which is
55
+ * #2470's defect wearing this one's hat.
22
56
  *
23
57
  * A project that genuinely wants to hold its own version of one of these still
24
58
  * can: `.lisaignore` is filtered before any strategy runs, and an ignored path
@@ -1 +1 @@
1
- {"version":3,"file":"lisa-owned-templates.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAKH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAKjE"}
1
+ {"version":3,"file":"lisa-owned-templates.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAQH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAQjE"}
@@ -13,12 +13,46 @@
13
13
  * the vulnerable guard, until someone deleted the files by hand so the create
14
14
  * path would recreate them.
15
15
  *
16
- * The marker is the `lisa-` namespace in the path. Lisa names everything it owns
17
- * outright that way `lisa-hooks/`, `lisa-enforcement-fallback.sh`,
18
- * `lisa-work-item.mjs`, `lisa-command-envelope.mjs` — and its own skills and
19
- * hooks invoke those by exact path, which is precisely why a host cannot
20
- * meaningfully fork one in place. Nothing a project customises carries the
21
- * namespace.
16
+ * Ownership is recognised two ways, and the second exists because the first was
17
+ * not enough on its own.
18
+ *
19
+ * The original marker is the `lisa-` namespace in the path. Lisa names much of
20
+ * what it owns outright that way `lisa-hooks/`, `lisa-enforcement-fallback.sh`,
21
+ * `lisa-work-item.mjs` — and its own skills and hooks invoke those by exact
22
+ * path, which is precisely why a host cannot meaningfully fork one in place.
23
+ *
24
+ * But a naming convention is a stand-in for a property, and a stand-in nobody
25
+ * enforces drifts. `scripts/check-state-classification.mjs` shipped without the
26
+ * segment, so refresh never looked at it: every adopter who already had the file
27
+ * was frozen on whatever version they first installed, at every version bump,
28
+ * while CI ran the frozen gate and passed. That is #2374's undeliverable-fix
29
+ * incident reoccurring through the very marker introduced to close it (#2551).
30
+ *
31
+ * It was never one file. Across the stack trees 21 shipped gates were frozen the
32
+ * same way, `check-bdd-coverage.mjs` among them — its fix for six ways the gate
33
+ * could report what it had not proven could reach nobody who already had it.
34
+ *
35
+ * So the second rule names the property directly: **`scripts/` is Lisa's
36
+ * enforcement tree.** Everything Lisa installs there is a gate or the machinery
37
+ * a gate calls, its content *is* the guard, and a host tunes those gates through
38
+ * config — `.lisa.config.json`, `*.thresholds.json`, workflow inputs — never by
39
+ * editing the checker. `check-threshold-ratchet.mjs` is the worked example: its
40
+ * human override is a `thresholdRatchet.allow` entry, not a local edit.
41
+ *
42
+ * Two things bound the widening, and both matter:
43
+ *
44
+ * - **Scope.** This predicate is only ever asked about destinations Lisa ships
45
+ * from a `copy-overwrite` tree — `CopyOverwriteStrategy` and doctor's
46
+ * `shippedByStack` are the only callers. A host's own `scripts/` files are not
47
+ * Lisa-managed paths and never reach it, and Lisa's `create-only` seeds under
48
+ * `scripts/` are placed by a strategy that never consults it.
49
+ * - **Proof.** Owning a file is permission to *consider* refreshing it, not to
50
+ * overwrite it. `classifyHostCopy` still has to prove the installed copy is
51
+ * behind, and a path with no ledger entry classifies `unenrolled`, which
52
+ * refresh reads as permission to overwrite. So enrolment in
53
+ * `LISA_OWNED_HASH_LEDGER` must widen in the same change as this predicate;
54
+ * widening one alone converts a frozen guard into a silent clobber, which is
55
+ * #2470's defect wearing this one's hat.
22
56
  *
23
57
  * A project that genuinely wants to hold its own version of one of these still
24
58
  * can: `.lisaignore` is filtered before any strategy runs, and an ignored path
@@ -27,15 +61,18 @@
27
61
  */
28
62
  /** Path-segment namespace Lisa reserves for artifacts it owns outright. */
29
63
  const LISA_NAMESPACE_PREFIX = "lisa-";
64
+ /** The tree Lisa installs enforcement gates and their machinery into. */
65
+ const ENFORCEMENT_TREE = "scripts/";
30
66
  /**
31
67
  * Whether a managed file is Lisa's own artifact rather than shared host content.
32
68
  * @param relativePath - Repo-relative destination path of the managed file
33
69
  * @returns True when Lisa owns the file outright and may refresh it unprompted
34
70
  */
35
71
  export function isLisaOwnedTemplate(relativePath) {
36
- return relativePath
37
- .replaceAll("\\", "/")
38
- .split("/")
39
- .some(segment => segment.startsWith(LISA_NAMESPACE_PREFIX));
72
+ const normalised = relativePath.replaceAll("\\", "/");
73
+ return (normalised.startsWith(ENFORCEMENT_TREE) ||
74
+ normalised
75
+ .split("/")
76
+ .some(segment => segment.startsWith(LISA_NAMESPACE_PREFIX)));
40
77
  }
41
78
  //# sourceMappingURL=lisa-owned-templates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lisa-owned-templates.js","sourceRoot":"","sources":["../../src/core/lisa-owned-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,2EAA2E;AAC3E,MAAM,qBAAqB,GAAG,OAAO,CAAC;AAEtC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAoB;IACtD,OAAO,YAAY;SAChB,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACrB,KAAK,CAAC,GAAG,CAAC;SACV,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"lisa-owned-templates.js","sourceRoot":"","sources":["../../src/core/lisa-owned-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH,2EAA2E;AAC3E,MAAM,qBAAqB,GAAG,OAAO,CAAC;AAEtC,yEAAyE;AACzE,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAEpC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAoB;IACtD,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtD,OAAO,CACL,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACvC,UAAU;aACP,KAAK,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAC9D,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkzEpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAojOjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
1
+ {"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkzEpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAyjOjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
@@ -104,7 +104,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
104
104
  "expo/create-only/.github/required-checks.json": "9f23b0477f93c3193ab22251dd03251038cfe45c5a2603cb49fdf97cae799442",
105
105
  "expo/create-only/.github/workflows/ci.yml": "88b186c48a51a53aec40ea4b6e515b7333b8e086f8b358f323208a2bb42aeed3",
106
106
  "expo/create-only/.github/workflows/deploy.yml": "27f5037db910501f8d76f828f91a605e3c4d321d1df362d317c440ab7abc9f14",
107
- "expo/create-only/.github/workflows/maestro-e2e.yml": "805256e2922abb8d08c00e833adb4f0c521e62cc7259ee5c0524475d496914f1",
107
+ "expo/create-only/.github/workflows/maestro-e2e.yml": "889084395ca48e07d01725158bf8b091e5c19f1800d5f4beee777e2b95530246",
108
108
  "expo/create-only/.github/workflows/nightly-e2e-bypass-reaper.yml": "db78a1012a00cf4e8b023a67bb57566ae85cf790c3856f3e299636c766f0c242",
109
109
  "expo/create-only/.github/workflows/nightly-e2e-health.yml": "9852ce44177be171aca0c0f66136c88ae654409d7bcfc8bad989eedc18980780",
110
110
  "expo/create-only/.github/workflows/nightly-e2e-report.yml": "5fccbcbb3f121eb80b165e6403ef131d4ed71da9b9f58386fa0db66daf4026f9",
@@ -1059,7 +1059,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1059
1059
  "scripts/generate-codex-plugin-artifacts.mjs": "1d1a362afb8dba408741a3eed9fe583296f6bcb048608979f73f359cd609c03d",
1060
1060
  "scripts/generate-copilot-plugin-artifacts.mjs": "70d283eed7cb7c1351d13cf0497f06dec175562c5918921c404393a76f11278f",
1061
1061
  "scripts/generate-cursor-plugin-artifacts.mjs": "d8806197a723f0c2b50a8155ffc5b6f0abc30c68dc2385cb80b0dd066d061231",
1062
- "scripts/generate-lisa-owned-hash-ledger.mjs": "977d447ff5bf1b5254a66a7386e4fd8e7bf9c8f3e7a5b8d61cedb771b97002f2",
1062
+ "scripts/generate-lisa-owned-hash-ledger.mjs": "6227966f11514cf5d03f35cfa2f876bede9ceabc133c1ff9f4c5abc2c8cc9a3d",
1063
1063
  "scripts/generate-upstream-evidence-manifest.mjs": "de1eb5adaa6252b4abe5859933bff0ab2a52e19cc5a3fc5a41018fbb57b766d1",
1064
1064
  "scripts/github-status-check.sh": "c6a4a13ff5cf689fcbd7a6aca718f9e7d46d54ccb6687f662b055c1ca20e792f",
1065
1065
  "scripts/install-claude-plugins.sh": "0e96ebbae1e59304bb432286eccba38900a6008b80f2c53a1ec2c95801d4087c",
@@ -7387,6 +7387,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7387
7387
  "tests/integration/jest-expo-haste-pruning.test.ts": true,
7388
7388
  "tests/integration/lisa.test.ts": true,
7389
7389
  "tests/integration/maestro-caller-template.test.ts": true,
7390
+ "tests/integration/maestro-leg-order-wait.test.ts": true,
7391
+ "tests/integration/maestro-leg-order.test.ts": true,
7390
7392
  "tests/integration/maestro-native-concurrency.test.ts": true,
7391
7393
  "tests/integration/maestro-native-driver-retry.test.ts": true,
7392
7394
  "tests/integration/maestro-native-flake-classification.test.ts": true,
@@ -7408,6 +7410,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7408
7410
  "tests/integration/standards-proof-tamper.test.ts": true,
7409
7411
  "tests/integration/standards-proof-timeout.test.ts": true,
7410
7412
  "tests/integration/standards-proof-typescript.test.ts": true,
7413
+ "tests/integration/support/maestro-leg-order-harness.ts": true,
7411
7414
  "tests/unit/agy/block-no-verify-agy.test.ts": true,
7412
7415
  "tests/unit/agy/mcp-collect.test.ts": true,
7413
7416
  "tests/unit/agy/mcp-installer.test.ts": true,
@@ -7603,6 +7606,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7603
7606
  "tests/unit/core/learnings-supersede-race.test.ts": true,
7604
7607
  "tests/unit/core/learnings-unlocked-read.test.ts": true,
7605
7608
  "tests/unit/core/learnings-writer.test.ts": true,
7609
+ "tests/unit/core/lisa-owned-enforcement-scripts.test.ts": true,
7606
7610
  "tests/unit/core/lisa-owned-provenance.test.ts": true,
7607
7611
  "tests/unit/core/lisa-owned-templates.test.ts": true,
7608
7612
  "tests/unit/core/lisa-plugin-selection.test.ts": true,
@@ -7878,6 +7882,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7878
7882
  "tests/unit/strategies/convergent-review-contract.test.ts": true,
7879
7883
  "tests/unit/strategies/copy-contents-gitignore.test.ts": true,
7880
7884
  "tests/unit/strategies/copy-contents.test.ts": true,
7885
+ "tests/unit/strategies/copy-overwrite-enforcement-scripts.test.ts": true,
7881
7886
  "tests/unit/strategies/copy-overwrite-host-ahead.test.ts": true,
7882
7887
  "tests/unit/strategies/copy-overwrite-lisa-owned-guards.test.ts": true,
7883
7888
  "tests/unit/strategies/copy-overwrite-refresh-templates.test.ts": true,