This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
name: API checks
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
checks:
|
||||
runs-on: debian-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: test -f README.md && test -f AGENTS.md && test -f docs/versioning.md
|
||||
@@ -0,0 +1,6 @@
|
||||
node_modules/
|
||||
dist/
|
||||
build/
|
||||
coverage/
|
||||
.env
|
||||
*.local
|
||||
@@ -0,0 +1,4 @@
|
||||
node_modules/
|
||||
dist/
|
||||
build/
|
||||
coverage/
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"printWidth": 100,
|
||||
"singleQuote": true,
|
||||
"trailingComma": "all",
|
||||
"tabWidth": 2
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
# Trixie API Agent Instructions
|
||||
|
||||
Read this file and the parent `AGENTS.md`, `PLAN.md`, and `TODO.md` before making changes.
|
||||
|
||||
- This repository owns shared contracts only.
|
||||
- Prefer additive changes; breaking changes require a new major API version and migration notes.
|
||||
- Every contract change requires schema validation, compatibility fixtures, contract tests, and documentation updates.
|
||||
- Never include credentials, private endpoints, or real user data.
|
||||
- Do not edit the parent `PLAN.md` without explicit user permission.
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
# Contributing
|
||||
|
||||
Run formatting, schema validation, compatibility checks, and contract tests before submission. Explain compatibility impact for every contract change.
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
# Trixie API
|
||||
|
||||
Shared versioned HTTP and authenticated WebSocket contracts for `trixie-server` and `trixy-linux-client`.
|
||||
|
||||
This repository contains schemas, shared enums, error codes, compatibility fixtures, contract tests, and API documentation only.
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
# Security
|
||||
|
||||
Report vulnerabilities privately through the hosting instance. Never include credentials, tokens, private URLs, or real user data in issues or fixtures.
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
# Contract Testing
|
||||
|
||||
Fixtures cover HTTP responses, authenticated WebSocket events, errors, permissions, version negotiation, reconnects, and server-owned state transitions. Fixtures are deterministic, synthetic, and secret-free.
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
# API Versioning
|
||||
|
||||
- Use an explicit major API version.
|
||||
- Prefer additive fields and events.
|
||||
- Clients must tolerate unknown fields and events.
|
||||
- Breaking changes require a new major version, fixtures, migration notes, and coordinated releases.
|
||||
- Each release records minimum compatible client and server versions.
|
||||
|
||||
Reference in New Issue
Block a user