Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Release

on:
push:
tags:
- 'v*'

jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: '20'
registry-url: 'https://registry.npmjs.org'

- name: Install
run: npm ci

- name: Run tests
run: npm test

- name: Publish to npm
run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Added

- MCTS-driven SPA exploration with UCB1 selection and backpropagation
- Accessibility tree state abstraction for browser-agnostic node fingerprinting
- Deterministic hard-signal detection: HTTP 500 responses, JS errors, broken images
- Multi-oracle detection suite:
- Authorization replay (IDOR / BOLA detection)
- Cross-layer persistence verification
- Idempotency key replay
- Security headers audit
- Cookie security flags audit
- Information disclosure pattern matching
- Optional LLM surprise scoring via OpenAI for guided exploration (detection remains deterministic without it)
- Puppeteer support as default Chromium engine
- Playwright support as alternative browser engine
- Seed-deterministic reproducibility: every run emits a `repro.js` that replays the exact action sequence
- OpenTelemetry JSONL trace export for offline span inspection
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2026 Angel Galindo
Copyright (c) 2026 Angel Galindo, Adrian Olmos

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Local-only. ~$0/month plus OpenAI usage (cents per run).
## Quick Start

```bash
npm install # downloads Chromium for Puppeteer
npm install # use --include=optional to add browser engines
cp .env.example .env # add OPENAI_API_KEY (optional)
npm test # vitest — should be green
npm start # runs config.yaml against the default target
Expand Down
Loading
Loading