Skip to content

Commit 153b65c

Browse files
committed
Prepare public alpha release v0.1.0-alpha.1
1 parent 33c066b commit 153b65c

62 files changed

Lines changed: 3980 additions & 355 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: Bug report
3+
about: Report a defect or behavioral regression in GuardMesh
4+
title: "[Bug] "
5+
labels: bug
6+
assignees: ""
7+
---
8+
9+
## Summary
10+
11+
Describe the bug clearly and briefly.
12+
13+
## Reproduction
14+
15+
1. Command or API call:
16+
2. Input policy/request:
17+
3. Actual behavior:
18+
4. Expected behavior:
19+
20+
## Environment
21+
22+
- Node version:
23+
- GuardMesh version:
24+
- OS:
25+
26+
## Additional context
27+
28+
Add logs, decision output, or validation details if helpful.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
blank_issues_enabled: false
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Feature request
3+
about: Propose a scoped improvement to GuardMesh
4+
title: "[Feature] "
5+
labels: enhancement
6+
assignees: ""
7+
---
8+
9+
## Problem
10+
11+
What user or integration problem are you trying to solve?
12+
13+
## Proposed change
14+
15+
Describe the smallest useful change that would help.
16+
17+
## Why this fits GuardMesh
18+
19+
Explain why this belongs in GuardMesh's narrow public-alpha scope.
20+
21+
## Alternatives considered
22+
23+
List any alternatives or workarounds you considered.

.github/pull_request_template.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
## Summary
2+
3+
- what changed
4+
- why it changed
5+
6+
## Validation
7+
8+
- [ ] `npm run check`
9+
- [ ] docs updated if behavior changed
10+
- [ ] example packs or expectations updated if relevant
11+
12+
## Notes
13+
14+
Anything reviewers should pay special attention to.

.github/workflows/ci.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- "codex/**"
8+
pull_request:
9+
10+
jobs:
11+
test:
12+
runs-on: ubuntu-latest
13+
strategy:
14+
matrix:
15+
node-version: [20, 22]
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- uses: actions/setup-node@v4
21+
with:
22+
node-version: ${{ matrix.node-version }}
23+
cache: npm
24+
25+
- run: npm ci
26+
- run: npm run check
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Release Hygiene
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
tags:
7+
- "v*"
8+
9+
jobs:
10+
release-dry-run:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- uses: actions/setup-node@v4
17+
with:
18+
node-version: 22
19+
cache: npm
20+
21+
- run: npm ci
22+
- run: npm run build
23+
- run: npm test
24+
- run: npm run lint
25+
- run: npm run schema:examples
26+
- run: npm run verify:examples
27+
- run: npm run release:dry-run

.gitignore

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
node_modules
2-
dist
1+
node_modules/
2+
dist/
33
.env
44
.DS_Store
5+
*.log
6+
coverage/
7+
*.tgz

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Changelog
2+
3+
All notable changes to GuardMesh will be documented in this file.
4+
5+
The project is currently in alpha and may still evolve quickly, but behavior changes should still be recorded here.
6+
7+
## 0.1.0-alpha.1
8+
9+
Initial public alpha baseline:
10+
11+
- TypeScript + Node.js implementation for parsing, validation, evaluation, explanation, and CLI workflows
12+
- decisions: `allow`, `deny`, `escalate`, `kill`
13+
- JSON schemas for policy, request, and decision artifacts
14+
- example packs covering all four decision paths
15+
- policy-pack linting and expectation testing
16+
- minimal policy composition through `extends`
17+
- optional runtime schema validation
18+
- programmatic API and `PolicyEngine`
19+
- CI, release dry-run, contributor docs, and alpha stability policy

CODE_OF_CONDUCT.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Code of Conduct
2+
3+
## Our Pledge
4+
5+
We want GuardMesh to be a respectful, practical, and welcoming open-source project.
6+
7+
Contributors, maintainers, and participants are expected to make participation harassment-free for everyone, regardless of age, body size, disability, ethnicity, gender identity, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
8+
9+
## Expected Behavior
10+
11+
- Be respectful and constructive.
12+
- Focus on the work, not the person.
13+
- Assume good intent, but accept correction when impact is pointed out.
14+
- Keep discussion grounded in the project scope and goals.
15+
16+
## Unacceptable Behavior
17+
18+
- Harassment, discrimination, or abusive language
19+
- Personal attacks or sustained antagonistic behavior
20+
- Publishing private information without permission
21+
- Disruptive conduct that makes collaboration harder for others
22+
23+
## Enforcement
24+
25+
Project maintainers are responsible for clarifying and enforcing this code of conduct and may remove, edit, or reject comments, commits, issues, or other contributions that do not align with it.
26+
27+
## Reporting
28+
29+
If you experience or witness unacceptable behavior, open a private security-style contact route once one is listed in `SECURITY.md`. Until then, use the repository maintainers' private contact method rather than a public issue when possible.

CONTRACT.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# GuardMesh Alpha Stability Policy
2+
3+
GuardMesh is still in alpha. The project aims to be stable enough for experimentation, but not yet frozen.
4+
5+
## Stability expectations
6+
7+
### Most stable in alpha
8+
9+
- core decision names: `allow`, `deny`, `escalate`, `kill`
10+
- file-based pack workflow using `policy.yaml` and `request.json`
11+
- example-pack verification model using `decision.expected.json`
12+
13+
### Moderately stable in alpha
14+
15+
- CLI command names
16+
- exported runtime helpers
17+
- `PolicyEngine` shape
18+
- current rule selectors and constraints
19+
20+
These may still evolve when clarity or correctness improves.
21+
22+
### Least stable in alpha
23+
24+
- lint heuristics
25+
- composition details beyond basic `extends`
26+
- any future bundle or adapter interfaces
27+
- exact report field additions for authoring and tooling features
28+
29+
## Compatibility approach
30+
31+
- Prefer additive changes where possible.
32+
- Document behavior changes in `README.md` and `docs/policy-spec.md`.
33+
- Update example packs and tests in the same change whenever semantics move.
34+
35+
## Practical guidance
36+
37+
If you are embedding GuardMesh during alpha:
38+
39+
- pin the package version
40+
- rely on documented fields rather than incidental internals
41+
- treat minor alpha releases as potentially behavior-changing

0 commit comments

Comments
 (0)