@event4u/agent-config 17.2.1 → 17.4.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.
Files changed (225) hide show
  1. package/.augment-plugin/marketplace.json +3 -3
  2. package/.augment-plugin/plugin.json +1 -1
  3. package/.claude-plugin/marketplace.json +1 -1
  4. package/.claude-plugin/skills/install-agent-config/SKILL.md +9 -9
  5. package/CHANGELOG.md +167 -193
  6. package/CREDITS.md +2 -2
  7. package/README.md +1 -1
  8. package/dist/agent-src/skills/code-intelligence/SKILL.md +16 -12
  9. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  10. package/dist/agent-src/templates/scripts/check_memory.ts +1 -1
  11. package/dist/cli/commands/recordTriggerEval.js +1 -1
  12. package/dist/cli/registry.js +2 -2
  13. package/dist/cli-delegate/{chunk-KR5ZIFPO.js → chunk-5AYJGUA3.js} +1 -3
  14. package/dist/cli-delegate/chunk-DIFZBP4G.js +1336 -0
  15. package/dist/cli-delegate/chunk-E7ACTJTJ.js +6792 -0
  16. package/dist/cli-delegate/{chunk-VYZGJLCA.js → chunk-RKNT4LIK.js} +22 -1286
  17. package/dist/cli-delegate/{chunk-BZJ4Y3CI.js → chunk-WY5ZZPGL.js} +2 -2
  18. package/dist/cli-delegate/{chunk-CMZEKSNN.js → chunk-X6LZ7W5A.js} +73 -10
  19. package/dist/cli-delegate/cmd_conformance.js +190 -192
  20. package/dist/cli-delegate/cmd_doctor.js +5 -5
  21. package/dist/cli-delegate/cmd_doctor_neighbours.js +3 -3
  22. package/dist/cli-delegate/cmd_explain.js +1 -1
  23. package/dist/cli-delegate/cmd_export.js +2 -2
  24. package/dist/cli-delegate/cmd_handoff.js +2 -2
  25. package/dist/cli-delegate/cmd_memory_get.js +1 -1
  26. package/dist/cli-delegate/cmd_prune.js +2 -2
  27. package/dist/cli-delegate/cmd_route_audit.js +1 -1
  28. package/dist/cli-delegate/cmd_session_recycle.js +2 -2
  29. package/dist/cli-delegate/cmd_settings_migrate.js +2 -2
  30. package/dist/cli-delegate/cmd_settings_set.js +8 -4
  31. package/dist/cli-delegate/cmd_sync.js +2 -2
  32. package/dist/cli-delegate/cmd_uninstall.js +2 -2
  33. package/dist/cli-delegate/cmd_update.js +24 -13
  34. package/dist/cli-delegate/cmd_upgrade.js +2 -2
  35. package/dist/cli-delegate/cmd_validate.js +2 -2
  36. package/dist/cli-delegate/dist-25AZAHOP.js +3240 -0
  37. package/dist/cli-delegate/dist-P7MFPMF3.js +411 -0
  38. package/dist/cli-delegate/dist-XAS5ZLQB.js +6 -0
  39. package/dist/cli-delegate/{upgrade_unattended-VVL6JLSX.js → upgrade_unattended-QCWOKTUN.js} +178 -163
  40. package/dist/discovery/deprecation-report.md +1 -1
  41. package/dist/discovery/discovery-manifest.json +3 -3
  42. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  43. package/dist/discovery/discovery-manifest.summary.md +1 -1
  44. package/dist/discovery/dormancy-report.md +1 -1
  45. package/dist/discovery/orphan-report.md +1 -1
  46. package/dist/discovery/packs.json +2 -2
  47. package/dist/discovery/trust-report.md +1 -1
  48. package/dist/discovery/workspaces.json +2 -2
  49. package/dist/hooks/code_graph_refresh.chunk.cjs +443 -0
  50. package/dist/hooks/code_graph_refresh.chunk.cjs.sha256 +1 -0
  51. package/dist/hooks/dispatch.js +1001 -938
  52. package/dist/hooks/dispatch.sha256 +1 -1
  53. package/dist/hooks/egress_engine.chunk.cjs +57 -7
  54. package/dist/hooks/egress_engine.chunk.cjs.sha256 +1 -1
  55. package/dist/hooks/update_notice.chunk.cjs +914 -0
  56. package/dist/hooks/update_notice.chunk.cjs.sha256 +1 -0
  57. package/dist/install/install.mjs +6974 -6037
  58. package/dist/mcp/mcp-cloudflare-catalogue.json +1 -0
  59. package/dist/mcp/registry-manifest.json +3 -2
  60. package/dist/mcp/server.json +13 -4
  61. package/dist/mcp/server.mjs +71202 -63282
  62. package/dist/scripts/_lib/egress_rules.js +8 -2
  63. package/dist/scripts/condense.js +18 -15
  64. package/dist/server/routes/discovery.js +1 -1
  65. package/dist/server/routes/install.js +1 -1
  66. package/dist/server/routes/ping.js +1 -1
  67. package/dist/server/routes/schema.js +4 -4
  68. package/dist/server/routes/settings.js +2 -6
  69. package/dist/server/routes/wizard.js +6 -6
  70. package/dist/server/schemas/settings.js +42 -42
  71. package/dist/shared/settingsSurface.js +1 -1
  72. package/dist/shared/userMd/schema.js +1 -1
  73. package/dist/shared/zodJsonSchema.js +47 -0
  74. package/dist/ui/assets/index-B0bcIgi0.js +77 -0
  75. package/dist/ui/index.html +1 -1
  76. package/package.json +6 -3
  77. package/src/agent-src/templates/scripts/check_memory.ts +1 -1
  78. package/src/config/ci-local-parity.yml +11 -0
  79. package/src/config/continuity-surface.json +9 -2
  80. package/src/config/evaluator-budgets.json +9 -8
  81. package/src/config/gate-violation-baselines.json +3 -3
  82. package/src/config/gitignore-block.txt +6 -5
  83. package/src/config/hook-bundle-budget.json +46 -6
  84. package/src/config/pack-size-budget.json +12 -1
  85. package/src/config/packed-binary-manifest.json +18 -0
  86. package/src/config/sigstore/npm_keys.json +50 -0
  87. package/src/config/sigstore/trust-material.json +9 -0
  88. package/src/config/sigstore/trusted_root.json +126 -0
  89. package/src/config/skill-body-budget.json +7 -1
  90. package/src/scripts/_cli/cmd_settings_set.ts +3 -2
  91. package/src/scripts/_cli/cmd_update.ts +48 -20
  92. package/src/scripts/_cli/cmd_upgrade.ts +7 -1
  93. package/src/scripts/_cli/upgrade_unattended.ts +90 -76
  94. package/src/scripts/_dispatch.bash +4 -3
  95. package/src/scripts/_lib/confusables.ts +0 -19
  96. package/src/scripts/_lib/egress_normalize.ts +53 -23
  97. package/src/scripts/_lib/egress_rules.ts +8 -2
  98. package/src/scripts/_lib/egress_text.ts +5 -3
  99. package/src/scripts/_lib/egress_token.ts +7 -5
  100. package/src/scripts/_lib/gate_collector_experimental.ts +633 -0
  101. package/src/scripts/_lib/git_common_dir.ts +10 -0
  102. package/src/scripts/_lib/graph_feeder_record.ts +3 -2
  103. package/src/scripts/_lib/install_reach_checks.ts +32 -2
  104. package/src/scripts/_lib/lineage_backfill.ts +136 -0
  105. package/src/scripts/_lib/lineage_ledger.ts +211 -0
  106. package/src/scripts/_lib/lineage_map.ts +55 -0
  107. package/src/scripts/_lib/lineage_query.ts +140 -0
  108. package/src/scripts/_lib/lineage_seed.ts +116 -0
  109. package/src/scripts/_lib/lineage_watch.ts +249 -0
  110. package/src/scripts/_lib/link_crypto.ts +8 -4
  111. package/src/scripts/_lib/listing_manifests.ts +85 -0
  112. package/src/scripts/_lib/neighbour_census.ts +1 -0
  113. package/src/scripts/_lib/production_reach.ts +3 -3
  114. package/src/scripts/_lib/project_registry.ts +227 -0
  115. package/src/scripts/_lib/provenance_verify.ts +14 -242
  116. package/src/scripts/_lib/release_settings_surface.ts +2 -6
  117. package/src/scripts/_lib/sigstore_provenance.ts +177 -0
  118. package/src/scripts/_lib/source_id.ts +48 -0
  119. package/src/scripts/_lib/source_shape.ts +4 -0
  120. package/src/scripts/_lib/unattended_gates.ts +6 -1
  121. package/src/scripts/adoption_status.ts +231 -27
  122. package/src/scripts/advisories.ts +26 -10
  123. package/src/scripts/ai_council/council_egress.ts +5 -6
  124. package/src/scripts/bench_graph_feeder_latency.ts +10 -3
  125. package/src/scripts/build_mcp_registry_manifest.ts +23 -12
  126. package/src/scripts/check_dependency_floors.ts +14 -0
  127. package/src/scripts/check_egress_mutations.ts +1 -0
  128. package/src/scripts/check_release_manifest_content.ts +17 -2
  129. package/src/scripts/check_release_pr_shape.ts +5 -0
  130. package/src/scripts/code_graph/build.ts +145 -45
  131. package/src/scripts/code_graph/cli.ts +382 -35
  132. package/src/scripts/code_graph/conventions_default.ts +247 -0
  133. package/src/scripts/code_graph/detect.ts +5 -5
  134. package/src/scripts/code_graph/estate_cli.ts +135 -0
  135. package/src/scripts/code_graph/estate_index.ts +394 -0
  136. package/src/scripts/code_graph/estate_manifests.ts +223 -0
  137. package/src/scripts/code_graph/estate_map.ts +141 -0
  138. package/src/scripts/code_graph/extract.ts +8 -2
  139. package/src/scripts/code_graph/extract_more.ts +241 -2
  140. package/src/scripts/code_graph/graph_budget.ts +158 -0
  141. package/src/scripts/code_graph/graph_home.ts +80 -0
  142. package/src/scripts/code_graph/lineage_cli.ts +315 -0
  143. package/src/scripts/code_graph/loader.ts +10 -2
  144. package/src/scripts/code_graph/map.ts +195 -53
  145. package/src/scripts/code_graph/map_model.ts +113 -20
  146. package/src/scripts/code_graph/map_verify.ts +80 -5
  147. package/src/scripts/code_graph/map_viewer/viewer.css +18 -0
  148. package/src/scripts/code_graph/map_viewer/viewer.js +146 -15
  149. package/src/scripts/code_graph/passes.ts +173 -0
  150. package/src/scripts/code_graph/project_ref.ts +25 -0
  151. package/src/scripts/code_graph/projects_cli.ts +254 -0
  152. package/src/scripts/code_graph/providers/angular.ts +55 -0
  153. package/src/scripts/code_graph/providers/aspnetcore.ts +182 -0
  154. package/src/scripts/code_graph/providers/catalog.ts +299 -0
  155. package/src/scripts/code_graph/providers/django.ts +206 -0
  156. package/src/scripts/code_graph/providers/express.ts +25 -0
  157. package/src/scripts/code_graph/providers/fastapi.ts +49 -0
  158. package/src/scripts/code_graph/providers/flask.ts +99 -0
  159. package/src/scripts/code_graph/providers/go_http.ts +121 -0
  160. package/src/scripts/code_graph/providers/index.ts +103 -0
  161. package/src/scripts/code_graph/{laravel_overlay.ts → providers/laravel.ts} +113 -7
  162. package/src/scripts/code_graph/providers/nestjs.ts +34 -0
  163. package/src/scripts/code_graph/providers/nextjs.ts +91 -0
  164. package/src/scripts/code_graph/providers/nuxt.ts +55 -0
  165. package/src/scripts/code_graph/providers/rails.ts +204 -0
  166. package/src/scripts/code_graph/providers/react-router.ts +58 -0
  167. package/src/scripts/code_graph/providers/shared/detect.ts +78 -0
  168. package/src/scripts/code_graph/providers/shared/extractors.ts +249 -0
  169. package/src/scripts/code_graph/providers/shared/js.ts +252 -0
  170. package/src/scripts/code_graph/providers/shared/kit.ts +210 -0
  171. package/src/scripts/code_graph/providers/shared/php.ts +64 -0
  172. package/src/scripts/code_graph/providers/shared/python.ts +223 -0
  173. package/src/scripts/code_graph/providers/spring.ts +175 -0
  174. package/src/scripts/code_graph/providers/sqlalchemy.ts +62 -0
  175. package/src/scripts/code_graph/providers/sveltekit.ts +59 -0
  176. package/src/scripts/code_graph/providers/symfony.ts +142 -0
  177. package/src/scripts/code_graph/providers/typeorm.ts +58 -0
  178. package/src/scripts/code_graph/providers/types.ts +56 -0
  179. package/src/scripts/code_graph/providers/vue-router.ts +21 -0
  180. package/src/scripts/code_graph/providers/wordpress.ts +128 -0
  181. package/src/scripts/code_graph/query.ts +9 -9
  182. package/src/scripts/code_graph/refresh_cli.ts +81 -0
  183. package/src/scripts/code_graph/refresh_lock.ts +197 -0
  184. package/src/scripts/code_graph/repo_identity.ts +169 -0
  185. package/src/scripts/code_graph/resolution_tiers.ts +19 -7
  186. package/src/scripts/code_graph/scip_reader.ts +2 -2
  187. package/src/scripts/code_graph/sqlite_store.ts +31 -28
  188. package/src/scripts/code_graph/types.ts +79 -41
  189. package/src/scripts/code_graph/validate.ts +6 -8
  190. package/src/scripts/condense.ts +15 -15
  191. package/src/scripts/generate_settings_reference.ts +2 -6
  192. package/src/scripts/hook_chunks.mjs +11 -0
  193. package/src/scripts/hook_manifest.json +1 -1
  194. package/src/scripts/hook_manifest.yaml +43 -23
  195. package/src/scripts/hooks/code_graph_refresh_hook.ts +163 -0
  196. package/src/scripts/hooks/dispatch_hook.ts +6 -7
  197. package/src/scripts/hooks/host_semantics.ts +72 -0
  198. package/src/scripts/hooks/lazy_concern.ts +8 -0
  199. package/src/scripts/hooks/user_notice.ts +105 -0
  200. package/src/scripts/install-hooks.sh +54 -33
  201. package/src/scripts/install.ts +2 -6
  202. package/src/scripts/lint_harvest_provenance.ts +137 -11
  203. package/src/scripts/lint_hook_manifest.ts +2 -0
  204. package/src/scripts/lint_marketplace.ts +33 -0
  205. package/src/scripts/lint_mcp_registry_manifest.ts +36 -0
  206. package/src/scripts/mcp_server/consumer_tool_catalog.json +70 -15
  207. package/src/scripts/mcp_server/graph_tools.ts +165 -41
  208. package/src/scripts/network_sources.ts +24 -6
  209. package/src/scripts/release.ts +2 -5
  210. package/src/scripts/release_drill.ts +4 -1
  211. package/src/scripts/release_env.ts +17 -0
  212. package/src/scripts/release_mix_taxonomy.json +3 -0
  213. package/src/scripts/schemas/provenance-mechanism.schema.json +46 -0
  214. package/src/scripts/update_notice_hook.ts +75 -7
  215. package/src/server/schemas/settings.ts +42 -42
  216. package/src/shared/settingsSurface.ts +1 -1
  217. package/src/shared/userMd/schema.ts +1 -1
  218. package/src/shared/zodJsonSchema.ts +41 -0
  219. package/src/vendor/grammars/README.md +8 -6
  220. package/src/vendor/grammars/tree-sitter-c_sharp.wasm +0 -0
  221. package/src/vendor/grammars/tree-sitter-ruby.wasm +0 -0
  222. package/dist/cli-delegate/chunk-XIAPY44N.js +0 -4587
  223. package/dist/ui/assets/index-w70Ado09.js +0 -23
  224. /package/dist/cli-delegate/{chunk-FKYZOWVD.js → chunk-QBAFP67O.js} +0 -0
  225. /package/dist/cli-delegate/{chunk-BMGUGSY6.js → chunk-TQG6UMPC.js} +0 -0
@@ -12,7 +12,7 @@ import {
12
12
  EGRESS_RULES,
13
13
  evaluateMatch,
14
14
  shannonEntropy
15
- } from "./chunk-KR5ZIFPO.js";
15
+ } from "./chunk-5AYJGUA3.js";
16
16
  import {
17
17
  SRC_SKILLS
18
18
  } from "./chunk-YCU3TIXH.js";
@@ -35,7 +35,7 @@ import {
35
35
  import {
36
36
  TOKEN_RE,
37
37
  classifyToken
38
- } from "./chunk-BMGUGSY6.js";
38
+ } from "./chunk-TQG6UMPC.js";
39
39
  import {
40
40
  readHookStdin
41
41
  } from "./chunk-RAXQOETZ.js";
@@ -21,7 +21,8 @@ import {
21
21
  } from "./chunk-FTAISGDQ.js";
22
22
  import {
23
23
  STATE_FILENAME,
24
- classify_install_origin
24
+ classify_install_origin,
25
+ compare_versions
25
26
  } from "./chunk-5VO3RTMV.js";
26
27
  import {
27
28
  DEFAULT_GITATTRIBUTES,
@@ -63,11 +64,12 @@ import {
63
64
  scanTranscripts,
64
65
  validateAssumption,
65
66
  weightedInputUnits
66
- } from "./chunk-FKYZOWVD.js";
67
+ } from "./chunk-QBAFP67O.js";
67
68
  import {
68
69
  git_common_dir
69
70
  } from "./chunk-IAYTIIQW.js";
70
71
  import {
72
+ lockfile_path,
71
73
  read_lockfile
72
74
  } from "./chunk-LQOCRFWT.js";
73
75
  import {
@@ -89,19 +91,17 @@ import {
89
91
  readCanaryStatusLine,
90
92
  runCensus,
91
93
  summaryLine
92
- } from "./chunk-BZJ4Y3CI.js";
94
+ } from "./chunk-WY5ZZPGL.js";
93
95
  import {
94
96
  EGRESS_RULES,
95
97
  REVIEW_CREDENTIAL_ROWS,
96
98
  detect,
97
- findSpans,
98
99
  maskingEnd,
99
100
  prefixesOf,
100
101
  rawKeyPrefixPattern,
101
102
  replaceSpans,
102
- resolveOverlaps,
103
103
  vendorPrefix
104
- } from "./chunk-KR5ZIFPO.js";
104
+ } from "./chunk-5AYJGUA3.js";
105
105
  import {
106
106
  classifyFileState,
107
107
  classifyOwnership,
@@ -5795,7 +5795,11 @@ function readInstalledVersion(projectRoot) {
5795
5795
  return null;
5796
5796
  }
5797
5797
  }
5798
- function checkVersionAxis(projectRoot, resolvableNow) {
5798
+ function readGlobalVersion() {
5799
+ const recorded = read_lockfile(lockfile_path())?.["agent_config_version"];
5800
+ return typeof recorded === "string" && recorded.trim() !== "" ? recorded.trim().replace(/^v+/, "") : null;
5801
+ }
5802
+ function checkVersionAxis(projectRoot, resolvableNow, globalVersion = readGlobalVersion()) {
5799
5803
  const id = "version-axis";
5800
5804
  const pins = readVersionPins(projectRoot);
5801
5805
  const installed = readInstalledVersion(projectRoot);
@@ -5803,7 +5807,16 @@ function checkVersionAxis(projectRoot, resolvableNow) {
5803
5807
  return { id, status: "skipped", message: "no version pin and no install lockfile in this tree", remedy: "" };
5804
5808
  }
5805
5809
  const pinText = pins.length === 0 ? "pinned: none" : `pinned: ${pins.map((p) => `${p.version} (${p.file}${p.legacy ? ", LEGACY filename" : ""})`).join(" \xB7 ")}`;
5806
- const line = `${pinText} \xB7 installed: ${installed ?? "unknown"} \xB7 resolvable now: ${resolvableNow ?? "unknown"}`;
5810
+ const line = `${pinText} \xB7 installed: ${installed ?? "unknown"} \xB7 global: ${globalVersion ?? "none"} \xB7 resolvable now: ${resolvableNow ?? "unknown"}`;
5811
+ const ahead = pins.filter((p) => globalVersion !== null && compare_versions(p.version, globalVersion) === 1);
5812
+ if (ahead.length > 0) {
5813
+ return {
5814
+ id,
5815
+ status: "warn",
5816
+ message: `${line} \u2014 the pin names ${ahead.map((p) => p.version).join(", ")} but the global install, which every session's hooks, rules and skills run from, is ${globalVersion}.`,
5817
+ remedy: "run `agent-config update` (it installs the pinned version globally) or `agent-config upgrade`"
5818
+ };
5819
+ }
5807
5820
  const divergent = pins.filter((p) => installed !== null && p.version !== installed);
5808
5821
  if (divergent.length === 0) {
5809
5822
  return { id, status: "ok", message: line, remedy: "" };
@@ -6731,6 +6744,55 @@ function resumeBound(bound) {
6731
6744
  return [...bound.slice(0, i), "-c", `sandbox_mode="${bound[i + 1]}"`, ...bound.slice(i + 2)];
6732
6745
  }
6733
6746
 
6747
+ // src/scripts/_lib/egress_normalize.ts
6748
+ var FOREIGN = "43043543e4404414434454554564584bb50151b41041241541a41c41d41e4204214224234254054064083b13b53bf3bd3c13c53c73ba39139239539639739939a39c39d39f3a13a43a53a7";
6749
+ var LATIN = "aeopcyxsijhdqABEKMHOPCTYXSIJaeovpuxkABEZHIKMNOPTYX";
6750
+ var LATIN_TWIN = new Map([...LATIN].map((c, i) => [parseInt(FOREIGN.slice(i * 3, i * 3 + 3), 16), c]));
6751
+ var HIDDEN_UNICODE_RE = /[­​-‏‪-‮⁠-⁤⁦-⁩\u{E0000}-\u{E007F}]/gu;
6752
+ function normalizeForDetection(text) {
6753
+ let out = "";
6754
+ const origin = [];
6755
+ let hidden = 0;
6756
+ let folded = 0;
6757
+ let at = 0;
6758
+ for (const ch of text) {
6759
+ HIDDEN_UNICODE_RE.lastIndex = 0;
6760
+ if (HIDDEN_UNICODE_RE.test(ch)) {
6761
+ hidden += 1;
6762
+ } else {
6763
+ const emit = LATIN_TWIN.get(ch.codePointAt(0)) ?? ch;
6764
+ if (emit !== ch) folded += 1;
6765
+ out += emit;
6766
+ for (let k = 0; k < emit.length; k += 1) origin.push(at);
6767
+ }
6768
+ at += ch.length;
6769
+ }
6770
+ return { text: out, origin, hidden, folded };
6771
+ }
6772
+ function detectWithExtent(text, rules = EGRESS_RULES) {
6773
+ const n = normalizeForDetection(text);
6774
+ if (n.hidden === 0 && n.folded === 0) return { spans: detect(text, rules), end: (s, read) => read(text, s) };
6775
+ const back = (i) => {
6776
+ const o = n.origin[i - 1];
6777
+ return o + (text.codePointAt(o) > 65535 ? 2 : 1);
6778
+ };
6779
+ const fwd = (o) => {
6780
+ let i = 0;
6781
+ while (i < n.origin.length && n.origin[i] < o) i += 1;
6782
+ return i;
6783
+ };
6784
+ return {
6785
+ spans: detect(n.text, rules).map((s) => ({ ...s, start: n.origin[s.start], end: back(s.end) })),
6786
+ end: (s, read) => {
6787
+ const e = read(n.text, { ...s, start: fwd(s.start), end: fwd(s.end) });
6788
+ return e === null ? null : back(e);
6789
+ }
6790
+ };
6791
+ }
6792
+ function detectNormalized(text, rules = EGRESS_RULES) {
6793
+ return detectWithExtent(text, rules).spans;
6794
+ }
6795
+
6734
6796
  // src/scripts/_lib/egress_token.ts
6735
6797
  import { createHmac, randomBytes } from "node:crypto";
6736
6798
  var TOKEN_FP_LENGTH = 6;
@@ -6979,7 +7041,8 @@ var CouncilEgress = class {
6979
7041
  * proven is replaced through the nearest END marker, as the line masks did.
6980
7042
  */
6981
7043
  replace(text) {
6982
- const spans = resolveOverlaps(findSpans(text, BUNDLE_RULES)).filter((s) => s.class === "credential" || this.opts.identifiers).map((s) => ({ ...s, end: maskingEnd(text, s) }));
7044
+ const at = detectWithExtent(text, BUNDLE_RULES);
7045
+ const spans = at.spans.filter((s) => s.class === "credential" || this.opts.identifiers).map((s) => ({ ...s, end: at.end(s, maskingEnd) ?? s.end }));
6983
7046
  spans.sort((a, b) => a.start - b.start);
6984
7047
  const merged = [];
6985
7048
  for (const s of spans) {
@@ -7008,7 +7071,7 @@ var CouncilEgress = class {
7008
7071
  for (const value of this.replaced) {
7009
7072
  if (body.includes(value)) return { reason: "replaced-value-present", what: "value replaced in this run" };
7010
7073
  }
7011
- for (const s of detect(body)) {
7074
+ for (const s of detectNormalized(body)) {
7012
7075
  const high = s.class === "credential" ? s.rule !== "generic-assignment" : s.validated && this.opts.identifiers;
7013
7076
  if (high) return { reason: "high-confidence-finding", what: s.rule };
7014
7077
  }