Back to Skills

impl-standards

verified

Core engineering standards during implementation. Use when implementing features, writing production code, or when user mentions error handling, constants management, progress logging, or code quality standards.

View on GitHub

Marketplace

cc-skills

terrylica/cc-skills

Plugin

itp

productivity

Repository

terrylica/cc-skills
8stars

plugins/itp/skills/impl-standards/SKILL.md

Last Verified

January 25, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/terrylica/cc-skills/blob/main/plugins/itp/skills/impl-standards/SKILL.md -a claude-code --skill impl-standards

Installation paths:

Claude
.claude/skills/impl-standards/
Powered by add-skill CLI

Instructions

# Implementation Standards

Apply these standards during implementation to ensure consistent, maintainable code.

## When to Use This Skill

- During `/itp:go` Phase 1
- When writing new production code
- User mentions "error handling", "constants", "magic numbers", "progress logging"
- Before release to verify code quality

## Quick Reference

| Standard         | Rule                                                                     |
| ---------------- | ------------------------------------------------------------------------ |
| **Errors**       | Raise + propagate; no fallback/default/retry/silent                      |
| **Constants**    | Abstract magic numbers into semantic, version-agnostic dynamic constants |
| **Dependencies** | Prefer OSS libs over custom code; no backward-compatibility needed       |
| **Progress**     | Operations >1min: log status every 15-60s                                |
| **Logs**         | `logs/{adr-id}-YYYYMMDD_HHMMSS.log` (nohup)                              |
| **Metadata**     | Optional: `catalog-info.yaml` for service discovery                      |

---

## Error Handling

**Core Rule**: Raise + propagate; no fallback/default/retry/silent

```python
# ✅ Correct - raise with context
def fetch_data(url: str) -> dict:
    response = requests.get(url)
    if response.status_code != 200:
        raise APIError(f"Failed to fetch {url}: {response.status_code}")
    return response.json()

# ❌ Wrong - silent catch
try:
    result = fetch_data()
except Exception:
    pass  # Error hidden
```

See [Error Handling Reference](./references/error-handling.md) for detailed patterns.

---

## Constants Management

**Core Rule**: Abstract magic numbers into semantic constants

```python
# ✅ Correct - named constant
DEFAULT_API_TIMEOUT_SECONDS = 30
response = requests.get(url, timeout=DEFAULT_API_TIMEOUT_SECONDS)

# ❌ Wrong - magic number
response = requests.get(url, timeout=30)
```

See [Constants Management Reference](./references/c

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
4007 chars