Milestone 0: import zappier billing, Verae middleware, and Zapier research
Compose-ready workspace: packages/zappier (rate card, portal, Stripe), packages/verae-zapier-middleware (timestamp + NATS), packages/verae-zapier (CLI app), vendor/zapier-platform, and research/zapier vendor corpus. Gate 0 structure checks pass. Product code and research are not yet wired.
This commit is contained in:
commit
b4150c8250
1364 changed files with 6814366 additions and 0 deletions
73
vendor/zapier-platform/CONTRIBUTING.md
vendored
Normal file
73
vendor/zapier-platform/CONTRIBUTING.md
vendored
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
# Contributing
|
||||
|
||||
## Terms
|
||||
|
||||
This contributor guide is mainly for Zapier employees. However, zapier-platform is a public repo. Everyone is welcome to submit a pull request (PR). For non-employees, you must agree to the terms of service listed at https://zapier.com/developer-platform/tos (the link is also included in the [LICENSE](license) file) before submitting a PR.
|
||||
|
||||
## Local Setup
|
||||
|
||||
Install [pnpm][pnpm] if you haven't. We recommend using [asdf](asdf) to install and manage your
|
||||
Node.js and pnpm versions.
|
||||
|
||||
Clone this repo with git:
|
||||
|
||||
```bash
|
||||
git clone git@github.com:zapier/zapier-platform.git
|
||||
cd zapier-platform
|
||||
```
|
||||
|
||||
In the repo directory, install dependencies with pnpm:
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
```
|
||||
|
||||
That's it! Now you have a local environment for development.
|
||||
|
||||
## Running Tests
|
||||
|
||||
For detailed testing commands and workflow, see [docs-dev/commands.md](docs-dev/commands.md).
|
||||
|
||||
Quick overview:
|
||||
- `pnpm test` - Run all tests for all packages
|
||||
- `pnpm validate` - Full validation (test + smoke-test + lint)
|
||||
- Individual packages: `cd` into package directory first, then `pnpm test`
|
||||
|
||||
## Testing Guidelines
|
||||
|
||||
### Writing Quality Tests
|
||||
|
||||
When writing tests, especially for generators and complex components, follow these guidelines to ensure tests are robust and maintainable:
|
||||
|
||||
#### ✅ DO: Test Actual Component Behavior
|
||||
|
||||
Always test the actual behavior of the component being tested.
|
||||
|
||||
#### ❌ DON'T: Use Simulation-Based Testing
|
||||
|
||||
Never extract logic from the component and test it in isolation. This creates brittle tests that don't reflect actual behavior.
|
||||
|
||||
#### Why Simulation Testing is Problematic
|
||||
|
||||
1. **Duplication**: Simulated logic can diverge from actual implementation
|
||||
2. **False confidence**: Tests may pass while actual functionality is broken
|
||||
3. **Maintenance burden**: Changes require updating both implementation and simulation
|
||||
4. **Missing integration issues**: Doesn't test how components interact with their environment
|
||||
|
||||
## Development CLI Setup
|
||||
|
||||
For setting up the development version of the CLI, see [docs-dev/install-dev.md](docs-dev/install-dev.md).
|
||||
|
||||
## Package Linking for Integration Development
|
||||
|
||||
For linking development versions of core and schema packages to your integration projects, see the "Package Linking" section in [docs-dev/commands.md](docs-dev/commands.md).
|
||||
|
||||
## Releasing a New Version
|
||||
|
||||
**Zapier employees only.** Refer to this [internal doc][releasing] on how to cut a release.
|
||||
|
||||
|
||||
[license]: https://github.com/zapier/zapier-platform/blob/main/LICENSE
|
||||
[pnpm]: https://pnpm.io/installation
|
||||
[asdf]: https://asdf-vm.com
|
||||
[releasing]: https://coda.io/d/_di0MgBhlCWf/Releasing-a-New-zapier-platform-Version_su5eD
|
||||
Loading…
Add table
Add a link
Reference in a new issue