@ryuenn3123/agentic-senior-core 6.16.2 → 6.16.3
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/.agents/plugins/agentic-senior-core/.codex-plugin/plugin.json +1 -1
- package/.agents/plugins/agentic-senior-core/hooks/lib/known-ui-slop-patterns.json +20 -0
- package/.agents/plugins/agentic-senior-core/plugin.json +1 -1
- package/.agents/plugins/agentic-senior-core/rules/agentic-senior-core.md +5 -1
- package/.agents/plugins/agentic-senior-core/skills/asc-develop/SKILL.md +2 -2
- package/.agents/plugins/agentic-senior-core/skills/asc-review/SKILL.md +1 -1
- package/.agents/plugins/agentic-senior-core/skills/asc-ui/references/copy-i18n.md +56 -8
- package/gemini-extension.json +1 -1
- package/package.json +1 -1
- package/plugin.yaml +1 -1
|
@@ -139,6 +139,26 @@
|
|
|
139
139
|
"id": "ui-agency-micro-meta",
|
|
140
140
|
"regex": "(?:\\b\\d{1,2}\\.\\d+°\\s*[NSEW]\\b|©\\s*20\\d\\d\\s*—\\s*Scroll)",
|
|
141
141
|
"message": "note: performative agency metadata (geographic coordinates, fake version/scroll stamps) detected. Remove ornamental meta."
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"id": "copy-ai-buzzwords",
|
|
145
|
+
"regex": "\\b(seamlessly?|robust(?:ness)?|empowers?|supercharg(?:ed?|ing)|cutting-edge|next-generation|blazing-fast|effortlessly?)\\b",
|
|
146
|
+
"message": "note: generic AI buzzword detected ('seamless', 'robust', 'supercharge', 'cutting-edge'). Use plain operational verbs and concrete metrics."
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"id": "copy-cadence-tricolon",
|
|
150
|
+
"regex": "\\b[A-Z][a-z]+\\.\\s+[A-Z][a-z]+\\.\\s+[A-Z][a-z]+\\.",
|
|
151
|
+
"message": "note: tricolon cadence detected ('Word. Word. Word.'). State the capability or outcome directly instead of using advertising triplets."
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"id": "copy-cadence-rebuttal",
|
|
155
|
+
"regex": "\\b(Not (?:just )?a|More than a) \\w+[,.] (?:it's|a) \\w+\\b",
|
|
156
|
+
"message": "note: synthetic rebuttal cadence ('Not just a X, it\\'s a Y') detected. State what the system does directly without the false dichotomy."
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"id": "copy-filler-preamble",
|
|
160
|
+
"regex": "\\b(In today's (?:fast-paced|digital)|Built for (?:the )?modern teams?|Welcome to the)\\b",
|
|
161
|
+
"message": "note: AI preamble/filler detected ('In today\\'s fast-paced...', 'Built for modern teams'). Delete the introductory throat-clearing and lead with action."
|
|
142
162
|
}
|
|
143
163
|
]
|
|
144
164
|
}
|
|
@@ -42,7 +42,11 @@ When picking step 5 or 6 (unless trivial):
|
|
|
42
42
|
- Early returns over deep nesting (keep happy path flat).
|
|
43
43
|
- Three similar lines is better than a premature abstraction (duplication over wrong abstraction).
|
|
44
44
|
- Single design source of truth: UI styling must reuse defined design tokens, theme variables, or existing page patterns. No ad-hoc palette, radius, or font deviations between pages.
|
|
45
|
-
-
|
|
45
|
+
- Human writing & prose hygiene: Functional communication is an operational tool, not marketing collateral. This applies to UI microcopy, READMEs, PR descriptions, and code comments alike:
|
|
46
|
+
- 50% reduction rule: Write the statement, then cut unnecessary words. Replace ornamental adjectives with measurable facts (not "a robust, blazing-fast parser", write "parses 50MB/s with zero heap allocations").
|
|
47
|
+
- Ban AI cadences: Never use the Tricolon ("Fast. Simple. Secure."), the Mad-Lib ("The AI-powered platform for modern teams"), the Rebuttal ("Not just a tool, it's a workflow"), or conversational throat-clearing ("In today's fast-paced landscape...").
|
|
48
|
+
- Buzzword blacklist: Never emit `seamless(ly)`, `robust`, `empower(ing)`, `supercharge`, `elevate`, `effortless(ly)`, `cutting-edge`, `delve`, `testament`, `pivotal`, `crucial`, `game-changing`, or `next-generation`.
|
|
49
|
+
- Strict single-language purity: Choose one language per document or surface. In Indonesian contexts, never prefix grammatical affixes to raw English stems (`di-submit`, `meng-generate`, `di-approve`, `me-restore`).
|
|
46
50
|
- Code comment hygiene: Zero decorative character banners (// =====), zero line-by-line narration (// Step 1: validate), zero empty category tags (// Main logic), and zero signature echoes in docstrings. Keep only comments that document non-obvious operational constraints, security boundaries, concurrency hazards, or protocol contracts.
|
|
47
51
|
- Delete code that carries no behavior, safety, or test value. Readability wins over brevity.
|
|
48
52
|
- Detect and respect project linter/formatter configs. Do not restate style rules enforced by tooling.
|
|
@@ -27,7 +27,7 @@ Use when creating a new application, service, or repository from zero.
|
|
|
27
27
|
- Can standard library or native platform handle it?
|
|
28
28
|
- Can this be one straightforward function?
|
|
29
29
|
2. Build the core domain entities, data models, and services first before protocol/transport controllers.
|
|
30
|
-
3. For frontend interfaces, follow the
|
|
30
|
+
3. For frontend interfaces, follow `/asc-ui`. For documentation and prose (READMEs, ADRs), enforce the Universal Prose Floor (zero AI throat-clearing, 50% word reduction, zero buzzwords).
|
|
31
31
|
4. Generate a quality gate workflow (e.g., `.github/workflows/quality-gate.yml`) that runs linter, type-check, and tests.
|
|
32
32
|
|
|
33
33
|
### Step 3: Validation
|
|
@@ -51,7 +51,7 @@ Use when adding endpoints, components, pages, or capabilities to an existing cod
|
|
|
51
51
|
- What happens on network/API failure or timeout?
|
|
52
52
|
- What feedback does the user see? (Pending state, inline field error, toast/banner with retry).
|
|
53
53
|
- How can the system recover? (Retry, cached fallback, degraded mode).
|
|
54
|
-
3. If building UI, ensure compliance with `/asc-ui` (zero marketing fluff, single-language consistency, mobile reflow, WCAG AA contrast).
|
|
54
|
+
3. If building UI or writing documentation, ensure compliance with the Universal Prose Floor and `/asc-ui` (zero marketing fluff, single-language consistency, mobile reflow, WCAG AA contrast).
|
|
55
55
|
|
|
56
56
|
### Step 3: Implement & Validate (TDD Integration)
|
|
57
57
|
1. Follow the TDD cycle via `/asc-test`: write the failing test first (RED), write minimal code to pass (GREEN), then refactor.
|
|
@@ -37,7 +37,7 @@ Use when reviewing PRs, diffs, commits, or newly written feature code.
|
|
|
37
37
|
- **Severity 1 (Critical)**: Correctness, data corruption, auth/permission bypass, security sinks, PII leakage.
|
|
38
38
|
- **Severity 2 (High)**: Action feedback failures (hanging spinners, unhandled mutations, missing error boundaries), unhandled async rejections, missing remote timeouts.
|
|
39
39
|
- **Severity 3 (Medium)**: Public contract drift, missing failure-path tests, architectural boundary violations.
|
|
40
|
-
- **Severity 4 (Low)**: Maintainability debt, performance micro-optimizations, code comment noise.
|
|
40
|
+
- **Severity 4 (Low)**: Maintainability debt, performance micro-optimizations, narrative code comment noise, AI prose cadence or buzzwords in user-facing copy or documentation.
|
|
41
41
|
|
|
42
42
|
---
|
|
43
43
|
|
|
@@ -29,11 +29,44 @@ Exception: Standard multi-step navigation controls in fixed wizards (`Back`, `Ne
|
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
|
-
## 3.
|
|
32
|
+
## 3. Arithmetic Copy Budgets & The Argument-First Protocol
|
|
33
|
+
|
|
34
|
+
### 3.1 Arithmetic Budgets
|
|
35
|
+
Constraint is arithmetic; enforce before falling in love with a sentence:
|
|
36
|
+
- **Hero Headline Budget:** Must fit in **two lines or fewer** across all viewports.
|
|
37
|
+
- Mobile (390px): $\le 32$ characters ($\sim 4$–$5$ words).
|
|
38
|
+
- Desktop (1280px): $\le 42$ characters ($\sim 5$–$6$ words).
|
|
39
|
+
- Use `text-wrap: balance` and intentional `<br>` tags to avoid single-word orphans.
|
|
40
|
+
- **Supporting Line Budget:** Exactly **1 sentence**, at most **22 words**.
|
|
41
|
+
- Directly states concrete function and audience.
|
|
42
|
+
- Never repeats or paraphrases headline words.
|
|
43
|
+
- **First-Viewport Word Budget:** Maximum **80 words** total across the first screen.
|
|
44
|
+
|
|
45
|
+
### 3.2 The Argument-First Protocol
|
|
46
|
+
Before writing any HTML/JSX markup, outline the page as a sequence of claims with verifiable proofs:
|
|
47
|
+
```text
|
|
48
|
+
1. Claim: Three-legged oak stool, made to order. → Proof: High-res macro photography of stool.
|
|
49
|
+
2. Claim: Each seat cut from single solid board. → Proof: 3 close-ups of continuous wood grain.
|
|
50
|
+
3. Claim: Shipped in 6 weeks with tracking. → Proof: Verifiable production stages schedule.
|
|
51
|
+
4. Claim: Costs $240, delivered by the maker. → Proof: Exact price figure + Order button.
|
|
52
|
+
```
|
|
53
|
+
*Rule:* Any section that lacks a factual claim or verifiable proof is filler—delete it immediately.
|
|
33
54
|
|
|
34
|
-
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 4. AI Cadences & Marketing Buzzword Blacklist
|
|
58
|
+
|
|
59
|
+
### 4.1 Banned AI Cadence Formulas
|
|
60
|
+
Language models fall into statistical average patterns; recognize and refuse them:
|
|
61
|
+
1. **The Mad-Lib:** *"The [AI-powered/next-gen] platform for modern teams."*
|
|
62
|
+
2. **The Tricolon:** *"Fast. Simple. Secure."* or *"Plan. Build. Ship."*
|
|
63
|
+
3. **The Rebuttal:** *"It’s not just a tool, it’s a workflow."* / *"More than a framework."*
|
|
64
|
+
4. **The Preamble Throat-Clearing:** *"In today’s fast-paced digital world..."* / *"Built for modern teams..."*
|
|
65
|
+
5. **The Em-Dash Habit:** Using multiple em-dashes (`—`) in a single paragraph. Use a full stop.
|
|
35
66
|
|
|
36
|
-
|
|
67
|
+
### 4.2 Banned Marketing Buzzwords
|
|
68
|
+
The following adjectives and verbs are banned across all surfaces:
|
|
69
|
+
`seamless`, `seamlessly`, `empower`, `empowering`, `robust`, `effortless`, `effortlessly`, `cutting-edge`, `game-changing`, `elevate`, `unlock`, `unleash`, `dive in`, `delightful`, `next-generation`, `supercharge`, `blazing-fast`.
|
|
37
70
|
|
|
38
71
|
When tempted to write an adjective, state the measurable property instead:
|
|
39
72
|
- Instead of: *"A robust, blazing-fast pipeline."*
|
|
@@ -41,16 +74,31 @@ When tempted to write an adjective, state the measurable property instead:
|
|
|
41
74
|
|
|
42
75
|
---
|
|
43
76
|
|
|
44
|
-
##
|
|
77
|
+
## 5. Actionable Error Messages & Recovery
|
|
78
|
+
|
|
79
|
+
An operational error message must never produce a dead end or display raw internal stack traces. Every error must answer three questions:
|
|
80
|
+
1. **What failed:** Direct statement of the blocked action.
|
|
81
|
+
2. **Why:** Factual cause (if actionable and known).
|
|
82
|
+
3. **How to recover:** Concrete button or path to unblock the user.
|
|
83
|
+
|
|
84
|
+
| Raw / Unhelpful Error | Actionable Engineering Copy | Recovery Path |
|
|
85
|
+
|---|---|---|
|
|
86
|
+
| "Error 413: Payload too large." | "File exceeds the 25MB limit." | "Choose a smaller file" CTA |
|
|
87
|
+
| "Failed to connect to server." | "Unable to reach database. Changes saved locally." | "Retry connection" button |
|
|
88
|
+
| "Invalid credentials." | "Incorrect password for user@example.com." | "Reset password →" link |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## 6. Single-Language Purity & Anti-Gado-Gado
|
|
45
93
|
|
|
46
94
|
Interfaces must maintain strict language purity. Mixing two languages within the same surface causes cognitive friction and feels unpolished.
|
|
47
95
|
|
|
48
|
-
###
|
|
96
|
+
### 6.1 Strict Monolingual Surface
|
|
49
97
|
Choose one language for the entire surface and enforce it across headings, labels, errors, and tooltips:
|
|
50
98
|
- **English UI:** All copy, actions, and timestamps in English.
|
|
51
99
|
- **Indonesian UI:** All copy, actions, and timestamps in standard Indonesian (KBBI/PUEBI).
|
|
52
100
|
|
|
53
|
-
###
|
|
101
|
+
### 6.2 Ban Hybrid Neologisms (Indonesian Context)
|
|
54
102
|
Never prefix Indonesian grammatical affixes (`di-`, `meng-`, `ter-`, `pe-`) onto raw English stems:
|
|
55
103
|
|
|
56
104
|
| Hybrid Neologism (Banned) | Standard Indonesian | Pure English Alternative |
|
|
@@ -66,14 +114,14 @@ Never prefix Indonesian grammatical affixes (`di-`, `meng-`, `ter-`, `pe-`) onto
|
|
|
66
114
|
|
|
67
115
|
---
|
|
68
116
|
|
|
69
|
-
##
|
|
117
|
+
## 7. Dynamic Text Expansion & Internationalization Layout
|
|
70
118
|
|
|
71
119
|
Text length varies drastically between languages:
|
|
72
120
|
- German and Dutch expand +20% to +35% compared to English.
|
|
73
121
|
- Indonesian expands +15% to +30% for verb-rich phrases.
|
|
74
122
|
- Japanese and Chinese are visually dense and vertically taller.
|
|
75
123
|
|
|
76
|
-
###
|
|
124
|
+
### 7.1 Layout Rules for Expanding Strings
|
|
77
125
|
1. **Never set fixed widths on action buttons:**
|
|
78
126
|
```html
|
|
79
127
|
<!-- BANNED: clips or overflows in German/Indonesian -->
|
package/gemini-extension.json
CHANGED
package/package.json
CHANGED
package/plugin.yaml
CHANGED