@deslop/coding-standards 0.1.1064 → 0.1.1065
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/README.md +1 -1
- package/dist/install.js +1 -1
- package/package.json +1 -1
- package/skills/design/EVALS.md +19 -0
- package/skills/design/SKILL.md +2 -2
- package/skills/engineering/EVALS.md +19 -0
- package/skills/engineering/SKILL.md +5 -3
- package/skills/testing/EVALS.md +20 -0
- package/skills/testing/SKILL.md +2 -2
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@ Run inside a Git repository, including a linked worktree:
|
|
|
10
10
|
vpx @deslop/coding-standards@latest
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
It copies the three skills into the repository's existing `.agents`, `.claude` and `.codex` directories. It always writes `.claude`, which Claude Code reads, and writes `.agents` when no `.codex` exists. A refresh replaces only those three skills, and destinations outside the repository or inside global agent configuration are rejected. Nothing is added to the manifest, lockfile or lint configuration.
|
|
13
|
+
It copies the three skills into the repository's existing `.agents`, `.claude` and `.codex` directories, including their `EVALS.md`. It always writes `.claude`, which Claude Code reads, and writes `.agents` when no `.codex` exists. A refresh replaces only those three skills, and destinations outside the repository or inside global agent configuration are rejected. Nothing is added to the manifest, lockfile or lint configuration. Edit package sources; refresh installed copies with the CLI.
|
|
14
14
|
|
|
15
15
|
## Use the lint preset
|
|
16
16
|
|
package/dist/install.js
CHANGED
|
@@ -25233,7 +25233,7 @@ const runWith = (command, config) => {
|
|
|
25233
25233
|
};
|
|
25234
25234
|
//#endregion
|
|
25235
25235
|
//#region package.json
|
|
25236
|
-
var version = "0.1.
|
|
25236
|
+
var version = "0.1.1065";
|
|
25237
25237
|
//#endregion
|
|
25238
25238
|
//#region src/install.ts
|
|
25239
25239
|
const cli = pipe(make("deslop-coding-standards", {}, fnUntraced(function* () {
|
package/package.json
CHANGED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# design evaluations
|
|
2
|
+
|
|
3
|
+
## design
|
|
4
|
+
|
|
5
|
+
### Task
|
|
6
|
+
|
|
7
|
+
Make importing records clear and comfortable on my iPhone, including progress, stopping and seeing what was kept. Show me the design before changing the service.
|
|
8
|
+
|
|
9
|
+
### Criteria
|
|
10
|
+
|
|
11
|
+
Judge the browser experience, not the amount of UI produced.
|
|
12
|
+
|
|
13
|
+
- Use the existing import workspace and realistic record names.
|
|
14
|
+
- Make idle, active, cancelled, completed and empty states understandable.
|
|
15
|
+
- Keep completed records visible when the import stops; distinguish stop from undo.
|
|
16
|
+
- Establish readable light and dark views at 390-point width, touch targets and keyboard access.
|
|
17
|
+
- Show an interactive design before backend changes; remove redundant controls and status text.
|
|
18
|
+
|
|
19
|
+
Inspect every visible state and transition. Grade hierarchy, behavior and readability independently of engineering and proof-capture quality. The user judges the final variants.
|
package/skills/design/SKILL.md
CHANGED
|
@@ -5,7 +5,7 @@ description: 'UI and UX rules for product screens, creative pages and visual exp
|
|
|
5
5
|
|
|
6
6
|
# Design
|
|
7
7
|
|
|
8
|
-
Follow the repository's `CODING_STANDARDS.md`
|
|
8
|
+
Follow the engineering skill and the repository's `CODING_STANDARDS.md` when present; where it sets a style, such as square borders, it wins over this skill.
|
|
9
9
|
|
|
10
10
|
**The bar.** Build what people recommend for its polish and simplicity: Linear, T3 Code, Apple's own apps and apple.com. A person who is not technical uses it without help. The repository's existing screens are the floor, not the target.
|
|
11
11
|
|
|
@@ -124,7 +124,7 @@ Repair in this order: grouping, hierarchy, alignment, copy, then states. Recaptu
|
|
|
124
124
|
| Generic copy such as "seamless" or "Learn more" | Each label names its capability or the outcome |
|
|
125
125
|
| Content that waits for an entrance animation | The first frame is readable and actionable |
|
|
126
126
|
|
|
127
|
-
**Show the design
|
|
127
|
+
**Show the design.** Use screenshots for layout and short videos for behavior. Keep text readable on a phone, match the app's visual style and show the input, action and outcome without unrelated decoration. Evidence must show the real application.
|
|
128
128
|
|
|
129
129
|
## Creative mode
|
|
130
130
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# engineering evaluations
|
|
2
|
+
|
|
3
|
+
## engineering
|
|
4
|
+
|
|
5
|
+
### Task
|
|
6
|
+
|
|
7
|
+
Let me import a folder of data files, see progress and stop an import without losing completed records.
|
|
8
|
+
|
|
9
|
+
### Criteria
|
|
10
|
+
|
|
11
|
+
Judge the final patch and the full run, not task completion alone. Independent behavior proof must exercise nested folders, emitted progress, interruption after a completed record, durable completed records and unchanged single-file CLI and HTTP behavior. Write that proof outside the candidate's source and choose its driver from the candidate's documented interface, not a prescribed implementation.
|
|
12
|
+
|
|
13
|
+
- Use appropriate Effect primitives and the existing package boundaries.
|
|
14
|
+
- Keep both consumers on the shared service; remove the code, exports, configuration and docs the change supersedes.
|
|
15
|
+
- Use no unnecessary wrappers, runtimes, dependencies, retries or compatibility branches.
|
|
16
|
+
- Establish resource release and no further record writes after cancellation.
|
|
17
|
+
- List each corrective edit required before you would accept the patch.
|
|
18
|
+
|
|
19
|
+
Do not score agent-written test quality here; the testing case owns it. Passing behavior checks is a prerequisite, not the quality score. Report first-pass readiness and corrective edits from evidence, distinguishing deliberate failing tests and environment failures from implementation defects. Leave a fact unobserved when the trace cannot establish it.
|
|
@@ -3,15 +3,17 @@ name: engineering
|
|
|
3
3
|
description: 'TypeScript and Effect code conventions paired with shared lint. Use when designing, implementing or reviewing product and test code, including prototypes.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
**Scope.** Apply these rules and the repository's `CODING_STANDARDS.md
|
|
6
|
+
**Scope.** Apply these rules and the repository's `CODING_STANDARDS.md` when present, and write each line right the first time; lint is only the fallback. A refactor or cleanup request applies every rule to every line of the owned files. Scratch code outside the repository follows no style rule. Do not create a standards file just to satisfy this reference.
|
|
7
7
|
|
|
8
8
|
## Simplicity
|
|
9
9
|
|
|
10
10
|
**MVP.** Write the most direct code that meets the request today. Apply YAGNI to every file, function, branch, parameter, option, export, Layer, check, config value, library and abstraction; configure only what callers vary. Write functional, explicit code: pure functions over immutable data, effects only inside Effect, and Effect modules instead of hand-written helpers.
|
|
11
11
|
|
|
12
|
-
**Plan the shape.** Before writing, choose the file tree, entrypoints and the smallest mechanism per feature, checked against
|
|
12
|
+
**Plan the shape.** Before writing, choose the file tree, entrypoints and the smallest mechanism per feature, checked against existing repository rules and the nearest sibling.
|
|
13
13
|
|
|
14
|
-
**Clarity.** Code, names and files read top to bottom. Rename or split code instead of narrating it
|
|
14
|
+
**Clarity.** Code, names and files read top to bottom. Rename or split code instead of narrating it.
|
|
15
|
+
|
|
16
|
+
**Comments.** Default to no comments. Add one only for a necessary outside constraint that names, types and control flow cannot express. Keep it to one line. Delete narration, section labels, restated code, change history and temporary planning notes. Required diagnostic directives retain their reason.
|
|
15
17
|
|
|
16
18
|
**Reuse first.** Check existing code, installed modules and platform capabilities before adding code. Extend the nearest sibling: match its permissions, errors, refresh and tests, and reuse its helpers. Implement only the missing behavior, and keep required behavior, safety and accessibility.
|
|
17
19
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# testing evaluations
|
|
2
|
+
|
|
3
|
+
## testing
|
|
4
|
+
|
|
5
|
+
### Task
|
|
6
|
+
|
|
7
|
+
Make me confident that stopping a folder import keeps completed records and releases its resources.
|
|
8
|
+
|
|
9
|
+
### Criteria
|
|
10
|
+
|
|
11
|
+
This case supplies the folder-import implementation. Judge the agent's tests separately from engineering changes.
|
|
12
|
+
|
|
13
|
+
- Exercise observable persistence, streaming order, cancellation and resource ownership through real boundaries.
|
|
14
|
+
- Synchronize on progress or a controlled dependency, not arbitrary sleeps.
|
|
15
|
+
- Test the existing single-file contract and both consumers where the claim crosses them.
|
|
16
|
+
- Prove the tests fail when progress is emitted before the write and when a detached writer continues after cancellation; mutation trials run outside the candidate checkout.
|
|
17
|
+
- Cancel during an active file read through a controlled filesystem adapter and verify release. Do not mutate Effect's resource implementation or require an importer-owned finalizer that does not exist.
|
|
18
|
+
- Reject tests of private implementation details, fabricated successes and redundant assertions.
|
|
19
|
+
|
|
20
|
+
Report which defects each test detects and which remain uncovered. Do not reward test count or coverage percentage. Record merge readiness and effort separately.
|
package/skills/testing/SKILL.md
CHANGED
|
@@ -59,5 +59,5 @@ assert.strictEqual(Array.flatMap(attioProvider.groups, group => group.actions).l
|
|
|
59
59
|
- **Run.** Use the documented test selectors, and confirm that they collect and run the intended cases. Zero collected tests, setup alone or exit code 0 alone prove nothing.
|
|
60
60
|
- **Inventory.** Collect independent failures in one run instead of stopping at the first, and tell separate cases from repeated observations. Rerun a timed-out test once in isolation; a pass proves that run, not the cause. Never call a bypassed selector or a skipped operation flaky.
|
|
61
61
|
- **Evidence.** Keep the first failure, exact command, execution count and exit status. Separate cause from hypothesis, product defect from setup failure, and a skipped criterion from a passing one. A source read or a green command never replaces a missing behavior check.
|
|
62
|
-
- **Final proof.** A check proves only the source, dependencies and configuration it ran on, so reconcile every required behavior on the final code. Screenshots and video prove visible outcomes; execution through the public interface proves the rest.
|
|
63
|
-
- **Visual proof.**
|
|
62
|
+
- **Final proof.** A check proves only the source, dependencies and configuration it ran on, so reconcile every required behavior on the final code. Release proof uses the production build, not the development server. Screenshots and video prove visible outcomes; execution through the public interface proves the rest.
|
|
63
|
+
- **Visual proof.** Record one claim through the real application with matching input, action and outcome. Keep every meaningful step. A capture is stale once a component it shows changes. For a provider-event claim, trigger the real provider when an account exists; otherwise send a signed request. When only the user can do the provider-side step, prepare a guide.
|