pryscraper/.forgejo/ISSUE_TEMPLATE/feature.yml
cryptorugmunch bb77eb5f35 chore(license): re-license to dual MIT (core) + BSL 1.1 (stealth)
Re-license Pry from full Proprietary to a dual-license model:

- Core engine, extraction, templates (80+), MCP server, x402 payment rail,
  CLI, SDK, browser extension, WordPress plugin, Shopify app, and
  llm_providers: MIT (see LICENSE)
- Anti-detection / stealth subset (15 files): BSL 1.1 with Change Date
  2029-01-01 (see LICENSE-BSL-STEALTH)

BSL files (anti-detection moat):
  ultimate_scraper.py, stealth_engine.py, stealth_scripts/*.js (6),
  camoufox_integration.py, tls_fingerprint.py, cookie_warmer.py,
  behavioral_biometrics.py, adaptive.py, browser_pool.py, network.py,
  captcha_solver.py, shadow_dom.py, lazy_load.py, signup_automator.py,
  auth_connector.py

This enables community contributions to the core engine (templates,
integrations, MCP tools) while protecting the anti-detection techniques
that constitute the actual competitive moat. BSL Additional Use Grant
permits free non-production use; production deployment requires a
commercial license from enterprise@rugmunch.io.

Changes:
- Replace proprietary LICENSE with MIT LICENSE + new LICENSE-BSL-STEALTH
- Add SPDX-License-Identifier headers to 300+ source files
- Add docs/adr/0002-dual-licensing.md (ADR documenting the decision)
- Update README.md: new License section with BSL Additional Use Grant
- Update LICENSING_PRICING_STRATEGY.md: Section 3 (PryScraper) for dual license
- Update AGENTS.md: license line in header + new rule 8 (PRs touching BSL rejected)
- Update pyproject.toml: license = "MIT AND BSL-1.1" + classifiers + license-files
- Update DECISIONS.md index with ADR-0002
- Update STATUS.md (2026-07-03) and PLAN.md sprint goals

Refs: ADR-0002
2026-07-02 19:49:21 +02:00

87 lines
2.3 KiB
YAML

# SPDX-License-Identifier: MIT
# Copyright (c) 2026 Rug Munch Media LLC
# Part of Pry — https://git.rugmunch.io/RugMunchMedia/pryscraper
# Licensed under MIT. See LICENSE.
name: Feature Request
description: Propose a new feature or improvement
title: "[Feature]: "
labels: ["enhancement", "triage"]
body:
- type: markdown
attributes:
value: |
Use this for new features or improvements. For bugs, use the Bug Report template.
- type: dropdown
id: area
attributes:
label: Area
description: Which product / surface does this affect?
options:
- RMI (scanner / dashboard)
- Pry (crawler)
- WalletPress
- RugCharts
- RugMaps
- x402 Gateway
- Infra / CI / tooling
- Other
validations:
required: true
- type: textarea
id: problem
attributes:
label: Problem / motivation
description: What user pain or gap does this address? Why is it worth building?
placeholder: |
As a <user type>, I want to <action>, so that <outcome>.
validations:
required: true
- type: textarea
id: proposal
attributes:
label: Proposed solution
description: How would you build it? API, UI, data model.
placeholder: |
- Add new endpoint POST /api/v1/...
- Add new column `risk_score` to `tokens` table
- Add new React component `RiskBadge`
- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: Other ways to solve this. Why this approach?
- type: textarea
id: scope
attributes:
label: Acceptance criteria
description: How do we know it's done? Checklist.
placeholder: |
- [ ] Endpoint returns <expected shape>
- [ ] Tests cover happy + edge cases
- [ ] Docs updated
- [ ] No new lint errors
- type: checkboxes
id: effort
attributes:
label: Effort estimate
options:
- Small (< 1 day)
- Medium (1-3 days)
- Large (1-2 weeks)
- XL (2+ weeks, breaking change)
- type: checkboxes
id: checks
attributes:
label: Pre-submit checks
options:
- label: I searched existing issues and didn't find a duplicate
required: true
- label: I'm willing to submit a PR
required: false