wizz-method 2.13.0 → 2.15.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.
- package/THIRD-PARTY-NOTICES.md +2 -0
- package/package.json +10 -3
- package/skills-registry.yaml +30 -25
- package/src/bmm-skills/1-analysis/research/wizz-domain-research/customize.toml +4 -3
- package/src/bmm-skills/1-analysis/research/wizz-market-research/customize.toml +4 -3
- package/src/bmm-skills/1-analysis/research/wizz-technical-research/customize.toml +3 -1
- package/src/bmm-skills/1-analysis/wizz-agent-analyst/customize.toml +3 -1
- package/src/bmm-skills/1-analysis/wizz-agent-tech-writer/customize.toml +4 -3
- package/src/bmm-skills/1-analysis/wizz-document-project/customize.toml +4 -3
- package/src/bmm-skills/1-analysis/wizz-prfaq/customize.toml +4 -3
- package/src/bmm-skills/1-analysis/wizz-product-brief/customize.toml +5 -6
- package/src/bmm-skills/2-plan-workflows/wizz-agent-pm/customize.toml +3 -1
- package/src/bmm-skills/2-plan-workflows/wizz-agent-ux-designer/customize.toml +3 -1
- package/src/bmm-skills/2-plan-workflows/wizz-create-prd/customize.toml +4 -3
- package/src/bmm-skills/2-plan-workflows/wizz-edit-prd/customize.toml +4 -3
- package/src/bmm-skills/2-plan-workflows/wizz-prd/customize.toml +5 -6
- package/src/bmm-skills/2-plan-workflows/wizz-ux/customize.toml +4 -3
- package/src/bmm-skills/2-plan-workflows/wizz-validate-prd/customize.toml +4 -3
- package/src/bmm-skills/3-solutioning/wizz-agent-architect/customize.toml +3 -1
- package/src/bmm-skills/3-solutioning/wizz-architecture/customize.toml +5 -6
- package/src/bmm-skills/3-solutioning/wizz-check-implementation-readiness/customize.toml +4 -3
- package/src/bmm-skills/3-solutioning/wizz-create-architecture/customize.toml +4 -3
- package/src/bmm-skills/3-solutioning/wizz-create-epics-and-stories/customize.toml +4 -3
- package/src/bmm-skills/3-solutioning/wizz-generate-project-context/steps/step-03-complete.md +7 -0
- package/src/bmm-skills/4-implementation/wizz-agent-dev/customize.toml +3 -1
- package/src/bmm-skills/4-implementation/wizz-checkpoint-preview/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-code-review/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-code-review/steps/step-03-triage.md +23 -14
- package/src/bmm-skills/4-implementation/wizz-code-review/steps/step-04-present.md +2 -2
- package/src/bmm-skills/4-implementation/wizz-correct-course/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-create-story/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-dev-story/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-investigate/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-qa-generate-e2e-tests/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-quick-dev/SKILL.md +1 -1
- package/src/bmm-skills/4-implementation/wizz-quick-dev/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-quick-dev/spec-template.md +6 -0
- package/src/bmm-skills/4-implementation/wizz-quick-dev/step-04-review.md +27 -16
- package/src/bmm-skills/4-implementation/wizz-quick-dev/step-oneshot.md +27 -6
- package/src/bmm-skills/4-implementation/wizz-retrospective/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-sprint-planning/customize.toml +4 -3
- package/src/bmm-skills/4-implementation/wizz-sprint-status/customize.toml +4 -3
- package/src/core-skills/wizz-brainstorming/customize.toml +5 -6
- package/src/core-skills/wizz-brainstorming/scripts/brain.py +19 -0
- package/src/core-skills/wizz-brainstorming/scripts/tests/test_brain.py +33 -0
- package/src/core-skills/wizz-forge-idea/scripts/resolve_personas.py +3 -1
- package/src/core-skills/wizz-forge-idea/scripts/tests/test_resolve_personas.py +21 -0
- package/src/core-skills/wizz-help/SKILL.md +5 -3
- package/src/core-skills/wizz-party-mode/customize.toml +5 -4
- package/src/core-skills/wizz-party-mode/scripts/resolve_party.py +3 -1
- package/src/core-skills/wizz-party-mode/scripts/tests/test_resolve_party.py +21 -0
- package/src/core-skills/wizz-spec/customize.toml +4 -5
- package/src/modules/wizz/_shared/model-ladder.md +4 -4
- package/src/modules/wizz/agents/wizz-designer/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-maestro/SKILL.md +1 -1
- package/src/modules/wizz/subagents/opencode/wizz-exec-review.md +2 -2
- package/src/modules/wizz/subagents/opencode/wizz-exec-standard.md +2 -2
- package/src/modules/wizz/subagents/opencode/wizz-exec-strong.md +2 -2
- package/src/modules/wizz/subagents/spec.yaml +3 -3
- package/src/scripts/resolve_config.py +8 -0
- package/src/scripts/resolve_customization.py +24 -3
- package/src/scripts/tests/test_resolve_config.py +42 -0
- package/src/scripts/tests/test_resolve_customization.py +45 -0
- package/src/skills-lib/_shared/complexity-signal.md +1 -1
- package/src/skills-lib/ctc-align/SKILL.md +1 -1
- package/src/skills-lib/wizz-agent-browser/SKILL.md +5 -0
- package/src/skills-lib/wizz-design-needs/SKILL.md +1 -1
- package/src/skills-lib/wizz-huashu-design/scripts/html2pptx.js +902 -1061
- package/src/skills-lib/wizz-humanizer/README.md +134 -71
- package/src/skills-lib/wizz-humanizer/SKILL.md +51 -37
- package/src/skills-lib/wizz-humanizer/references/ai-writing-patterns.md +208 -190
- package/src/skills-lib/wizz-premium-landing-ui-researcher/SKILL.md +1 -1
- package/src/skills-lib/wizz-router/SKILL.md +1 -1
- package/src/skills-lib/wizz-ui-component-curator/SKILL.md +22 -2
- package/tools/installer/core/doctor.js +31 -1
- package/tools/installer/core/installer.js +32 -0
- package/tools/installer/core/project-instructions.js +199 -0
- package/src/bmm-skills/3-solutioning/wizz-architecture/scripts/__pycache__/lint_spine.cpython-313.pyc +0 -0
- package/src/bmm-skills/3-solutioning/wizz-architecture/scripts/tests/__pycache__/test_lint_spine.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/bmm-skills/4-implementation/wizz-retrospective/scripts/__pycache__/sprint_status.cpython-313.pyc +0 -0
- package/src/bmm-skills/4-implementation/wizz-retrospective/scripts/tests/__pycache__/test_git_evidence.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/bmm-skills/4-implementation/wizz-retrospective/scripts/tests/__pycache__/test_sprint_status.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/bmm-skills/4-implementation/wizz-sprint-planning/scripts/__pycache__/sprint_plan.cpython-313.pyc +0 -0
- package/src/bmm-skills/4-implementation/wizz-sprint-planning/scripts/tests/__pycache__/test_sprint_plan.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-advanced-elicitation/scripts/__pycache__/pick_methods.cpython-313.pyc +0 -0
- package/src/core-skills/wizz-advanced-elicitation/scripts/tests/__pycache__/test_pick_methods.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-brainstorming/scripts/__pycache__/brain.cpython-313.pyc +0 -0
- package/src/core-skills/wizz-brainstorming/scripts/tests/__pycache__/test_brain.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-brainstorming/scripts/tests/__pycache__/test_brain.cpython-314.pyc +0 -0
- package/src/core-skills/wizz-customize/scripts/__pycache__/list_customizable_skills.cpython-313.pyc +0 -0
- package/src/core-skills/wizz-customize/scripts/tests/__pycache__/test_list_customizable_skills.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-forge-idea/scripts/__pycache__/resolve_personas.cpython-313.pyc +0 -0
- package/src/core-skills/wizz-forge-idea/scripts/__pycache__/resolve_personas.cpython-314.pyc +0 -0
- package/src/core-skills/wizz-forge-idea/scripts/tests/__pycache__/test_resolve_personas.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-forge-idea/scripts/tests/__pycache__/test_resolve_personas.cpython-314.pyc +0 -0
- package/src/core-skills/wizz-party-mode/scripts/__pycache__/resolve_party.cpython-313.pyc +0 -0
- package/src/core-skills/wizz-party-mode/scripts/__pycache__/resolve_party.cpython-314.pyc +0 -0
- package/src/core-skills/wizz-party-mode/scripts/tests/__pycache__/test_resolve_party.cpython-313-pytest-9.1.1.pyc +0 -0
- package/src/core-skills/wizz-party-mode/scripts/tests/__pycache__/test_resolve_party.cpython-314.pyc +0 -0
- package/src/scripts/__pycache__/resolve_customization.cpython-314.pyc +0 -0
- package/src/skills-lib/wizz-huashu-design/package-lock.json +0 -846
- package/src/skills-lib/wizz-humanizer/WARP.md +0 -53
- package/src/skills-lib/wizz-humanizer/references/full-example.md +0 -72
- package/src/skills-lib/wizz-humanizer/references/personality-and-soul.md +0 -36
- package/src/skills-lib/wizz-react-components/package-lock.json +0 -231
- package/src/skills-lib/wizz-supabase-postgres-best-practices/CLAUDE.md +0 -68
- package/src/skills-lib/wizz-ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
- package/src/skills-lib/wizz-ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
|
@@ -1,314 +1,332 @@
|
|
|
1
|
-
# AI writing patterns
|
|
1
|
+
# AI writing patterns (humanizer 3.1.0)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Numbered strongest first. §1 to §5 justify an edit on one sighting; a pattern marked *weak alone* needs other tells in the same passage.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## A. Staging instead of stating
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
These are the strongest and most frequent tells in current model prose. Act on one sighting.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
**Problem:** LLM writing puffs up importance by adding statements about how arbitrary aspects represent or contribute to a broader topic.
|
|
9
|
+
### 1. Not X but Y
|
|
12
10
|
|
|
11
|
+
**Watch for:** not X but Y; not just, not only, or not merely X, but Y; it's not X, it's Y; the reversed form X rather than Y; the same contrast split across sentences ("This does not mean X. It means Y."); a clipped negative tail ("..., no guessing"). The formula appears in every language; treat the equivalent construction the same way.
|
|
12
|
+
**Problem:** The negative half names something no one claimed, so the positive half sounds larger. It adds weight without adding a claim. State the point directly. Keep a contrast only when the negative half corrects a belief the reader actually holds, or when both halves carry information.
|
|
13
13
|
**Before:**
|
|
14
|
-
>
|
|
15
|
-
|
|
14
|
+
> It's not just about the beat riding under the vocals; it's part of the aggression and atmosphere. It's not merely a song, it's a statement.
|
|
16
15
|
**After:**
|
|
17
|
-
> The
|
|
18
|
-
|
|
16
|
+
> The heavy beat adds to the aggressive tone.
|
|
17
|
+
**Before (split across sentences):**
|
|
18
|
+
> This does not mean every choice is equal. It means there is no external system that confirms which choice is right.
|
|
19
|
+
**After:**
|
|
20
|
+
> No external system confirms which choice is right, although the choices still have different consequences.
|
|
21
|
+
**Before (clipped tail):**
|
|
22
|
+
> The options come from the selected item, no guessing.
|
|
23
|
+
**After:**
|
|
24
|
+
> The options come from the selected item without forcing the user to guess.
|
|
19
25
|
|
|
20
|
-
### 2.
|
|
26
|
+
### 2. One-line closers and dramatic fragments
|
|
21
27
|
|
|
22
|
-
**
|
|
28
|
+
**Watch for:** a one-sentence paragraph that restates the paragraph before it; "That is the real win."; "That distinction matters."; "Read that again."; "Let that sink in."; the same closer after several sections; a sentence after an example, scene, or number that names what it showed ("This shows the importance of...", "The message was clear:", "It was a lesson in patience."); a row of fragments ("No aesthetic prior. No nostalgia."); one word in ALL CAPS or with periods between words (every. single. day.).
|
|
29
|
+
**Problem:** The line asks the reader to pause on a claim instead of adding to it. One short sentence can carry emphasis when it carries a new fact. Cut a closer that repeats, including one that explains an example the reader just saw. Keep it when it adds a fact or consequence the example does not show. Merge a row of fragments into a sentence with a specific claim.
|
|
30
|
+
**Before:**
|
|
31
|
+
> Then AlphaEvolve arrived. It had no preference for symmetry. No aesthetic prior. No nostalgia for human taste. The old rules were gone.
|
|
32
|
+
**After:**
|
|
33
|
+
> AlphaEvolve changed the search because it did not favor symmetry or human-looking designs. That made some of the older assumptions less useful.
|
|
34
|
+
**Before (repeated closer):**
|
|
35
|
+
> Caching cuts repeat work.
|
|
36
|
+
>
|
|
37
|
+
> That is the real win.
|
|
38
|
+
>
|
|
39
|
+
> Retries hide brief outages.
|
|
40
|
+
>
|
|
41
|
+
> That is the real win.
|
|
42
|
+
**After:**
|
|
43
|
+
> Caching cuts repeat work.
|
|
44
|
+
>
|
|
45
|
+
> Retries hide brief outages.
|
|
23
46
|
|
|
24
|
-
|
|
47
|
+
### 3. Sayings that sound deep
|
|
25
48
|
|
|
49
|
+
**Watch for:** the real question is, at its core, in reality, what really matters, fundamentally, the deeper issue, the heart of the matter, X is the Y of Z, X becomes a trap, X is not a tool but a mirror, the language of, the currency of, the architecture of
|
|
50
|
+
**Problem:** An ordinary point is dressed as a hidden truth or an aphorism, and the dressing adds no detail. Replace the saying with the specific claim.
|
|
26
51
|
**Before:**
|
|
27
|
-
>
|
|
28
|
-
|
|
52
|
+
> The real question is whether teams can adapt. At its core, what really matters is organizational readiness.
|
|
29
53
|
**After:**
|
|
30
|
-
>
|
|
31
|
-
|
|
54
|
+
> The question is whether teams can adapt. That mostly depends on whether the organization is ready to change its habits.
|
|
55
|
+
**Before (aphorism):**
|
|
56
|
+
> Symmetry is the language of trust. Efficiency becomes a trap when teams forget the human layer.
|
|
57
|
+
**After:**
|
|
58
|
+
> Symmetric layouts often feel more predictable to users. Teams can over-optimize workflows and miss how people actually use them.
|
|
32
59
|
|
|
33
|
-
###
|
|
60
|
+
### 4. Staged run-up before the point
|
|
34
61
|
|
|
35
|
-
**
|
|
62
|
+
**Watch for:** Let's dive in, let's explore, let's break this down, here's what you need to know, now let's look at, without further ado, heads up, quick note, Honestly?, Look, Here's the thing, The thing is, Let's be honest, Real talk, and casual versions such as "one thing that bit me, so pay attention"
|
|
63
|
+
**Problem:** The writer announces the point or stages a moment of candor instead of making the point. Remove the run-up, not just its tone. "Honestly" or "look" inside a casual sentence is ordinary; the tell is the standalone opener before a routine claim.
|
|
64
|
+
**Before:**
|
|
65
|
+
> Let's dive into how caching works in Next.js. Here's what you need to know.
|
|
66
|
+
**After:**
|
|
67
|
+
> Next.js caches data at multiple layers, including request memoization, the data cache, and the router cache.
|
|
68
|
+
**Before (staged candor):**
|
|
69
|
+
> Is it worth the price? Honestly? It depends on how often you'll use it.
|
|
70
|
+
**After:**
|
|
71
|
+
> Whether it's worth the price depends on how often you'll use it.
|
|
36
72
|
|
|
37
|
-
|
|
73
|
+
### 5. Arguing with no one
|
|
38
74
|
|
|
75
|
+
**Watch for:** This isn't (mainly) about, I'm not saying, To be clear, Don't get me wrong, This is not to say, Some might say... but, A tempting approach would be, One might be tempted to, An obvious approach would be, You might think... but, It would be easy to just
|
|
76
|
+
**Problem:** The text answers an objection or rejects an option that appears nowhere else, usually a leftover from an earlier draft. Remove the defense; if it holds a real claim, state the claim. Keep an objection the text attributes or answers in full, and keep an option a reader would actually weigh. Several unrelated rejections in a row are a stronger sign than one.
|
|
39
77
|
**Before:**
|
|
40
|
-
>
|
|
41
|
-
|
|
78
|
+
> This isn't mainly about prompt length, and I'm not arguing that documentation doesn't matter. You could categorize the problem another way, but the issue is whether the agent can use the instruction when it acts.
|
|
42
79
|
**After:**
|
|
43
|
-
> The
|
|
44
|
-
|
|
80
|
+
> The issue is whether the agent can use the instruction when it acts.
|
|
81
|
+
**Before (fake alternative):**
|
|
82
|
+
> Session tokens are rotated every 24 hours. A tempting approach would be to rotate them by restarting the auth service on a cron job, but that would drop every active session. Rotation happens in place, and clients refresh transparently.
|
|
83
|
+
**After:**
|
|
84
|
+
> Session tokens are rotated every 24 hours, in place, and clients refresh transparently.
|
|
45
85
|
|
|
46
|
-
|
|
86
|
+
## B. Rhythm by rule
|
|
47
87
|
|
|
48
|
-
|
|
88
|
+
Shapes and punctuation applied everywhere, whether or not the meaning asks for them.
|
|
49
89
|
|
|
50
|
-
|
|
90
|
+
### 6. Forced triads
|
|
51
91
|
|
|
92
|
+
**Problem:** Ideas arrive in threes to sound complete, whether the meaning has three parts or not. The tell can be one sentence ("innovation, inspiration, and insights"), three parallel examples, or three short facts followed by a lesson. Check that each item adds a distinct idea. Merge examples, develop the strongest one, or vary the structure when they do not. Keep three real items when the meaning needs three.
|
|
52
93
|
**Before:**
|
|
53
|
-
>
|
|
54
|
-
|
|
94
|
+
> The event features keynote sessions, panel discussions, and networking opportunities. Attendees can expect innovation, inspiration, and industry insights.
|
|
55
95
|
**After:**
|
|
56
|
-
>
|
|
57
|
-
|
|
96
|
+
> The event includes talks and panels. There's also time for informal networking between sessions.
|
|
97
|
+
**Before (paragraph scale):**
|
|
98
|
+
> A career can look promising and fail. A relationship can feel important and end. A skill can take years and remain useless. These decisions rarely explain themselves.
|
|
99
|
+
**After:**
|
|
100
|
+
> A career can look promising and fail. So can a relationship that felt important and ended, or a skill that took years and remained useless. These decisions rarely explain themselves.
|
|
58
101
|
|
|
59
|
-
###
|
|
102
|
+
### 7. Repeated sentence openings
|
|
60
103
|
|
|
61
|
-
**
|
|
104
|
+
**Problem:** Several sentences in a row start with the same subject, often *she* or *he*, because repetition is handled by rule instead of by ear. Merge the sentences, change the subject, or begin with the action. Do not ban the repeated word; a remaining sentence may still start with "She." Writers also repeat an opening on purpose for rhythm, as in "She came. She saw. She conquered."
|
|
105
|
+
**Before:**
|
|
106
|
+
> She noted the door. She noted the lock on it. She filed both away.
|
|
107
|
+
**After:**
|
|
108
|
+
> She noted the door and its lock, then filed both away.
|
|
62
109
|
|
|
63
|
-
|
|
110
|
+
### 8. Dashes as the universal connector
|
|
64
111
|
|
|
112
|
+
**Rule:** The final rewrite must not contain em dashes (—) or en dashes (–) unless the writer's sample uses them; then match the sample's rate. Replace each dash with a period, comma, colon, or parentheses, or rewrite the sentence. This includes spaced dashes and double hyphens (` -- `) used as dashes. Leave dashes and hyphens inside code blocks, inline code, commands, paths, and URLs alone.
|
|
113
|
+
**Problem:** A dash lets the writer skip choosing how two clauses relate, so a model reaches for it everywhere. Many editors and journalists also use dashes, so one dash is *weak alone*; a text full of them is not.
|
|
65
114
|
**Before:**
|
|
66
|
-
>
|
|
67
|
-
|
|
115
|
+
> The new policy — announced without warning — affects thousands of workers. The changes -- long overdue according to critics -- will take effect immediately.
|
|
68
116
|
**After:**
|
|
69
|
-
> The
|
|
117
|
+
> The new policy, announced without warning, affects thousands of workers. The changes, long overdue according to critics, will take effect immediately.
|
|
70
118
|
|
|
119
|
+
### 9. Stacked qualifiers
|
|
71
120
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
**
|
|
121
|
+
**Watch for:** to be fair, it's also possible, could potentially, might arguably, in some cases it may, this is an inference
|
|
122
|
+
**Problem:** Repeated editing adds one qualifier after another until every claim sounds uncertain, usually to repair an earlier overstatement rather than to report real doubt. Keep a qualifier only when the source supports it and the meaning needs it. Keep scope statements, legal and safety notices, and real corrections. Ordinary hedges such as *perhaps* or *tends to* are human habits and not tells. *Weak alone.*
|
|
123
|
+
**Before:**
|
|
124
|
+
> It could potentially possibly be argued that the policy might have some effect on outcomes.
|
|
125
|
+
**After:**
|
|
126
|
+
> The policy may affect outcomes.
|
|
75
127
|
|
|
76
|
-
|
|
128
|
+
### 10. Hyphenated pairs everywhere
|
|
77
129
|
|
|
130
|
+
**Watch for:** high-quality, well-known, well-documented, long-term, real-time, client-facing after the noun they describe
|
|
131
|
+
**Problem:** Compound modifiers keep their hyphen in every position. Keep the hyphen before a noun, as in `a high-quality report`, and drop it after the noun, as in `the report is high quality`. Words the dictionary always spells with a hyphen, such as third-party and cross-functional, keep it everywhere. *Weak alone.*
|
|
78
132
|
**Before:**
|
|
79
|
-
>
|
|
80
|
-
|
|
133
|
+
> The report is high-quality, the process is well-documented, and the plan is long-term.
|
|
81
134
|
**After:**
|
|
82
|
-
>
|
|
135
|
+
> The report is high quality, the process is well documented, and the plan is long term.
|
|
83
136
|
|
|
137
|
+
### 11. Passive voice and missing subjects
|
|
84
138
|
|
|
85
|
-
|
|
139
|
+
**Problem:** The text hides who acts or drops the subject. Use active voice when it makes the actor and action clearer. *Weak alone.*
|
|
140
|
+
**Before:**
|
|
141
|
+
> No configuration file needed. The results are preserved automatically.
|
|
142
|
+
**After:**
|
|
143
|
+
> You do not need a configuration file. The system preserves the results automatically.
|
|
86
144
|
|
|
87
|
-
|
|
145
|
+
## C. Inflation and borrowed authority
|
|
88
146
|
|
|
89
|
-
|
|
147
|
+
The fact underneath is usually sound. Keep it and remove the dressing.
|
|
90
148
|
|
|
91
|
-
|
|
149
|
+
### 12. Overused AI words
|
|
92
150
|
|
|
151
|
+
**Watch for:** Actually, additionally, align with, bolstered, crucial, deep dive, delve, enduring, enhance, garner, gate/gated/gating (figurative; keep technical uses), highlight (verb), interplay, intricate/intricacies, key (adjective), landscape (abstract noun), meticulous/meticulously, pivotal, quietly, robust (figurative; keep technical uses), showcase, tapestry (abstract noun), testament, underscore (verb), valuable, vibrant
|
|
152
|
+
**Problem:** Models use these words far more often than people do, especially in groups. The watch lists in §13 to §18 hold phrases that are tells because of how they are used; this list holds words that are tells wherever they appear. A formal word outside these lists is not a tell by itself.
|
|
93
153
|
**Before:**
|
|
94
154
|
> Additionally, a distinctive feature of Somali cuisine is the incorporation of camel meat. An enduring testament to Italian colonial influence is the widespread adoption of pasta in the local culinary landscape, showcasing how these dishes have integrated into the traditional diet.
|
|
95
|
-
|
|
96
155
|
**After:**
|
|
97
156
|
> Somali cuisine also includes camel meat, which is considered a delicacy. Pasta dishes, introduced during Italian colonization, remain common, especially in the south.
|
|
98
157
|
|
|
158
|
+
### 13. Inflated significance
|
|
99
159
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
**Words to watch:** serves as/stands as/marks/represents [a], boasts/features/offers [a]
|
|
103
|
-
|
|
104
|
-
**Problem:** LLMs substitute elaborate constructions for simple copulas.
|
|
105
|
-
|
|
160
|
+
**Watch for:** stands as a testament, a pivotal or crucial moment, plays a key role, marking or shaping the, underscores its importance, reflects a broader, enduring or lasting legacy, setting the stage for, evolving landscape, indelible mark; Despite these challenges... continues to thrive, Challenges and Legacy, Future Outlook, Awards and recognition; the future looks bright, exciting times ahead, a step in the right direction
|
|
161
|
+
**Problem:** An ordinary detail is said to mark a change, prove a legacy, or promise a future. The move appears at three scales: a phrase, a stock "challenges and outlook" section, and a send-off paragraph. Keep the fact and drop the significance. End on the last concrete fact; if the source states real plans, use those.
|
|
106
162
|
**Before:**
|
|
107
|
-
>
|
|
108
|
-
|
|
163
|
+
> The Statistical Institute of Catalonia was officially established in 1989, marking a pivotal moment in the evolution of regional statistics in Spain. This initiative was part of a broader movement across Spain to decentralize administrative functions and enhance regional governance.
|
|
109
164
|
**After:**
|
|
110
|
-
>
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
### 9. Negative Parallelisms
|
|
114
|
-
|
|
115
|
-
**Problem:** Constructions like "Not only...but..." or "It's not just about..., it's..." are overused.
|
|
116
|
-
|
|
117
|
-
**Before:**
|
|
118
|
-
> It's not just about the beat riding under the vocals; it's part of the aggression and atmosphere. It's not merely a song, it's a statement.
|
|
119
|
-
|
|
165
|
+
> The Statistical Institute of Catalonia was established in 1989, part of a wider decentralization of administrative functions in Spain.
|
|
166
|
+
**Before (stock section):**
|
|
167
|
+
> Despite its industrial prosperity, Korattur faces challenges typical of urban areas, including traffic congestion and water scarcity. Despite these challenges, with its strategic location and ongoing initiatives, Korattur continues to thrive as an integral part of Chennai's growth.
|
|
120
168
|
**After:**
|
|
121
|
-
>
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
169
|
+
> Korattur has recurring traffic congestion and water shortages.
|
|
170
|
+
**Before (send-off):**
|
|
171
|
+
> The future looks bright for the company. Exciting times lie ahead as they continue their journey toward excellence.
|
|
172
|
+
**After:**
|
|
173
|
+
> (Cut the paragraph. End on the last concrete fact.)
|
|
125
174
|
|
|
126
|
-
|
|
175
|
+
### 14. Vague connection or association
|
|
127
176
|
|
|
177
|
+
**Watch for:** associated with, in association with, connected to, in connection with, linked to, tied to
|
|
178
|
+
**Problem:** The text says two things are connected without saying how. "He was associated with the leadership of ExampleCorp" hides whether he was the CEO, a board member, or a consultant. Name the relationship the source gives. If the source does not say, keep the vague wording rather than inventing a role.
|
|
128
179
|
**Before:**
|
|
129
|
-
>
|
|
130
|
-
|
|
180
|
+
> He is associated with the Rajhans Orchestra, which he founded and conducts. The concerts were organised in connection with the celebrations of Pakistan's 50th anniversary.
|
|
131
181
|
**After:**
|
|
132
|
-
>
|
|
182
|
+
> He founded and conducts the Rajhans Orchestra. The concerts were part of the celebrations of Pakistan's 50th anniversary.
|
|
133
183
|
|
|
184
|
+
### 15. Shallow -ing riders
|
|
134
185
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
**Problem:** AI has repetition-penalty code causing excessive synonym substitution.
|
|
138
|
-
|
|
186
|
+
**Watch for:** highlighting, underscoring, emphasizing, ensuring, reflecting, symbolizing, contributing to, cultivating, fostering, encompassing, showcasing
|
|
187
|
+
**Problem:** An -ing phrase is bolted onto a simple fact to make it sound deeper. Attaching it to a named source ("Roger Ebert highlighted the lasting influence") does not make it true. Keep the fact; keep the rider only when the source supports what it claims.
|
|
139
188
|
**Before:**
|
|
140
|
-
> The
|
|
141
|
-
|
|
189
|
+
> The temple's color palette of blue, green, and gold resonates with the region's natural beauty, symbolizing Texas bluebonnets, the Gulf of Mexico, and the diverse Texan landscapes, reflecting the community's deep connection to the land.
|
|
142
190
|
**After:**
|
|
143
|
-
> The
|
|
191
|
+
> The temple is painted blue, green, and gold, colors meant to evoke Texas bluebonnets and the Gulf of Mexico.
|
|
144
192
|
|
|
193
|
+
### 16. Sales language
|
|
145
194
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
**Problem:** LLMs use "from X to Y" constructions where X and Y aren't on a meaningful scale.
|
|
149
|
-
|
|
195
|
+
**Watch for:** rich (figurative), profound, exemplifies, commitment to, natural beauty, nestled, in the heart of, groundbreaking (figurative), renowned, featuring, diverse array, breathtaking, must-visit, stunning
|
|
196
|
+
**Problem:** The text reads like an advertisement, especially for places, culture, products, or organizations. State what the thing is.
|
|
150
197
|
**Before:**
|
|
151
|
-
>
|
|
152
|
-
|
|
198
|
+
> Nestled within the breathtaking region of Gonder in Ethiopia, Alamata Raya Kobo stands as a vibrant town with a rich cultural heritage and stunning natural beauty.
|
|
153
199
|
**After:**
|
|
154
|
-
>
|
|
200
|
+
> Alamata Raya Kobo is a town in the Gonder region of Ethiopia.
|
|
155
201
|
|
|
202
|
+
### 17. Borrowed authority
|
|
156
203
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
204
|
+
**Watch for:** experts argue, observers have cited, industry reports, some critics, several publications; cited, featured, or profiled in [a list of outlets], trade publications, independent coverage; active social media presence, over N followers
|
|
205
|
+
**Problem:** A name or an unnamed authority stands in for what was said. Unnamed experts prop up a claim; a list of prestige outlets props up a person. When the source text names the real source and what it said, use that. Otherwise cut the unsupported claim or the list. A missing citation alone is not a tell; most writing is unsourced.
|
|
206
|
+
**Before (unnamed authority):**
|
|
207
|
+
> Due to its unique characteristics, the Haolai River is of interest to researchers and conservationists. Experts believe it plays a crucial role in the regional ecosystem.
|
|
208
|
+
**After:**
|
|
209
|
+
> Researchers and conservationists study the Haolai River for its unusual characteristics.
|
|
210
|
+
**Before (prestige list):**
|
|
211
|
+
> Her views have been cited in The New York Times, BBC, Financial Times, and The Hindu. She maintains an active social media presence with over 500,000 followers.
|
|
212
|
+
**After:**
|
|
213
|
+
> Her views have been cited in The New York Times and the BBC.
|
|
160
214
|
|
|
161
|
-
|
|
215
|
+
### 18. Avoiding is, are, and has
|
|
162
216
|
|
|
217
|
+
**Watch for:** serves as, stands as, functions as, operates as, marks, represents [a]; boasts, features, offers, maintains [a]; refers to
|
|
218
|
+
**Problem:** Simple verbs are replaced with longer phrases. Use *is*, *are*, and *has*.
|
|
163
219
|
**Before:**
|
|
164
|
-
>
|
|
165
|
-
|
|
220
|
+
> Gallery 825 serves as LAAA's exhibition space for contemporary art. The gallery features four separate spaces and boasts over 3,000 square feet.
|
|
166
221
|
**After:**
|
|
167
|
-
>
|
|
222
|
+
> Gallery 825 is LAAA's exhibition space for contemporary art. The gallery has four rooms totaling 3,000 square feet.
|
|
168
223
|
|
|
224
|
+
## D. Formatting by rule
|
|
169
225
|
|
|
170
|
-
|
|
226
|
+
Templates and visual editors also produce clean formatting. The tell is decoration on every item.
|
|
171
227
|
|
|
172
|
-
|
|
228
|
+
### 19. Bold as decoration
|
|
173
229
|
|
|
230
|
+
**Problem:** Words are bolded without a reason, and vertical lists give every item a bold label and a colon. Remove the bold. Turn a labeled list into prose when the labels carry no information of their own.
|
|
174
231
|
**Before:**
|
|
175
232
|
> It blends **OKRs (Objectives and Key Results)**, **KPIs (Key Performance Indicators)**, and visual strategy tools such as the **Business Model Canvas (BMC)** and **Balanced Scorecard (BSC)**.
|
|
176
|
-
|
|
177
233
|
**After:**
|
|
178
234
|
> It blends OKRs, KPIs, and visual strategy tools like the Business Model Canvas and Balanced Scorecard.
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
### 15. Inline-Header Vertical Lists
|
|
182
|
-
|
|
183
|
-
**Problem:** AI outputs lists where items start with bolded headers followed by colons.
|
|
184
|
-
|
|
185
|
-
**Before:**
|
|
235
|
+
**Before (labeled list):**
|
|
186
236
|
> - **User Experience:** The user experience has been significantly improved with a new interface.
|
|
187
237
|
> - **Performance:** Performance has been enhanced through optimized algorithms.
|
|
188
238
|
> - **Security:** Security has been strengthened with end-to-end encryption.
|
|
189
|
-
|
|
190
239
|
**After:**
|
|
191
240
|
> The update improves the interface, speeds up load times through optimized algorithms, and adds end-to-end encryption.
|
|
192
241
|
|
|
242
|
+
### 20. Decorative headings
|
|
193
243
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
**Problem:** AI chatbots capitalize all main words in headings.
|
|
197
|
-
|
|
244
|
+
**Problem:** Headings capitalize every main word, and headings or list items carry emojis or arrows (→) as decoration. A horizontal rule sits between every section, or the document opens with a top-level heading that repeats its own title. A heading written for effect ("The decision, on one screen") should name what the section holds ("How the six options compare"). Use sentence case, remove the decoration and the rules, and let the title stand once.
|
|
198
245
|
**Before:**
|
|
199
246
|
> ## Strategic Negotiations And Global Partnerships
|
|
200
|
-
|
|
201
247
|
**After:**
|
|
202
248
|
> ## Strategic negotiations and global partnerships
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
### 17. Emojis
|
|
206
|
-
|
|
207
|
-
**Problem:** AI chatbots often decorate headings or bullet points with emojis.
|
|
208
|
-
|
|
209
|
-
**Before:**
|
|
249
|
+
**Before (emojis):**
|
|
210
250
|
> 🚀 **Launch Phase:** The product launches in Q3
|
|
211
251
|
> 💡 **Key Insight:** Users prefer simplicity
|
|
212
|
-
> ✅ **Next Steps:** Schedule follow-up meeting
|
|
213
|
-
|
|
214
252
|
**After:**
|
|
215
|
-
> The product launches in Q3. User research showed a preference for simplicity.
|
|
253
|
+
> The product launches in Q3. User research showed a preference for simplicity.
|
|
216
254
|
|
|
255
|
+
### 21. Curly quotation marks
|
|
217
256
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
**Problem:** ChatGPT uses curly quotes (“...”) instead of straight quotes ("...").
|
|
221
|
-
|
|
257
|
+
**Problem:** Curly quotes (“...”) appear where the writer or target format uses straight quotes ("..."). Most editors auto-curl, so this is *weak alone*.
|
|
222
258
|
**Before:**
|
|
223
259
|
> He said “the project is on track” but others disagreed.
|
|
224
|
-
|
|
225
260
|
**After:**
|
|
226
261
|
> He said "the project is on track" but others disagreed.
|
|
227
262
|
|
|
263
|
+
## E. Leftovers from the chat and the draft
|
|
228
264
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
### 19. Collaborative Communication Artifacts
|
|
265
|
+
Remove these outright. Nothing here needs rewriting.
|
|
232
266
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
**Problem:** Text meant as chatbot correspondence gets pasted as content.
|
|
267
|
+
### 22. Chatbot residue
|
|
236
268
|
|
|
269
|
+
**Watch for:** I hope this helps, Of course!, Certainly!, Great question!, You're absolutely right, Would you like..., Want me to...?, Should I continue?, let me know, here is a...
|
|
270
|
+
**Problem:** A chatbot's greeting, praise, offer, or closing remains in text that should stand on its own. It is the most certain tell in this list and the easiest to miss when it wraps real content. Remove the wrapper and keep the content.
|
|
237
271
|
**Before:**
|
|
238
|
-
> Here is an overview of the French Revolution. I hope this helps! Let me know if you'd like me to expand on any section.
|
|
239
|
-
|
|
272
|
+
> Great question! Here is an overview of the French Revolution. It began in 1789 when a financial crisis and food shortages led to widespread unrest. I hope this helps! Let me know if you'd like me to expand on any section.
|
|
240
273
|
**After:**
|
|
241
|
-
> The French Revolution began in 1789 when financial crisis and food shortages led to widespread unrest.
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
### 20. Knowledge-Cutoff Disclaimers
|
|
274
|
+
> The French Revolution began in 1789 when a financial crisis and food shortages led to widespread unrest.
|
|
245
275
|
|
|
246
|
-
|
|
276
|
+
### 23. Knowledge-limit disclaimers and guesses
|
|
247
277
|
|
|
248
|
-
**
|
|
249
|
-
|
|
250
|
-
**Before:**
|
|
278
|
+
**Watch for:** as of [date], up to my last training update, while specific details are limited, based on available information, not publicly available, not widely documented or disclosed, in the provided or available sources, maintains a low profile, keeps personal details private, likely [grew up, studied, began], it is believed that
|
|
279
|
+
**Problem:** The text mentions where the model's knowledge ends, or admits it found no source and then fills the gap with a plausible guess. State what the source does not show, or remove the sentence.
|
|
280
|
+
**Before (cutoff disclaimer):**
|
|
251
281
|
> While specific details about the company's founding are not extensively documented in readily available sources, it appears to have been established sometime in the 1990s.
|
|
252
|
-
|
|
253
282
|
**After:**
|
|
254
|
-
> The company
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
### 21. Sycophantic/Servile Tone
|
|
258
|
-
|
|
259
|
-
**Problem:** Overly positive, people-pleasing language.
|
|
260
|
-
|
|
261
|
-
**Before:**
|
|
262
|
-
> Great question! You're absolutely right that this is a complex topic. That's an excellent point about the economic factors.
|
|
263
|
-
|
|
283
|
+
> The company's founding date is not documented in the available sources. (Or cut the sentence.)
|
|
284
|
+
**Before (guess):**
|
|
285
|
+
> Information about her early life is not publicly available, suggesting she maintains a low profile. She likely grew up in a middle-class household, which shaped her later interest in education reform.
|
|
264
286
|
**After:**
|
|
265
|
-
>
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
## FILLER AND HEDGING
|
|
269
|
-
|
|
270
|
-
### 22. Filler Phrases
|
|
287
|
+
> Her early life is not documented in the available sources. (Or omit the section.)
|
|
271
288
|
|
|
272
|
-
|
|
273
|
-
- "In order to achieve this goal" → "To achieve this"
|
|
274
|
-
- "Due to the fact that it was raining" → "Because it was raining"
|
|
275
|
-
- "At this point in time" → "Now"
|
|
276
|
-
- "In the event that you need help" → "If you need help"
|
|
277
|
-
- "The system has the ability to process" → "The system can process"
|
|
278
|
-
- "It is important to note that the data shows" → "The data shows"
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
### 23. Excessive Hedging
|
|
282
|
-
|
|
283
|
-
**Problem:** Over-qualifying statements.
|
|
289
|
+
### 24. A heading repeated in the first sentence
|
|
284
290
|
|
|
291
|
+
**Problem:** A heading is followed by a one-line paragraph that restates it before the real content begins. Remove the repeated sentence.
|
|
285
292
|
**Before:**
|
|
286
|
-
>
|
|
287
|
-
|
|
293
|
+
> ## Performance
|
|
294
|
+
>
|
|
295
|
+
> Speed matters.
|
|
296
|
+
>
|
|
297
|
+
> When users hit a slow page, they leave.
|
|
288
298
|
**After:**
|
|
289
|
-
>
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
### 24. Generic Positive Conclusions
|
|
299
|
+
> ## Performance
|
|
300
|
+
>
|
|
301
|
+
> When users hit a slow page, they leave.
|
|
293
302
|
|
|
294
|
-
|
|
303
|
+
### 25. Writing about the document instead of its subject
|
|
295
304
|
|
|
305
|
+
**Watch for:** what the text replaced ("was added to replace"); how it was assembled or sourced ("generated from", "compiled from", "anything unconfirmed is flagged rather than guessed"); a legend, layout, or order the reader can already see ("the table below compares", "this section is organized by owner").
|
|
306
|
+
**Problem:** The text describes itself instead of its subject. Mention a previous version only in change logs, release notes, migration guides, and other documents about change. Keep a source credit the reader can follow; cut the account of how you worked. Keep a caveat that changes what the reader should do. State a convention only when the reader cannot infer it, and state it once. A single description of the page is *weak alone*.
|
|
296
307
|
**Before:**
|
|
297
|
-
>
|
|
298
|
-
|
|
308
|
+
> This function was added to replace the previous approach of iterating through all items, which caused O(n²) performance.
|
|
299
309
|
**After:**
|
|
300
|
-
>
|
|
301
|
-
|
|
310
|
+
> This function uses a hash map for O(1) lookups, avoiding the O(n²) cost of naive iteration.
|
|
311
|
+
**Before (method narration):**
|
|
312
|
+
> The figures below are drawn from each vendor's published pricing; anything we could not confirm is flagged rather than guessed.
|
|
313
|
+
**After:**
|
|
314
|
+
> Prices are each vendor's published rate. Two vendors publish nothing; call them.
|
|
302
315
|
|
|
303
|
-
|
|
316
|
+
## F. Writing for the wrong reader
|
|
304
317
|
|
|
305
|
-
|
|
318
|
+
A model writes for a reader who shares no context, because that fits the widest range of cases. A reply in a thread has a reader who already knows the background. Act on this pattern when you can see the surrounding conversation, or when the text plainly is a reply. If you cannot tell, ask or leave the text alone.
|
|
306
319
|
|
|
307
|
-
|
|
320
|
+
### 26. Re-explaining what the reader knows
|
|
308
321
|
|
|
322
|
+
**Watch for:** a short reply that restates the problem, walks through the diagnosis, and lays out the evidence before it reaches the decision; a query, command, or set of numbers included to prove a plan will work; background the other person wrote or already agreed to; the answer itself sitting in the last line.
|
|
323
|
+
**Problem:** In a reply the reader already has the context, so rebuilding it adds nothing and buries the point. Each sentence can read fine on its own, so this survives sentence-level cleanup. Lead with the decision and keep only the reasoning that would change whether the reader agrees: usually one fact they lack and any link they need to act. The diagnosis and the proof that a plan will work belong in the ticket or document that follows; a reviewer raising a topic is not a request for the full write-up.
|
|
309
324
|
**Before:**
|
|
310
|
-
> The
|
|
311
|
-
|
|
325
|
+
> Yeah, you're right, this works around the issue rather than fixing it. The real fix is in `MergeService`: when we move a child under a new parent, it should update `pipeline_id` along with `parent_id`. We can backfill the bad rows from the audit log with `Change.where(field: "pipeline_id", source: "merge")`. I checked QA: 123 past merges, only 6 rows wrong now, so the cleanup is small.
|
|
326
|
+
>
|
|
327
|
+
> Since `MergeService` is shared and not specific to this account, I'd rather open a separate ticket than widen this PR. The fallback here is fine to keep until then.
|
|
312
328
|
**After:**
|
|
313
|
-
>
|
|
329
|
+
> Agreed, this is a workaround. Fixing it properly in `MergeService` would widen this ticket well past its scope: it is shared code, so it means checking the merge flow for every account, plus a backfill for the rows that are already wrong.
|
|
330
|
+
>
|
|
331
|
+
> I'd rather keep this PR account specific and open a separate ticket for the `MergeService` fix and the backfill. Let me know if that works.
|
|
314
332
|
|
|
@@ -9,7 +9,7 @@ Autonomous strategist for premium landing pages, SaaS UI, and advanced visual ex
|
|
|
9
9
|
|
|
10
10
|
## Gate 0: the research map (always, before Gate 1)
|
|
11
11
|
|
|
12
|
-
Check for `{output_folder}/design-state.yaml` (default `_wizz-output/`). Cheap check first: `grep -c 'status: open'`.
|
|
12
|
+
Check for `{output_folder}/design-state.yaml` (default `_wizz-output/`). Cheap check first: `grep -c 'status: open'`. Not there? Run `find . -name design-state.yaml -not -path '*/node_modules/*'` before concluding it does not exist: a map found elsewhere is still the map, so use it and tell the user it is off-place.
|
|
13
13
|
|
|
14
14
|
- **It exists, with open needs:** you are not deciding what to research. Work **one need per pass**, in the order given, and take `query`, `budget.fontes` and `floor` as given. Read the `proibidos` block before writing any query: a query that lands on a forbidden capability is not run, not even for comparison. Write each finding back under `discoveries` with the `need` id, and move the need to `selected` or `unmet` with a reason. Stop when the needs are exhausted, not when the ideas are.
|
|
15
15
|
- **It exists, no open needs:** the map is done. Do not open new research on your own: report it and hand back to `wizz-design-needs` if something is genuinely missing.
|
|
@@ -74,7 +74,7 @@ This gate does NOT fire for an open-scope request. "My site is bad, sort it out"
|
|
|
74
74
|
|
|
75
75
|
**And the counterpart has one exception: a single entry already delimits the scope.** If the whole outcome being asked for fits the `when:` of ONE catalogue entry, and what leaves at the end is that entry's own deliverable — a plan, a recommendation, an audit — then the scope is not open, the catalogue delimited it, and the request goes to that entry's area. "A plan to reduce churn" is `wizz-churn-prevention`; "I want ChatGPT and Perplexity to cite us" is `wizz-ai-seo`; "what to check before going live" is `site-launch-kit`. It stops being the exception the moment delivering the outcome means changing what other areas own: "improve the signup conversion rate" ends up in copy, UI and code, so it comes back to the maestro through the area clause. Ask which single entry would deliver it whole — if it takes two, the scope really is open. (Owner's decision, 2026-09-18.)
|
|
76
76
|
|
|
77
|
-
**Changing the product's code is `dev`, even when the subject is visual.** "Adjust the secondary button's colour", "fix the mobile spacing": the delivery is a commit, so it is the dev area — `designer` decides what the look should be, it does not ship the change. Ask which artifact leaves at the end: a file in the repo → dev; a decision, a spec or a piece of art → the area that owns it.
|
|
77
|
+
**Changing the product's code is `dev`, even when the subject is visual.** "Adjust the secondary button's colour", "fix the mobile spacing": the delivery is a commit, so it is the dev area — `designer` decides what the look should be, it does not ship the change. Ask which artifact leaves at the end: a file in the repo → dev; a decision, a spec or a piece of art → the area that owns it. **Exception: new or rebuilt screens.** When the request asks to BUILD screens in code (a new app, page, dashboard or panel, or a whole screen rebuilt in the product), the visual decision has not been made yet, so `designer` comes first and the sequence is design → dev (2 areas → maestro): the designer runs its research gate before any screen is coded. A tweak to an existing screen (a price, a label, a spacing) stays dev, and redesigning a section with no build asked for (a hero, a card) stays designer.
|
|
78
78
|
|
|
79
79
|
**The area count includes what `rel` drags, when the related capability shapes the SAME deliverable.** Before deciding "1 area", look at the `rel` of the entry that matched, and ask of each edge: **would the thing I am about to hand over be incomplete without this?** — not "is this related?". Writing the copy of a sales page without the offer and without the conversion structure delivers half a page: offer, copy and conversion are the same artifact, so that is 2 areas, hence maestro. What does NOT count is an adjacent capability that would produce a **different** artifact: a plain text post for LinkedIn does not need video capture just because `wizz-social-content` declares `before: [get-brolls]` — the b-roll would be another deliverable, not part of this one. `pairs_with` alone never escalates: it is neighbourhood, not dependency. Every edge is reciprocal by construction (the schema validator rejects one-way edges), so the relation shows up whichever side the user enters from. Resolve id → area via the `ids:` map in `{project-root}/_wizz/_config/registry/index.yaml`; outside a Wizz project, via `skills-registry.yaml` itself.
|
|
80
80
|
|