@olegkoval/agent-skills 1.59.2 → 1.59.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/.github/copilot-instructions.md +1 -0
- package/.github/prompts/ingest-publication-slice.prompt.md +43 -0
- package/.kiro/steering/ingest-publication-slice.md +42 -0
- package/.windsurf/rules/ingest-publication-slice.md +41 -0
- package/README.md +4 -2
- package/adapters/claude/olko-product/skills/ingest-publication-slice/SKILL.md +44 -0
- package/adapters/codex/olko-product/README.md +1 -0
- package/adapters/cursor/olko-product/skills/ingest-publication-slice/SKILL.md +44 -0
- package/adapters/grok/olko-product/skills/ingest-publication-slice/SKILL.md +44 -0
- package/adapters/hermes/olko-product/README.md +1 -0
- package/catalog/skills.json +22 -0
- package/package.json +1 -1
- package/plugins/olko-apple-kit/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-creative/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-garmin-kit/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-git-tools/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-github-pr/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-obsidian/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-product/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-product/skills/ingest-publication-slice/SKILL.md +43 -0
- package/plugins/olko-reflection/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-release/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-skill-meta/.claude-plugin/plugin.json +1 -1
- package/plugins/olko-web-ops/.claude-plugin/plugin.json +1 -1
- package/scripts/lib/catalog.mjs +1 -1
|
@@ -31,6 +31,7 @@ Available reusable prompt files:
|
|
|
31
31
|
- release-day: .github/prompts/release-day.prompt.md
|
|
32
32
|
- changelog-generator: .github/prompts/changelog-generator.prompt.md
|
|
33
33
|
- store-listing-copy: .github/prompts/store-listing-copy.prompt.md
|
|
34
|
+
- ingest-publication-slice: .github/prompts/ingest-publication-slice.prompt.md
|
|
34
35
|
- product-builder: .github/prompts/product-builder.prompt.md
|
|
35
36
|
- mvp-oneshot: .github/prompts/mvp-oneshot.prompt.md
|
|
36
37
|
- ux-ui-audit-loop: .github/prompts/ux-ui-audit-loop.prompt.md
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
description: "Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Use the olko:ingest-publication-slice skill.
|
|
8
|
+
|
|
9
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
10
|
+
|
|
11
|
+
# Ingest Publication Slice
|
|
12
|
+
|
|
13
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
14
|
+
|
|
15
|
+
## Define the contract
|
|
16
|
+
|
|
17
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
18
|
+
|
|
19
|
+
Write acceptance criteria for one complete slice:
|
|
20
|
+
|
|
21
|
+
- Only a completed, validated active dataset can be published.
|
|
22
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
23
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
24
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
25
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
26
|
+
|
|
27
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
28
|
+
|
|
29
|
+
## Implement test-first
|
|
30
|
+
|
|
31
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
32
|
+
|
|
33
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
34
|
+
2. A failure between writes leaves neither half committed.
|
|
35
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
36
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
37
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
38
|
+
|
|
39
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
40
|
+
|
|
41
|
+
## Verify the composed path
|
|
42
|
+
|
|
43
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
inclusion: manual
|
|
5
|
+
description: "Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence."
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
9
|
+
|
|
10
|
+
# Ingest Publication Slice
|
|
11
|
+
|
|
12
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
13
|
+
|
|
14
|
+
## Define the contract
|
|
15
|
+
|
|
16
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
17
|
+
|
|
18
|
+
Write acceptance criteria for one complete slice:
|
|
19
|
+
|
|
20
|
+
- Only a completed, validated active dataset can be published.
|
|
21
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
22
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
23
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
24
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
25
|
+
|
|
26
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
27
|
+
|
|
28
|
+
## Implement test-first
|
|
29
|
+
|
|
30
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
31
|
+
|
|
32
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
33
|
+
2. A failure between writes leaves neither half committed.
|
|
34
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
35
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
36
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
37
|
+
|
|
38
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
39
|
+
|
|
40
|
+
## Verify the composed path
|
|
41
|
+
|
|
42
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
description: "Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
8
|
+
|
|
9
|
+
# Ingest Publication Slice
|
|
10
|
+
|
|
11
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
12
|
+
|
|
13
|
+
## Define the contract
|
|
14
|
+
|
|
15
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
16
|
+
|
|
17
|
+
Write acceptance criteria for one complete slice:
|
|
18
|
+
|
|
19
|
+
- Only a completed, validated active dataset can be published.
|
|
20
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
21
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
22
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
23
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
24
|
+
|
|
25
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
26
|
+
|
|
27
|
+
## Implement test-first
|
|
28
|
+
|
|
29
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
30
|
+
|
|
31
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
32
|
+
2. A failure between writes leaves neither half committed.
|
|
33
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
34
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
35
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
36
|
+
|
|
37
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
38
|
+
|
|
39
|
+
## Verify the composed path
|
|
40
|
+
|
|
41
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@ These skills are opinionated by design. They encode working defaults, preferred
|
|
|
32
32
|
|
|
33
33
|
## Start here
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
Eleven skills across different plugins that cover the most common jobs. Full catalog is below.
|
|
36
36
|
|
|
37
37
|
| What you're doing | Skill | Key principle |
|
|
38
38
|
|--------------------|-------|----------------|
|
|
@@ -43,6 +43,7 @@ Ten skills across different plugins that cover the most common jobs. Full catalo
|
|
|
43
43
|
| Closing out a finished piece of work | [wrap-up](plugins/olko-reflection/skills/wrap-up/SKILL.md) (`olko:wrap-up`) | Verify the objective and propose safe cleanup |
|
|
44
44
|
| Running a recurring engineering retrospective | [retro-analysis](plugins/olko-reflection/skills/retro-analysis/SKILL.md) (`olko:retro-analysis`) | Evidence from delivery and code, not vibes |
|
|
45
45
|
| Going from idea to a shippable MVP | [mvp-oneshot](plugins/olko-product/skills/mvp-oneshot/SKILL.md) (`olko:mvp-oneshot`) | Scope for one week, not the whole roadmap |
|
|
46
|
+
| Publishing validated ingested data immediately | [ingest-publication-slice](plugins/olko-product/skills/ingest-publication-slice/SKILL.md) (`olko:ingest-publication-slice`) | Test the atomic write, fallback read, and artifact precedence end to end |
|
|
46
47
|
| Ramping up on an unfamiliar codebase fast | [crash-course](plugins/olko-reflection/skills/crash-course/SKILL.md) (`olko:crash-course`) | Source-grounded, timed, and testable |
|
|
47
48
|
| Cutting a release from ready-code to submitted-build | [release-day](plugins/olko-release/skills/release-day/SKILL.md) (`olko:release-day`) | One orchestrated pass, not five manual steps |
|
|
48
49
|
| Starting the workday with the queue synced | [morning-routine](plugins/olko-obsidian/skills/morning-routine/SKILL.md) (`olko:morning-routine`) | Chain the routines instead of running them separately |
|
|
@@ -264,7 +265,7 @@ Ship a release: semantic-release setup, changelogs, store listing copy, release-
|
|
|
264
265
|
| [changelog-generator](plugins/olko-release/skills/changelog-generator/SKILL.md) | Transforms git commits into polished user-facing changelogs by categorising changes and rewriting technical commit messages | Preparing release notes, a CHANGELOG entry, or "what changed since the last release"; for setting up the release pipeline itself use semantic-release-beta |
|
|
265
266
|
| [store-listing-copy](plugins/olko-release/skills/store-listing-copy/SKILL.md) | Generates platform-validated App Store, Google Play, and Connect IQ store listing copy (title, subtitle, description, what's new, keywords) from a git changelog | Writing store copy before submitting to apple-store-submit or the garmin-watchface store workflow |
|
|
266
267
|
|
|
267
|
-
### olko-product (
|
|
268
|
+
### olko-product (7)
|
|
268
269
|
|
|
269
270
|
Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.
|
|
270
271
|
|
|
@@ -275,6 +276,7 @@ Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/U
|
|
|
275
276
|
| [ux-ui-audit-loop](plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md) | Audits and improves a web UI through browser evidence, severity triage, minimal fixes, and before/after verification | The user says "audit this UI", "fix the UX", "review this page visually", "make this page polished", or asks for an autonomous screenshot-and-fix loop |
|
|
276
277
|
| [frontend-direction](plugins/olko-product/skills/frontend-direction/SKILL.md) | Chooses a distinctive, coherent visual direction and source-backed components before writing frontend code | Building a new page or a substantial UI redesign, or making an interface less generic; small fixes keep the existing design |
|
|
277
278
|
| [starter-rules](plugins/olko-product/skills/starter-rules/SKILL.md) | Loads and enforces hard rules for every oleg-koval/* starter | Ensuring 300-line files, E2E tests, pre-commit hooks, Vertical Slice architecture, and KISS/DRY/SOLID |
|
|
279
|
+
| [ingest-publication-slice](plugins/olko-product/skills/ingest-publication-slice/SKILL.md) | Builds a test-first ingest-to-publication path with atomic persistence, read fallback, and static artifact precedence | Publishing validated ingested data before a static artifact exists |
|
|
278
280
|
| [viral-launch](plugins/olko-product/skills/viral-launch/SKILL.md) | Sets up a project repository and launch plan for shareable marketing, public launch readiness, and growth loops | Preparing a repo, product, or package for public launch ("prep for Product Hunt", "write the launch post", "make this shareable"); for building the thing itself use mvp-oneshot or product-builder |
|
|
279
281
|
|
|
280
282
|
### olko-skill-meta (8)
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ingest-publication-slice
|
|
3
|
+
description: Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence.
|
|
4
|
+
source: weekly-pattern-learner
|
|
5
|
+
source_reason: "Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence."
|
|
6
|
+
source_date: "2026-10-24"
|
|
7
|
+
---
|
|
8
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
9
|
+
|
|
10
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
11
|
+
|
|
12
|
+
# Ingest Publication Slice
|
|
13
|
+
|
|
14
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
15
|
+
|
|
16
|
+
## Define the contract
|
|
17
|
+
|
|
18
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
19
|
+
|
|
20
|
+
Write acceptance criteria for one complete slice:
|
|
21
|
+
|
|
22
|
+
- Only a completed, validated active dataset can be published.
|
|
23
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
24
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
25
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
26
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
27
|
+
|
|
28
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
29
|
+
|
|
30
|
+
## Implement test-first
|
|
31
|
+
|
|
32
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
33
|
+
|
|
34
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
35
|
+
2. A failure between writes leaves neither half committed.
|
|
36
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
37
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
38
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
39
|
+
|
|
40
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
41
|
+
|
|
42
|
+
## Verify the composed path
|
|
43
|
+
|
|
44
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Use the canonical skills directly:
|
|
6
6
|
|
|
7
|
+
- `plugins/olko-product/skills/ingest-publication-slice/SKILL.md`
|
|
7
8
|
- `plugins/olko-product/skills/product-builder/SKILL.md`
|
|
8
9
|
- `plugins/olko-product/skills/mvp-oneshot/SKILL.md`
|
|
9
10
|
- `plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md`
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ingest-publication-slice
|
|
3
|
+
description: Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence.
|
|
4
|
+
source: weekly-pattern-learner
|
|
5
|
+
source_reason: "Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence."
|
|
6
|
+
source_date: "2026-10-24"
|
|
7
|
+
---
|
|
8
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
9
|
+
|
|
10
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
11
|
+
|
|
12
|
+
# Ingest Publication Slice
|
|
13
|
+
|
|
14
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
15
|
+
|
|
16
|
+
## Define the contract
|
|
17
|
+
|
|
18
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
19
|
+
|
|
20
|
+
Write acceptance criteria for one complete slice:
|
|
21
|
+
|
|
22
|
+
- Only a completed, validated active dataset can be published.
|
|
23
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
24
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
25
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
26
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
27
|
+
|
|
28
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
29
|
+
|
|
30
|
+
## Implement test-first
|
|
31
|
+
|
|
32
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
33
|
+
|
|
34
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
35
|
+
2. A failure between writes leaves neither half committed.
|
|
36
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
37
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
38
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
39
|
+
|
|
40
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
41
|
+
|
|
42
|
+
## Verify the composed path
|
|
43
|
+
|
|
44
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ingest-publication-slice
|
|
3
|
+
description: Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence.
|
|
4
|
+
source: weekly-pattern-learner
|
|
5
|
+
source_reason: "Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence."
|
|
6
|
+
source_date: "2026-10-24"
|
|
7
|
+
---
|
|
8
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
9
|
+
|
|
10
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
11
|
+
|
|
12
|
+
# Ingest Publication Slice
|
|
13
|
+
|
|
14
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
15
|
+
|
|
16
|
+
## Define the contract
|
|
17
|
+
|
|
18
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
19
|
+
|
|
20
|
+
Write acceptance criteria for one complete slice:
|
|
21
|
+
|
|
22
|
+
- Only a completed, validated active dataset can be published.
|
|
23
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
24
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
25
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
26
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
27
|
+
|
|
28
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
29
|
+
|
|
30
|
+
## Implement test-first
|
|
31
|
+
|
|
32
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
33
|
+
|
|
34
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
35
|
+
2. A failure between writes leaves neither half committed.
|
|
36
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
37
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
38
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
39
|
+
|
|
40
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
41
|
+
|
|
42
|
+
## Verify the composed path
|
|
43
|
+
|
|
44
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
Run `./scripts/install-hermes-symlinks.sh` from the repository root to link these skills
|
|
6
6
|
into the active Hermes profile. The canonical packages are:
|
|
7
7
|
|
|
8
|
+
- `plugins/olko-product/skills/ingest-publication-slice/SKILL.md`
|
|
8
9
|
- `plugins/olko-product/skills/product-builder/SKILL.md`
|
|
9
10
|
- `plugins/olko-product/skills/mvp-oneshot/SKILL.md`
|
|
10
11
|
- `plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md`
|
package/catalog/skills.json
CHANGED
|
@@ -514,6 +514,28 @@
|
|
|
514
514
|
"name": "olko-product",
|
|
515
515
|
"description": "Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.",
|
|
516
516
|
"skills": [
|
|
517
|
+
{
|
|
518
|
+
"name": "ingest-publication-slice",
|
|
519
|
+
"lookupName": "olko:ingest-publication-slice",
|
|
520
|
+
"path": "plugins/olko-product/skills/ingest-publication-slice",
|
|
521
|
+
"description": "Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence.",
|
|
522
|
+
"tags": [
|
|
523
|
+
"ingest",
|
|
524
|
+
"publication",
|
|
525
|
+
"testing",
|
|
526
|
+
"workflow"
|
|
527
|
+
],
|
|
528
|
+
"adapters": [
|
|
529
|
+
"claude",
|
|
530
|
+
"codex",
|
|
531
|
+
"cursor",
|
|
532
|
+
"copilot",
|
|
533
|
+
"grok",
|
|
534
|
+
"windsurf",
|
|
535
|
+
"kiro",
|
|
536
|
+
"hermes"
|
|
537
|
+
]
|
|
538
|
+
},
|
|
517
539
|
{
|
|
518
540
|
"name": "product-builder",
|
|
519
541
|
"lookupName": "olko:product-builder",
|
package/package.json
CHANGED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ingest-publication-slice
|
|
3
|
+
description: Build and verify a small end-to-end publication path for validated ingested data, including atomic persistence, read fallback, and static artifact precedence.
|
|
4
|
+
source: weekly-pattern-learner
|
|
5
|
+
source_reason: "Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence."
|
|
6
|
+
source_date: "2026-10-24"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
> 🤖 *Auto-generated by **weekly-pattern-learner** · Repeatedly implement a validated ingest-to-publication flow with atomic persistence, fallback reads, and static artifact precedence.*
|
|
10
|
+
|
|
11
|
+
# Ingest Publication Slice
|
|
12
|
+
|
|
13
|
+
Use this workflow when an ingest pipeline must make a validated record available immediately while a static or cached publication artifact may be generated later.
|
|
14
|
+
|
|
15
|
+
## Define the contract
|
|
16
|
+
|
|
17
|
+
Before changing code, read the repository instructions and trace the current path from ingest entry point through validation, job completion, persistence, request handling, and static artifact generation. Record existing invariants and preserve unrelated work.
|
|
18
|
+
|
|
19
|
+
Write acceptance criteria for one complete slice:
|
|
20
|
+
|
|
21
|
+
- Only a completed, validated active dataset can be published.
|
|
22
|
+
- The persistent publication record and terminal ingest state commit atomically.
|
|
23
|
+
- The canonical read path can serve from the persistent record when no static artifact exists.
|
|
24
|
+
- A static artifact remains authoritative once present, if that is the established product contract.
|
|
25
|
+
- Retries are idempotent, and collisions, invalid states, hidden records, and takedowns cannot publish.
|
|
26
|
+
|
|
27
|
+
Adapt these criteria to the actual product contract. Do not invent a static-artifact precedence rule if the system has none.
|
|
28
|
+
|
|
29
|
+
## Implement test-first
|
|
30
|
+
|
|
31
|
+
Use the repository's required test command and style. Add focused failing tests before implementation for:
|
|
32
|
+
|
|
33
|
+
1. A valid ingest publishes the record and terminal state together.
|
|
34
|
+
2. A failure between writes leaves neither half committed.
|
|
35
|
+
3. The canonical read path uses the persisted record when the artifact is absent.
|
|
36
|
+
4. The artifact wins when both sources exist, when precedence is required.
|
|
37
|
+
5. Repeated delivery is safe and invalid, hidden, colliding, or withdrawn records stay unpublished.
|
|
38
|
+
|
|
39
|
+
Test the production boundary and transaction behavior, not only helper functions. Keep the change to the smallest vertical slice; avoid unrelated schema or routing refactors.
|
|
40
|
+
|
|
41
|
+
## Verify the composed path
|
|
42
|
+
|
|
43
|
+
Run the focused tests, then the repository's required broader checks. Inspect the final diff and trace the completed path again from ingest through the canonical response. Confirm behavior for retries, partial failures, and transitions from no artifact to artifact present. Report any unavailable integration or deployment evidence explicitly.
|
package/scripts/lib/catalog.mjs
CHANGED
|
@@ -20,7 +20,7 @@ export const PLUGIN_ASSIGNMENT = {
|
|
|
20
20
|
},
|
|
21
21
|
'olko-product': {
|
|
22
22
|
description: 'Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.',
|
|
23
|
-
skills: ['product-builder', 'mvp-oneshot', 'ux-ui-audit-loop', 'frontend-direction', 'starter-rules', 'viral-launch'],
|
|
23
|
+
skills: ['product-builder', 'mvp-oneshot', 'ux-ui-audit-loop', 'frontend-direction', 'starter-rules', 'viral-launch', 'ingest-publication-slice'],
|
|
24
24
|
},
|
|
25
25
|
'olko-skill-meta': {
|
|
26
26
|
description: 'Author and maintain agent skills and the AI toolchain itself.',
|