Skip to content
Open
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
2 changes: 2 additions & 0 deletions ACTOR_STORE_LISTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ Alternative:

## Publication Checklist

Use [`APIFY_STORE_OWNER_LAUNCH_RUNBOOK.md`](./APIFY_STORE_OWNER_LAUNCH_RUNBOOK.md) for the full account-owner launch checklist, cloud smoke test input, Store QA boundaries, and post-publication record.

- [x] Clear description.
- [x] Comprehensive README.
- [x] Working input schema.
Expand Down
90 changes: 90 additions & 0 deletions APIFY_STORE_OWNER_LAUNCH_RUNBOOK.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# Apify Store owner launch runbook

This runbook converts the existing Actor Store listing packet into an account-owner checklist. It is intentionally limited to repository-local and owner-controlled actions; it does not publish the Actor, configure monetization, or make payment decisions by itself.

## Preconditions

- Repository build passes locally with `npm run build`.
- Demo run passes locally with `npm run demo`.
- `.actor/actor.json`, `.actor/input_schema.json`, `Dockerfile`, and `.actor/README.md` are present.
- `ACTOR_STORE_LISTING.md` has been reviewed by the account owner.
- The account owner has an Apify account and is comfortable deciding visibility and pricing.

## Local verification before deploy

```bash
npm install
npm run build
npm run demo
npm run actor:local
```

Expected local artifacts:

- `output/leads.json` from the demo script.
- `storage/key_value_stores/default/OUTPUT.json` from the local Actor run.
- `storage/datasets/default/*.json` records from the local Actor run.

## Account-owner publishing checklist

These steps require the Apify account owner or an explicitly authorized operator:

1. Create or open the Actor in the Apify console.
2. Connect the source repository or upload the Actor source.
3. Confirm the Actor name/slug: `github-issue-scout`.
4. Confirm the title: `GitHub Issue Scout`.
5. Confirm the description matches `.actor/actor.json` and the Store listing packet.
6. Upload or select a logo/icon.
7. Run a cloud test using the default input schema.
8. Confirm the dataset and key-value store outputs match the local run shape.
9. Review `.actor/README.md` as the Store README.
10. Review `ACTOR_STORE_LISTING.md` for copy/paste fields.
11. Choose Store visibility.
12. Decide whether to keep the Actor free or enable monetization.
13. If monetizing, choose the pricing model in the Apify console; do not rely on this repository as a final pricing authority.
14. Publish the Actor.
15. Record the public Store URL in the GitHub issue or release notes after publication.

## Suggested first cloud smoke test input

```json
{
"queries": [
"bounty \"good first issue\" is:issue state:open comments:<10 updated:>2026-04-01"
],
"limit": 5,
"outputKey": "OUTPUT"
}
```

## Store QA checklist

Before publishing, verify that the Store page makes these boundaries clear:

- The Actor only reads public GitHub search result pages.
- The Actor does not comment on issues.
- The Actor does not claim bounties.
- The Actor does not open pull requests.
- The Actor does not authenticate into GitHub.
- Leads require manual review before action.
- Reward and bounty signals are heuristics, not payment guarantees.

## Post-publication record

After the account owner publishes the Actor, record:

- Store URL:
- Cloud test run URL:
- Pricing/visibility decision:
- Date published:
- First usage/revenue evidence, if any:

## No-go triggers

Do not publish or monetize until the account owner resolves any of these:

- Actor cloud run fails.
- Required logo/icon is missing.
- Store copy implies guaranteed bounty revenue or automated claiming.
- Output includes private data or account-only GitHub data.
- Payment, tax, or marketplace terms are unclear to the account owner.