Skip to content

Commit 3932af0

Browse files
committed
Address ninth review: populate catalog, fix indentation, priority, README
- Add speckit workflow entry to catalog.json so it's discoverable - Fix shell step output dict indentation - Catalog add_catalog priority derived from max existing + 1 - README Quick Start clarified with install + local file examples
1 parent 65092d4 commit 3932af0

4 files changed

Lines changed: 24 additions & 9 deletions

File tree

src/specify_cli/workflows/catalog.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,11 +467,13 @@ def add_catalog(self, url: str, name: str | None = None) -> None:
467467
f"Catalog URL already configured: {url}"
468468
)
469469

470+
# Derive priority from the highest existing priority + 1
471+
max_priority = max((cat.get("priority", 0) for cat in catalogs), default=0)
470472
catalogs.append(
471473
{
472474
"name": name or f"catalog-{len(catalogs) + 1}",
473475
"url": url,
474-
"priority": len(catalogs) + 1,
476+
"priority": max_priority + 1,
475477
"install_allowed": True,
476478
"description": "",
477479
}

src/specify_cli/workflows/steps/shell/__init__.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@ def execute(self, config: dict[str, Any], context: StepContext) -> StepResult:
3939
timeout=300,
4040
)
4141
output = {
42-
"exit_code": proc.returncode,
43-
"stdout": proc.stdout,
44-
"stderr": proc.stderr,
45-
}
42+
"exit_code": proc.returncode,
43+
"stdout": proc.stdout,
44+
"stderr": proc.stderr,
45+
}
4646
if proc.returncode != 0:
4747
return StepResult(
4848
status=StepStatus.FAILED,

workflows/README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,13 @@ For detailed architecture and internals, see [ARCHITECTURE.md](ARCHITECTURE.md).
3131
# Search available workflows
3232
specify workflow search
3333

34-
# Install a workflow from the catalog
34+
# Install the built-in SDD workflow
3535
specify workflow add speckit
3636

37-
# Run a workflow with inputs
37+
# Or run directly from a local YAML file
38+
specify workflow run ./workflow.yml --input feature_name="user-auth"
39+
40+
# Run an installed workflow with inputs
3841
specify workflow run speckit --input feature_name="user-auth"
3942

4043
# Check run status

workflows/catalog.json

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
{
22
"schema_version": "1.0",
3-
"updated_at": "2026-04-10T00:00:00Z",
3+
"updated_at": "2026-04-13T00:00:00Z",
44
"catalog_url": "https://raw.githubusercontent.com/github/spec-kit/main/workflows/catalog.json",
5-
"workflows": {}
5+
"workflows": {
6+
"speckit": {
7+
"id": "speckit",
8+
"name": "Full SDD Cycle",
9+
"description": "Runs specify \u2192 plan \u2192 tasks \u2192 implement with review gates",
10+
"author": "GitHub",
11+
"version": "1.0.0",
12+
"url": "https://raw.githubusercontent.com/github/spec-kit/main/workflows/speckit/workflow.yml",
13+
"tags": ["sdd", "full-cycle"]
14+
}
15+
}
616
}

0 commit comments

Comments
 (0)