Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
178 commits
Select commit Hold shift + click to select a range
e4c2197
docs: add changelog system process and make check target
KooshaPari Feb 23, 2026
9dee3f7
fix(agentapi): address audit gaps - bounds check, msgfmt whitespace, …
KooshaPari Feb 23, 2026
a4ac478
fix(agentapi++-chat): fix TypeScript errors in message-input and drag…
KooshaPari Feb 23, 2026
29b04d4
fix: apply formatting and modernize test structure
KooshaPari Feb 23, 2026
8820eff
chore: add docs and fix tests
KooshaPari Feb 23, 2026
af3c1a6
docs: add canonical files (CHANGELOG, WORKLOG, PRD, SPEC)
KooshaPari Feb 23, 2026
f9cfe5d
feat: initial agentapi with Bifrost extension
KooshaPari Feb 23, 2026
632c967
fix: resolve build errors in agentapi
KooshaPari Feb 23, 2026
885beb0
test: add comprehensive unit tests for routing and server packages
KooshaPari Feb 23, 2026
df331eb
chore: add vitepress theme
KooshaPari Feb 23, 2026
3df10d5
chore: add github workflows
KooshaPari Feb 23, 2026
462a925
docs: update README with comprehensive agentapi description
KooshaPari Feb 23, 2026
53d4e72
docs: update README with fork details
KooshaPari Feb 23, 2026
f1b4b78
docs: update README with trace structure
KooshaPari Feb 23, 2026
6927667
docs: update README with trace structure
KooshaPari Feb 23, 2026
f22eb09
feat: merge sdk from agentapi repo
KooshaPari Feb 23, 2026
f0b75f3
Merge: reconcile agentapi changes into agentapi++
KooshaPari Feb 23, 2026
02dddc1
docs: update AGENTS.md with deprecation note for agentapi
KooshaPari Feb 23, 2026
249f8a7
Add comprehensive Python SDK with native classes (not just HTTP wrapp…
KooshaPari Feb 23, 2026
7848d9d
docs: vitepress updates
KooshaPari Feb 23, 2026
1247de8
docs: add AGENTS.md with trace format
KooshaPari Feb 23, 2026
d9539be
docs: add comprehensive README with all agents, SDKs, architecture
KooshaPari Feb 23, 2026
acdaaf5
docs: rewrite README with trace format
KooshaPari Feb 23, 2026
a1af972
feat: add agent lifecycle endpoints
KooshaPari Feb 23, 2026
f414cb6
feat: add pagination to GET /messages endpoint
KooshaPari Feb 24, 2026
85cf377
feat: add /config endpoint
KooshaPari Feb 24, 2026
3372374
feat: add DELETE /messages to clear conversation history
KooshaPari Feb 24, 2026
d6b99b8
feat: add rate limiting endpoint
KooshaPari Feb 24, 2026
fe9ad00
feat: add logging endpoint
KooshaPari Feb 24, 2026
3ce9069
feat(e2e: add asciinema recording parser for testing (#2)
KooshaPari Feb 24, 2026
7eecd0a
fix: screenDiff wrong content for AgentTypeOpencode (#3)
KooshaPari Feb 24, 2026
c4ab52a
feat: pagination for messages endpoint (#4)
KooshaPari Feb 24, 2026
b81d637
feat: auto-skip status check for AskUserQuestion prompts (#5)
KooshaPari Feb 24, 2026
153693c
fix: use fs.WalkDir instead of afero.Walk for embed.FS (#6)
KooshaPari Feb 24, 2026
3019806
test: add initial prompt tests and fix whitespace handling (#7)
KooshaPari Feb 24, 2026
f0a87a7
feat: add slash command support (#8)
KooshaPari Feb 24, 2026
1ec1463
feat: add /info endpoint for agent info (#9)
KooshaPari Feb 24, 2026
fbb603f
test: add tests for first line preservation (#10)
KooshaPari Feb 24, 2026
62b6944
feat: add API key generation endpoint (#17)
KooshaPari Feb 24, 2026
ae54b27
feat: test coverage placeholder (#18)
KooshaPari Feb 24, 2026
9843f48
feat: add /health endpoint for load balancer probes (#11)
KooshaPari Feb 24, 2026
9314867
Merge
KooshaPari Feb 24, 2026
296d411
feat: add /config endpoint (#12)
KooshaPari Feb 24, 2026
f1f43ee
feat: add /version endpoint (#13)
KooshaPari Feb 24, 2026
c104df8
feat: add /messages/count endpoint (#14)
KooshaPari Feb 24, 2026
672f6c4
feat: add /ready endpoint for Kubernetes (#16)
KooshaPari Feb 24, 2026
859bfbc
Merge
KooshaPari Feb 24, 2026
b81e023
feat: add rate limiting endpoint (#19)
KooshaPari Feb 24, 2026
4fb776a
Merge
KooshaPari Feb 24, 2026
cacd4d3
feat: add logging endpoint (#20)
KooshaPari Feb 24, 2026
7d94f62
Merge
KooshaPari Feb 24, 2026
1bc5ee9
feat: add DELETE /messages to clear history (#15)
KooshaPari Feb 24, 2026
d03c783
Add ADR for compliance
KooshaPari Feb 24, 2026
c11b3ff
Add GitHub Pages deploy to docs workflow
KooshaPari Feb 24, 2026
81c13ac
chore: update gitignore and docs
KooshaPari Feb 25, 2026
c10fcb5
fix: update vitepress config to use shared base config
KooshaPari Feb 25, 2026
3ba2d87
Merge fix/feature19 into fix/feature20 - combine Logs and RateLimit e…
KooshaPari Feb 25, 2026
c148241
Resolve: keep fix/feature20 version (has Logs + RateLimit)
KooshaPari Feb 25, 2026
d3953b7
Merge fix/pr15 into fix/feature20 - combine all API endpoints
KooshaPari Feb 25, 2026
fa30db3
Merge fix/config-endpoint - add /config endpoint
KooshaPari Feb 25, 2026
c3865c4
Merge fix/feature20 - combine all API endpoints from multiple branches
KooshaPari Feb 25, 2026
306e579
feat: Add benchmarks module with tokenledger integration
KooshaPari Feb 25, 2026
f02499d
Merge upstream/main into main (prefer upstream on conflicts)
KooshaPari Feb 25, 2026
887d6b1
ci: auto-retrigger CodeRabbit when rate-limited (#268)
KooshaPari Feb 27, 2026
c376468
feat: add /info endpoint for agent info (#269)
KooshaPari Feb 27, 2026
4fda726
ci(policy): enforce layered fix PR gate (#280)
KooshaPari Feb 27, 2026
db9a929
feat: add /messages/count endpoint (#264)
KooshaPari Feb 27, 2026
6443093
docs: apply missing governance policy updates (#281)
KooshaPari Feb 27, 2026
def60a5
fix: resolve remaining build and test errors in models and asciinema …
KooshaPari Feb 27, 2026
0b60624
garden: add pre-commit-config for basic hygiene hooks (#283)
KooshaPari Feb 27, 2026
67b3b66
fix(ci): use PR head SHA instead of HEAD for merge commit detection (…
KooshaPari Feb 27, 2026
09cd8dd
docs: unify vitepress docs categories and index scaffold (#285)
KooshaPari Feb 27, 2026
4134478
Replay: CodeRabbit rate-limit bypass and CI gates (#286)
KooshaPari Feb 27, 2026
ab571f7
Replay: phenotype-config SDK integration + docs scaffold (#287)
KooshaPari Feb 27, 2026
8357979
feat(sdk): openapi agent client module scaffold (#288)
KooshaPari Mar 1, 2026
4705d2e
ci: add alert sync to issues workflow (#289)
KooshaPari Mar 1, 2026
c992ff5
refactor: integrate phenotype-go-kit modules (#296)
KooshaPari Mar 1, 2026
bb995dd
chore: migrate to composite policy-gate action (#297)
KooshaPari Mar 1, 2026
b1a340c
chore: add SECURITY.md and .gitignore governance files (#298)
KooshaPari Mar 1, 2026
694d29c
feat: add harness abstractions for Claude/Codex/generic agents (#300)
KooshaPari Mar 2, 2026
ef2886d
chore: migrate to composite policy-gate action (#299)
KooshaPari Mar 2, 2026
01d9a10
refactor: migrate to standalone phenotype-go-middleware and phenotype…
KooshaPari Mar 2, 2026
3a1c243
chore: add lint-test composite action workflow (#302)
KooshaPari Mar 2, 2026
8b8f94a
chore(agentops): onboard policy federation artifacts (#303)
KooshaPari Mar 3, 2026
a21058c
post-merge: add stabilization report for #303 (#304)
KooshaPari Mar 3, 2026
26e54d9
docs: publish #304 quality note and combined stabilization index (#305)
KooshaPari Mar 3, 2026
71b1514
feat(deps): migrate to standalone phenotype-go-middleware and phenoty…
KooshaPari Mar 25, 2026
df758f3
chore: add SECURITY.md and .gitignore governance files (#309)
KooshaPari Mar 25, 2026
6d21766
fix(docs): stabilize docs build (#310)
KooshaPari Mar 25, 2026
9f23d9d
chore: add dotagents (#307)
KooshaPari Mar 25, 2026
0577a1f
chore(docs): refresh generated doc index (#326)
KooshaPari Mar 25, 2026
29b2ac0
fix: resolve TypeScript lint issues (#332)
KooshaPari Mar 25, 2026
6cd5030
feat: modernize tooling with oxc linter and TypeScript fixes (#330)
KooshaPari Mar 25, 2026
1e2dd21
feat: create standalone packages for modularity (#329)
KooshaPari Mar 25, 2026
03426bc
feat: migrate to go-kit architecture with standalone packages (#328)
KooshaPari Mar 25, 2026
3a106a9
feat: add pagination support for messages endpoint (#335)
KooshaPari Mar 25, 2026
0ae863c
fix: stabilize policy federation and docs (#336)
KooshaPari Mar 25, 2026
8c1f525
chore: version bump and changelog update for v0.11.9 (#337)
KooshaPari Mar 25, 2026
d24bdc5
chore: fix PR #305 docs/review warnings
KooshaPari Mar 25, 2026
8b012a5
fix(ci): decouple docs base and relax noisy go linters
KooshaPari Mar 25, 2026
3532694
docs: add workflow guide and sync script (#351)
KooshaPari Mar 25, 2026
774557e
docs: add workflow guide and sync script (#352)
KooshaPari Mar 25, 2026
90bb53c
Auto: Sync and evaluate agentapi-policy-federation-fix (#353)
KooshaPari Mar 25, 2026
29626a3
[fix/docs-build-fix] fix(docs): restore theme files, resolve docs bui…
KooshaPari Mar 25, 2026
44ef0a9
[refactor/harness-migration] feat(harness): port agent execution harn…
KooshaPari Mar 25, 2026
1200c9f
chore: add spec docs (PRD.md, FUNCTIONAL_REQUIREMENTS.md) (#358)
KooshaPari Mar 25, 2026
38fcd7e
chore: add spec docs (PRD.md, FUNCTIONAL_REQUIREMENTS.md) (#359)
KooshaPari Mar 25, 2026
fd1c08a
feat: add /ready endpoint for Kubernetes readiness probe (#361)
KooshaPari Mar 25, 2026
40965dd
docs: add comparison matrix to README (#362)
KooshaPari Mar 25, 2026
d290b7b
feat: add /ready endpoint for Kubernetes readiness probe (#363)
KooshaPari Mar 25, 2026
babc175
feat: add /ready endpoint for Kubernetes readiness probe (#364)
KooshaPari Mar 25, 2026
6f851af
docs: add comprehensive feature comparison matrix (#365)
KooshaPari Mar 25, 2026
1f59449
docs: add SPEC.md with xDD methodologies and best practices (#366)
KooshaPari Mar 25, 2026
ddaedc2
docs: add SPEC.md with xDD methodologies and best practices (#367)
KooshaPari Mar 25, 2026
86b2f0d
docs: replace stub specs with real project-specific documentation (#373)
KooshaPari Mar 26, 2026
79ac126
chore: integrate @phenotype/docs into VitePress docs (#374)
KooshaPari Mar 26, 2026
645160f
chore: repository cleanup and commit pending modifications (#376)
KooshaPari Mar 26, 2026
c3dc0dd
docs(spec): replace stub spec docs with real content derived from cod…
KooshaPari Mar 26, 2026
447a81d
docs: add governance files (CODEOWNERS, CI workflow) (#378)
KooshaPari Mar 27, 2026
2ab3674
chore(governance): remove duplicated governance blocks, reference the…
KooshaPari Mar 27, 2026
bdc55a5
docs: add FR-BIFROST section from AgentBifrost routing layer analysis…
KooshaPari Mar 27, 2026
acff49b
docs: add real PLAN.md phased WBS from Go source analysis (#381)
KooshaPari Mar 27, 2026
f41c6f0
fix(ci): resolve Go build failure, vendor consistency, and release-dr…
KooshaPari Mar 28, 2026
34e07a8
chore(agentapi-plusplus): rescue dirty working tree (#388)
KooshaPari Mar 29, 2026
d1d3136
fix: sync upstream (#386)
KooshaPari Mar 29, 2026
2dacd18
Add AgilePlus methodology spec to agentapi-plusplus (#389)
kilo-code-bot[bot] Mar 31, 2026
38f39e0
feat: add Kilo Gastown methodology spec (#391)
kilo-code-bot[bot] Mar 31, 2026
5b9a752
feat(security): Add P0 security workflows (#399)
KooshaPari Apr 2, 2026
9e803cd
ci(alert-sync): adopt phenoShared reusable (6290-LOC org-wide consoli…
KooshaPari Apr 24, 2026
298a4f7
ci(security): bootstrap CodeQL + trufflehog (audit #129) (#448)
KooshaPari Apr 24, 2026
9f48998
chore: add dependabot.yml (github-actions + gomod) (#450)
KooshaPari Apr 24, 2026
7aaf903
chore(codeowners): expand 1-byte placeholder to real ownership rules …
KooshaPari Apr 24, 2026
846a38c
chore(deps): bump next from 15.4.10 to 15.5.15 in /chat (#447)
dependabot[bot] Apr 24, 2026
c138673
chore: add .editorconfig canonical template (#452)
KooshaPari Apr 24, 2026
c48f779
chore(ci): pin floating external actions to SHAs in secrets-scan.yml …
KooshaPari Apr 24, 2026
8bb5728
chore(ci): pin floating external actions to SHAs in trivy-scan.yml (#…
KooshaPari Apr 24, 2026
2877834
ci: add quality-gate.sh orchestrator + wire into pre-commit (#455)
KooshaPari Apr 24, 2026
0436a4a
chore: add FUNDING.yml (#456)
KooshaPari Apr 24, 2026
2b08017
chore: add CODE_OF_CONDUCT.md (#457)
KooshaPari Apr 24, 2026
a8e8508
chore: add OpenSSF Scorecard workflow (audit #256) (#458)
KooshaPari Apr 25, 2026
8ac70a2
chore(chat): bump Next.js 15.5.15 -> 16.2.4 + react 19.2.5 (#459)
KooshaPari Apr 25, 2026
66b01e9
chore(deps-dev): bump postcss in /agentapi-plusplus/docs (#460)
dependabot[bot] Apr 25, 2026
735cdb9
chore(deps-dev): bump lodash in /agentapi-plusplus/chat (#462)
dependabot[bot] Apr 25, 2026
88f4a82
chore(deps): bump next from 15.4.7 to 15.5.15 in /agentapi-plusplus/c…
dependabot[bot] Apr 25, 2026
b0624d9
chore(deps): bump serialize-javascript and terser-webpack-plugin (#463)
dependabot[bot] Apr 25, 2026
9767cce
chore(vendor): remove checked-in Go vendor tree (#464)
KooshaPari Apr 26, 2026
4da9f05
chore(gitignore): add defensive patterns for node/rust/os/editors/log…
KooshaPari Apr 26, 2026
04de092
fix(readme): correct API routes and required flags per user-story audit
KooshaPari Apr 26, 2026
cb31be7
fix(repo): remove phantom agentapi worktree gitlink
KooshaPari Apr 26, 2026
e4930d4
test(fr): restore agentapi traceability lane (#469)
KooshaPari Apr 26, 2026
23a8db0
chore(gitignore): add .worktrees/ + .claude/worktrees/ entries (#470)
KooshaPari Apr 26, 2026
4bff29d
fix(httpapi): restore handler package build (#471)
KooshaPari Apr 26, 2026
02d16e1
fix(dependabot): add open-pull-requests-limit to enable PR auto-gen (…
KooshaPari Apr 26, 2026
bdf07ab
chore(security): add least-privilege permissions to 16 workflows (#473)
KooshaPari Apr 26, 2026
0e591d6
chore(gitignore): explicit docs/node_modules/ (Scorecard FP cleanup) …
KooshaPari Apr 26, 2026
9fe1fe8
chore: pin Node version via .nvmrc (#475)
KooshaPari Apr 26, 2026
81b78c5
fix(security): refresh Bun lock for Next CVE
KooshaPari Apr 27, 2026
7d3d5c4
ci: use top-level phenoShared reusable workflows
KooshaPari Apr 27, 2026
b5182b0
ci: restore phenoShared reusable workflow refs
KooshaPari Apr 27, 2026
e3189af
chore(deps): pnpm update chat (#481)
KooshaPari Apr 27, 2026
d63553d
chore(deps): clean npm advisories (#484)
KooshaPari Apr 27, 2026
6b2500c
add taskfile common tasks (#486)
KooshaPari Apr 28, 2026
dfb8761
chore: harden taskfile common tasks (#487)
KooshaPari Apr 28, 2026
ad99d14
codex/taskfile root lint cleanup (#489)
KooshaPari Apr 28, 2026
67bf344
chore: expose taskfile common targets (#490)
KooshaPari Apr 28, 2026
bd916f6
chore: normalize nested taskfile common targets (#491)
KooshaPari Apr 28, 2026
dcdd5c5
chore: add go taskfile common tasks (#492)
KooshaPari Apr 28, 2026
137cccd
Add common Taskfile tasks (#493)
KooshaPari Apr 28, 2026
8ccc868
chore: expand common taskfile targets (#494)
KooshaPari Apr 28, 2026
7ba0c0e
Refine common Taskfile tasks (#495)
KooshaPari Apr 28, 2026
26abc0a
chore: cap go taskfile parallelism (#496)
KooshaPari Apr 28, 2026
7088e40
chore: add common taskfile coverage (#497)
KooshaPari Apr 28, 2026
82597e4
Add common Taskfile task metadata (#498)
KooshaPari Apr 28, 2026
b4a5bbb
chore: clarify taskfile detected targets (#499)
KooshaPari Apr 28, 2026
9da4415
chore: pin actions to immutable SHA (#500)
KooshaPari Apr 30, 2026
1b97a89
docs: journey-traceability + iconography (#503)
KooshaPari May 1, 2026
cc59324
chore: bootstrap trufflehog secrets scan [skip ci] (#504)
KooshaPari May 2, 2026
1179950
ci: add trufflehog secrets scan
KooshaPari May 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 3 additions & 0 deletions .agents/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Auto-generated by dotagents. Do not edit.
# Managed skills (installed by dotagents)
/skills/dotagents/
8 changes: 8 additions & 0 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

reviews:
profile: assertive
request_changes_workflow: true
auto_review:
enabled: true
auto_incremental_review: true
23 changes: 23 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# EditorConfig — Phenotype org canonical
# https://editorconfig.org
root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 4
trim_trailing_whitespace = true

[*.{rs,toml,py,go,md,yaml,yml,json,html,css,scss}]
indent_size = 4

[*.{ts,tsx,js,jsx,mjs,cjs}]
indent_size = 2

[Makefile]
indent_style = tab

[*.md]
trim_trailing_whitespace = false # trailing spaces = line break in Markdown
5 changes: 5 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
API_BASE_URL=https://api.phenotype.example.com
DEBUG_ENABLED=false
NODE_ENV=production
LOG_LEVEL=info

10 changes: 10 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Global code owners for KooshaPari org
* @KooshaPari

# Infrastructure as code
/iac/ @KooshaPari
/.github/ @KooshaPari

# Security-sensitive
/SECURITY.md @KooshaPari
/.github/dependabot.yml @KooshaPari
4 changes: 4 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository
github: KooshaPari
custom:
- https://www.buymeacoffee.com/kooshapari
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Bug Report
description: File a report to help us improve Phenotype
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: bug-description
attributes:
label: Bug Description
description: A clear and concise description of what the bug is.
placeholder: What happened?
validations:
required: true
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Feature Request
description: Suggest an idea for Phenotype
labels: ["enhancement"]
body:
- type: textarea
id: feature-description
attributes:
label: Feature Description
description: A clear and concise description of what you want to happen.
validations:
required: true
52 changes: 52 additions & 0 deletions .github/WORKFLOW.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Workflow Guide

## Repository Configuration

- **origin**: Your fork (push target)
- **No upstream**: This repo has no upstream source

## Git Settings

```bash
pull.rebase = false # Use merge (not rebase)
pull.ff = only # Fast-forward only pulls
merge.ff = false # Create merge commits
```

## Worktree Setup

```bash
# Create feature worktree
git worktree add worktrees/agentapi/feat/my-feature -b feat/my-feature

# List worktrees
git worktree list

# Prune stale
git worktree prune
```

## Branch Naming

- `feat/*` - Features
- `fix/*` - Fixes
- `chore/*` - Maintenance
- `refactor/*` - Refactoring

## Daily Workflow

```bash
git worktree add worktrees/agentapi/feat/my-feature -b feat/my-feature
cd worktrees/agentapi/feat/my-feature
# ... changes ...
git add . && git commit -m "feat: my feature"
git push origin feat/my-feature
gh pr create --base main --title "feat: my feature"
```

## Sync Rules

1. Use worktrees for features
2. No rebase on pushed branches
3. Merge commits preserve history
4. Keep branches small and focused
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
open-pull-requests-limit: 10
- package-ecosystem: gomod
directory: /
schedule:
interval: daily
open-pull-requests-limit: 10
30 changes: 30 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
## Summary

<!-- Describe what this PR does and why it is needed. -->

## Changes

-

## Testing

- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing completed
- [ ] Test coverage maintained or improved

## Validation

- [ ] Lint/format checks passed
- [ ] Build/test commands documented and successful
- [ ] Documentation updated (if needed)

## Merge Readiness

- [ ] PR is labeled `automerge` for automatic merge flow (optional)
- [ ] Conflicts resolved

## Related Issues

Closes:

60 changes: 60 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name-template: 'v$RESOLVED_VERSION'
tag-template: 'v$RESOLVED_VERSION'

categories:
- title: 'Breaking Changes'
labels:
- 'breaking-change'
- 'breaking'
- title: 'New Features'
labels:
- 'feature'
- 'enhancement'
- title: 'Bug Fixes'
labels:
- 'fix'
- 'bugfix'
- 'bug'
- title: 'Security'
labels:
- 'security'
- title: 'Documentation'
labels:
- 'documentation'
- 'docs'
- title: 'Maintenance'
labels:
- 'chore'
- 'maintenance'
- 'dependencies'
- 'ci'

change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
change-title-escapes: '\<*_&'

version-resolver:
major:
labels:
- 'breaking-change'
- 'breaking'
minor:
labels:
- 'feature'
- 'enhancement'
patch:
labels:
- 'fix'
- 'bugfix'
- 'bug'
- 'security'
- 'documentation'
- 'chore'
- 'maintenance'
default: patch

template: |
## Changes

$CHANGES

**Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION
32 changes: 32 additions & 0 deletions .github/scripts/security-guard.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/usr/bin/env bash
set -euo pipefail

cd "$(git rev-parse --show-toplevel)"

if command -v ggshield >/dev/null 2>&1; then
GGSHIELD=(ggshield)
elif command -v uvx >/dev/null 2>&1; then
GGSHIELD=(uvx ggshield)
elif command -v uv >/dev/null 2>&1; then
GGSHIELD=(uv tool run ggshield)
else
echo "ERROR: ggshield not installed. Install with: pipx install ggshield or uv tool install ggshield" >&2
exit 1
fi

echo "[security-guard] Running ggshield secret scan"
"${GGSHIELD[@]}" secret scan pre-commit

if command -v codespell >/dev/null 2>&1; then
changed_files=$(git diff --cached --name-only --diff-filter=ACM || true)
if [ -z "${changed_files}" ]; then
changed_files=$(git diff --name-only HEAD~1..HEAD 2>/dev/null || true)
fi

if [ -n "${changed_files}" ]; then
echo "[security-guard] Running optional codespell fast pass"
echo "${changed_files}" | \
grep -E '\.(md|txt|py|ts|tsx|js|go|rs|kt|java|yaml|yml)$' | \
xargs -r codespell -q 2 -L "hte,teh" || true
fi
fi
14 changes: 14 additions & 0 deletions .github/workflows/alert-sync-issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: Alert sync issues

permissions:
contents: read
on:
schedule:
- cron: '17 * * * *'
workflow_dispatch:

jobs:
sync:
uses: KooshaPari/phenoShared/.github/workflows/alert-sync-issues.yml@main
with:
auto-label: auto-alert-sync
25 changes: 25 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: CI

permissions:
contents: read

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5
- name: Run linters
run: echo "Linting..."

test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5
- name: Run tests
run: echo "Testing..."
28 changes: 28 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: CodeQL
on:
push:
branches: [main]
pull_request:
branches: [main]
schedule:
- cron: '27 4 * * 1'
permissions:
contents: read
security-events: write
actions: read
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
language: ["go", "javascript-typescript", "python", "actions"]
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5
- uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
- uses: github/codeql-action/analyze@v3
with:
category: "/language:${{ matrix.language }}"
Loading