Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 13 additions & 5 deletions .agents/skills/track-framework-updates/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,12 +107,20 @@ For each release or RFC that plausibly needs SDK work, draft one concrete, actio

### Step 6: Write output artifacts

Produce **three files** in the skill's `output/` directory:
The `collect_updates.py` script in Step 1 prints its output path, e.g.:

1. **`output/framework-updates-raw.json`** — already written by Step 1.
2. **`output/framework-updates-digest.json`** — structured, machine-readable digest. Follow the schema in `assets/digest-schema.json`.
3. **`output/framework-updates-digest.md`** — human-readable digest. Follow the structure in `assets/digest-template.md`:
- Group by Client-Side / Server-Side / Meta-Framework.
```
Wrote /abs/path/to/.agents/skills/track-framework-updates/output/framework-updates-raw.json: ...
```

Use that printed path to derive the output directory. All three files must be written to the **same directory** as `framework-updates-raw.json` — never relative paths like `output/` from the workspace root.

Produce **three files**:

1. The raw JSON was already written by Step 1 — no action needed.
2. **`<output-dir>/framework-updates-digest.json`** — structured, machine-readable digest. Follow the schema in `assets/digest-schema.json`.
3. **`<output-dir>/framework-updates-digest.md`** — human-readable digest. Follow the structure in `assets/digest-template.md`:
- Group by Client-Side / Server-Side / Meta-Framework / Platform / Libraries.
- Omit frameworks with no activity.
- Include a "Run notes" section only if a fetcher reported errors.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
from __future__ import annotations

import json
import os
import sys


Expand Down Expand Up @@ -85,8 +86,20 @@ def main() -> int:
digest = f.read().strip()
if digest:
lines.append(digest)
except OSError:
lines.append("_Digest file not found._")
except OSError as e:
lines.append(f"_Digest file not found: `{digest_path}` ({e})_")
lines.append("")
# List what is actually in the output dir to help diagnose path mismatches
output_dir = os.path.dirname(os.path.abspath(digest_path))
try:
found = os.listdir(output_dir)
if found:
lines.append(f"Files present in `{output_dir}`:")
lines.extend(f"- `{name}`" for name in sorted(found))
else:
lines.append(f"`{output_dir}` exists but is empty.")
except OSError:
lines.append(f"Output directory not found: `{output_dir}`")

# Run metrics at the bottom
cost_str = (
Expand Down
Loading