@codyswann/lisa 2.155.5 → 2.155.7

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 (61) hide show
  1. package/package.json +1 -1
  2. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  3. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  4. package/plugins/lisa-agy/plugin.json +1 -1
  5. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  6. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  7. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  8. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  9. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  10. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  11. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  12. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  13. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  14. package/plugins/lisa-expo/skills/exploratory-qa/SKILL.md +29 -5
  15. package/plugins/lisa-expo-agy/plugin.json +1 -1
  16. package/plugins/lisa-expo-agy/skills/exploratory-qa/SKILL.md +29 -5
  17. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  18. package/plugins/lisa-expo-copilot/skills/exploratory-qa/SKILL.md +29 -5
  19. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  20. package/plugins/lisa-expo-cursor/skills/exploratory-qa/SKILL.md +29 -5
  21. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  22. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  23. package/plugins/lisa-harper-fabric/skills/exploratory-qa/SKILL.md +29 -5
  24. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  25. package/plugins/lisa-harper-fabric-agy/skills/exploratory-qa/SKILL.md +29 -5
  26. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  27. package/plugins/lisa-harper-fabric-copilot/skills/exploratory-qa/SKILL.md +29 -5
  28. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  29. package/plugins/lisa-harper-fabric-cursor/skills/exploratory-qa/SKILL.md +29 -5
  30. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  31. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  32. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  33. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  34. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  35. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  36. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  37. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  38. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  40. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  41. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  42. package/plugins/lisa-rails/skills/exploratory-qa/SKILL.md +29 -5
  43. package/plugins/lisa-rails-agy/plugin.json +1 -1
  44. package/plugins/lisa-rails-agy/skills/exploratory-qa/SKILL.md +29 -5
  45. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  46. package/plugins/lisa-rails-copilot/skills/exploratory-qa/SKILL.md +29 -5
  47. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  48. package/plugins/lisa-rails-cursor/skills/exploratory-qa/SKILL.md +29 -5
  49. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  50. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  51. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  52. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  53. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  54. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  55. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  56. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  57. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  58. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  59. package/plugins/src/expo/skills/exploratory-qa/SKILL.md +29 -5
  60. package/plugins/src/harper-fabric/skills/exploratory-qa/SKILL.md +29 -5
  61. package/plugins/src/rails/skills/exploratory-qa/SKILL.md +29 -5
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "NestJS-specific skills and migration write-protection hooks.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, across Claude and Codex.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Ruby on Rails-specific skills and hooks for RuboCop and ast-grep scanning on edit.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: exploratory-qa
3
- description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (human-facing jargon, contextless extracted data, machine-style labels, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
3
+ description: First-time-user exploratory QA walkthrough for web apps that FEEDS THE LIFECYCLE. Use when asked to experience an app the way a brand-new human user would — landing cold on the home page and clicking through to find anything confusing, broken, or hard to understand (unclear purpose or audience, human-facing jargon, contextless extracted data, machine-style labels, raw dates/enums, sparse data with no explanation, wrong control semantics, slow or unclear loads, late meaningful content, cramped or cut-off UI, inconsistent/non-standard UX, awkward scroll behavior, unclear affordances, dead-end flows that strand a user — e.g. a login page with no way to register or recover a password, or a primary action that drops the user into an incomplete/unsatisfiable state with no way to finish) across all breakpoints. Instead of writing a report file, it files every finding as a tracked work item via lisa:tracker-write (bugs and usability/UX issues). A `ready` parameter controls whether those tickets are created build-ready (auto-picked-up by lisa:intake) or left in the backlog for human triage (default). For gaps in the automated Playwright test suite, use the e2e-coverage-gaps skill instead.
4
4
  ---
5
5
 
6
6
  # Exploratory QA
@@ -43,6 +43,9 @@ filed as a tracked work item so it enters the Lisa lifecycle — no static repor
43
43
  - Start at the home/landing page with **no prior knowledge of the app**. Do **not** pre-read the
44
44
  codebase to learn the intended flows — discover them the way a user would, by looking and clicking.
45
45
  - Form a first impression: is it obvious what this app is, what to do first, and where to go next?
46
+ - On each major page, ask what a cold user would think the page is trying to do or tell them. If the
47
+ page could plausibly be read as several different products or workflows (public browser vs admin
48
+ workbench vs data-quality dashboard vs review queue), file a clarity/usability ticket.
46
49
 
47
50
  ### 3. Use It Like a Human
48
51
 
@@ -52,17 +55,38 @@ mistakes, and tries the obvious thing. Cover at least these dimensions unless th
52
55
  - **Comprehension & labeling:** human-facing copy must sound like something a normal first-time user
53
56
  would understand. Flag machine-style or developer labels shown to users (raw IDs, enum keys,
54
57
  `snake_case`, `null`/`undefined`, untranslated i18n keys), admin/database terms such as
55
- "metadata", implementation identifiers such as slugs, unexplained domain jargon, unclear
56
- button/menu names, and icons with no discernible meaning. If a heading, label, or field would make a
57
- non-technical user ask "what does that mean?", file a usability/clarity ticket with plainer wording.
58
+ "metadata", "rows", "bucket", "record", "entity", or "loaded rows", implementation identifiers such
59
+ as slugs, unexplained domain jargon, unclear button/menu names, and icons with no discernible
60
+ meaning. Flag all-caps enum/source labels, raw timestamps, and typo-like machine strings. If a
61
+ heading, label, or field would make a non-technical user ask "what does that mean?", file a
62
+ usability/clarity ticket with plainer wording.
58
63
  - **Data usefulness & context:** extracted facts, metrics, summaries, and structured tables must help
59
64
  a person understand the surface. Flag machine residue that only proves extraction happened, such as
60
65
  repeated generic fields (`Money Mention`, `Entity`, `Record`) paired with values but no sentence,
61
66
  source, category, or explanation of why the value matters. If a user cannot tell what a number,
62
67
  fact, or field refers to without rereading the raw source, file a usability/clarity ticket to hide it
63
68
  from the default UI or add context such as excerpts, labels, grouping, or provenance.
69
+ - **Data volume and trust:** compare the amount of visible data to what the page promises. A rich
70
+ explorer, dashboard, or workbench with only a few rows/items can look broken, filtered, still
71
+ loading, sample-only, or untrusted. File a finding when sparse data is not explicitly explained with
72
+ result counts, active filters, reset affordances, ingestion/coverage status, or sample/demo labeling.
73
+ - **Dates, numbers, and source metadata:** normal product UI should not expose storage formats unless
74
+ it is intentionally a technical log. Flag ISO timestamps, inconsistent relative/absolute date
75
+ styles, unexplained generated/imported/loaded dates, raw score/null states, and source metadata that
76
+ does not explain what was sourced, when, and why it matters.
77
+ - **Controls and mental model:** controls must match what they do. Sort is not a filter; search is not
78
+ a facet; finite data domains usually need selects/typeaheads rather than blank text inputs. Flag
79
+ controls that make users guess exact spelling/casing, hide the available option universe, mix
80
+ filtering with sorting/view settings, or use the wrong component for the task.
81
+ - **Information hierarchy and panel value:** scan cards, sidebars, workbenches, summaries, and metric
82
+ tiles for whether they communicate anything useful at a glance. File findings for blank-looking
83
+ panels, repeated cards with unclear labels, counts without named subjects, decorative summaries that
84
+ consume more attention than the primary workflow, or duplicated navigation that squeezes the actual
85
+ task area.
64
86
  - **Navigation clarity:** is it obvious how to get somewhere and back? Dead ends, hidden entry points,
65
- surprising redirects, broken links, no clear "home".
87
+ surprising redirects, broken links, no clear "home". Flag duplicated nav regions that compete for
88
+ space without adding page-specific value, and icon systems that degrade into raw punctuation or mix
89
+ unrelated visual languages.
66
90
  - **Flow completeness & expected counterparts:** a screen that gates access or shows one side of a
67
91
  standard paired flow must offer the other side — or a clear path to it. A brand-new user must never
68
92
  hit a dead end with no next step. Flag missing companion actions, especially on auth and entry
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "TypeScript-specific hooks for formatting, linting, and ast-grep scanning on edit.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.155.5",
3
+ "version": "2.155.7",
4
4
  "description": "Distributable LLM Wiki kernel — ingest, query, lint, and maintain a git-native markdown knowledge base across Claude and Codex.",
5
5
  "author": {
6
6
  "name": "Cody Swann"