advisor-agent 0.5.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- advisor_agent-0.5.1/.github/ISSUE_TEMPLATE/bug_report.md +45 -0
- advisor_agent-0.5.1/.github/ISSUE_TEMPLATE/config.yml +5 -0
- advisor_agent-0.5.1/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
- advisor_agent-0.5.1/.github/dependabot.yml +32 -0
- advisor_agent-0.5.1/.github/pull_request_template.md +32 -0
- advisor_agent-0.5.1/.github/workflows/advisor.yml +110 -0
- advisor_agent-0.5.1/.github/workflows/ci.yml +57 -0
- advisor_agent-0.5.1/.github/workflows/release.yml +77 -0
- advisor_agent-0.5.1/.gitignore +12 -0
- advisor_agent-0.5.1/.hypothesis/.gitignore +9 -0
- advisor_agent-0.5.1/.hypothesis/constants/02df3b1f02d5f584 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/06076a4d7656dc3c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/063686655a894fc6 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/06b3700476df4603 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/0701d15237a0b096 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/0760a5e3fa9b2b62 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/085b239982333a24 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/0c2679aa6f5e35c1 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/0d1c1b2669c39f60 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/0dc34d4bc4d2fecc +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/10c050cdc8c03d3f +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/1145072e4da8b906 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/18e3c4298885073b +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/1c1a649592eefab4 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/1c687ed11af4df8c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/1e27dc57d284f5b1 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/1e85c6b0d718922c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/286494617035f126 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/297ae4942a5204bf +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/2f1af13a0e2833d6 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/2fe60a55377fcf4f +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/30ec650fbf291447 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3370c9075aa4daa4 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3458afd5d3f4d142 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3bf53518fcd29dbd +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3c6d9492d6557929 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3eefd0d8c8519f8a +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/3fd75112578e5055 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/441bae8a35705863 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/47025cdef4c4b511 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/4a13c6ca387e7054 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/4d9803c08095f682 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/4e88a9da7c97dab4 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/50322ba99d70985e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/50fd2723294b6a99 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/51e6f0ab19f3bf49 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/56e602a3b4185cfd +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/5b58d8c397b4c7db +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/61a08432791621b2 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/652a2b09307f2690 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/6603b4198548df1d +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/681e06b0d7929aa0 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/7060134e0c48f565 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/73a5b83f672bd780 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/750a1b8e8e28b8c4 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/789a1b287f10d758 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/78d9735903207930 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/79a67a5a183f2259 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/7aaedd606b84c5a0 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/7ae077f87693a4d9 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/7de2ab5537c1188e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/7eaa073b09cb35af +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/8103da59911f481e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/83daa98cd946c997 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/8461d43756ef403e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/873df6f76df3891c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/8a3da6a61a5e19c2 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/8bb1cd4bca0bd79a +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/8c9ee977da6447de +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/950d85a94ad5de4f +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/96f1b0ebdcaafff4 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/98181f13fe854c7a +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/9b176283850c5d6c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/9b97c82663afc596 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/9d7358978830ee55 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/9efafafa39428edf +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/a1b06be05c6910ae +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/a1c3624e24a837f5 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/a7b4e25136a01dc5 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/a87ee88109dea5d3 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/a989e306c2f3feab +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/ae1cf3c7c5784c95 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b098ee5f9580bd01 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b437c5249ee4733a +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b50b92c04e054a7e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b5a16050800d73ed +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b603bd677417ac46 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b92719c3b19dc400 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/b9b3da0828c5d7c8 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/ba618e70bc2d8c64 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/bcbfdcc9ee6647c3 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/bf00e7889d63cc1e +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/c4d332861b1baa46 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/c5af724d02a6d60f +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/c689cd76b376991f +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/c8d3e7050d191127 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d0ffbb211d1b8def +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d31dcc53636a55bf +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d4a47d2e26d14537 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d594d2ce497d8629 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d5c33140087c259c +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/d9d282772ceef9b5 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/db71665170566b29 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/df8ebeb008bcd2e3 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/e1c7930ee790f2f7 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/e3ac28e5b30ae3f9 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/ecb500dd5d2cafe3 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/efc98000c03c9fa9 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/f453778b978de124 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/f714bbc4a47cf118 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/fc7a1712e43c2de6 +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/fddc731febb0748b +4 -0
- advisor_agent-0.5.1/.hypothesis/constants/ffbfcef8e39a26dc +4 -0
- advisor_agent-0.5.1/.hypothesis/unicode_data/16.0.0/charmap.json.gz +0 -0
- advisor_agent-0.5.1/.hypothesis/unicode_data/16.0.0/codec-utf-8.json.gz +0 -0
- advisor_agent-0.5.1/.pre-commit-config.yaml +28 -0
- advisor_agent-0.5.1/.remember/.gitignore +1 -0
- advisor_agent-0.5.1/.remember/archive.md +2 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192144.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192150.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192206.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192221.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192240.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192246.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192252.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192257.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192302.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192309.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192326.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192334.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192343.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192351.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192357.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192406.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192415.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192421.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192427.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192436.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192503.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192504.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192511.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192519.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192549.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192557.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192611.log +0 -0
- advisor_agent-0.5.1/.remember/logs/autonomous/save-192732.log +0 -0
- advisor_agent-0.5.1/.remember/logs/hook-errors.log +0 -0
- advisor_agent-0.5.1/.remember/logs/memory-2026-04-22.log +3990 -0
- advisor_agent-0.5.1/.remember/logs/memory-2026-04-23.log +2058 -0
- advisor_agent-0.5.1/.remember/logs/memory-2026-04-24.log +566 -0
- advisor_agent-0.5.1/.remember/logs/memory-2026-04-25.log +327 -0
- advisor_agent-0.5.1/.remember/now.md +3 -0
- advisor_agent-0.5.1/.remember/recent.md +17 -0
- advisor_agent-0.5.1/.remember/tmp/last-ndc.ts +1 -0
- advisor_agent-0.5.1/.remember/tmp/last-save-ts +1 -0
- advisor_agent-0.5.1/.remember/tmp/last-save.json +1 -0
- advisor_agent-0.5.1/.remember/tmp/save-session.pid +1 -0
- advisor_agent-0.5.1/.remember/today-2026-04-22.done.md +29 -0
- advisor_agent-0.5.1/.remember/today-2026-04-23.done.md +18 -0
- advisor_agent-0.5.1/.remember/today-2026-04-24.done.md +5 -0
- advisor_agent-0.5.1/.remember/today-2026-04-25.md +13 -0
- advisor_agent-0.5.1/CHANGELOG.md +405 -0
- advisor_agent-0.5.1/CLAUDE.md +137 -0
- advisor_agent-0.5.1/CONTRIBUTING.md +108 -0
- advisor_agent-0.5.1/Makefile +81 -0
- advisor_agent-0.5.1/PKG-INFO +322 -0
- advisor_agent-0.5.1/README.md +286 -0
- advisor_agent-0.5.1/SECURITY.md +114 -0
- advisor_agent-0.5.1/advisor/__init__.py +293 -0
- advisor_agent-0.5.1/advisor/__main__.py +2543 -0
- advisor_agent-0.5.1/advisor/_fs.py +167 -0
- advisor_agent-0.5.1/advisor/_style.py +324 -0
- advisor_agent-0.5.1/advisor/audit.py +380 -0
- advisor_agent-0.5.1/advisor/baseline.py +250 -0
- advisor_agent-0.5.1/advisor/checkpoint.py +203 -0
- advisor_agent-0.5.1/advisor/cost.py +276 -0
- advisor_agent-0.5.1/advisor/doctor.py +254 -0
- advisor_agent-0.5.1/advisor/focus.py +264 -0
- advisor_agent-0.5.1/advisor/git_scope.py +177 -0
- advisor_agent-0.5.1/advisor/history.py +405 -0
- advisor_agent-0.5.1/advisor/install.py +470 -0
- advisor_agent-0.5.1/advisor/orchestrate/__init__.py +62 -0
- advisor_agent-0.5.1/advisor/orchestrate/_fence.py +29 -0
- advisor_agent-0.5.1/advisor/orchestrate/_prompts/__init__.py +6 -0
- advisor_agent-0.5.1/advisor/orchestrate/_prompts/advisor.txt +182 -0
- advisor_agent-0.5.1/advisor/orchestrate/_schema.py +10 -0
- advisor_agent-0.5.1/advisor/orchestrate/advisor_prompt.py +117 -0
- advisor_agent-0.5.1/advisor/orchestrate/config.py +244 -0
- advisor_agent-0.5.1/advisor/orchestrate/pipeline.py +71 -0
- advisor_agent-0.5.1/advisor/orchestrate/runner_prompts.py +658 -0
- advisor_agent-0.5.1/advisor/orchestrate/verify_dispatch.py +52 -0
- advisor_agent-0.5.1/advisor/pr_comment.py +130 -0
- advisor_agent-0.5.1/advisor/presets.py +146 -0
- advisor_agent-0.5.1/advisor/py.typed +0 -0
- advisor_agent-0.5.1/advisor/rank.py +826 -0
- advisor_agent-0.5.1/advisor/runner_budget.py +312 -0
- advisor_agent-0.5.1/advisor/sarif.py +254 -0
- advisor_agent-0.5.1/advisor/skill_asset.py +345 -0
- advisor_agent-0.5.1/advisor/suppressions.py +273 -0
- advisor_agent-0.5.1/advisor/verify.py +357 -0
- advisor_agent-0.5.1/advisor/web/__init__.py +18 -0
- advisor_agent-0.5.1/advisor/web/assets.py +716 -0
- advisor_agent-0.5.1/advisor/web/server.py +459 -0
- advisor_agent-0.5.1/docs/architecture.md +148 -0
- advisor_agent-0.5.1/docs/codebase_review.md +121 -0
- advisor_agent-0.5.1/docs/prompts.md +143 -0
- advisor_agent-0.5.1/pyproject.toml +117 -0
- advisor_agent-0.5.1/tests/__init__.py +0 -0
- advisor_agent-0.5.1/tests/conftest.py +53 -0
- advisor_agent-0.5.1/tests/test_audit.py +328 -0
- advisor_agent-0.5.1/tests/test_baseline.py +91 -0
- advisor_agent-0.5.1/tests/test_checkpoint.py +150 -0
- advisor_agent-0.5.1/tests/test_cost.py +198 -0
- advisor_agent-0.5.1/tests/test_doctor.py +70 -0
- advisor_agent-0.5.1/tests/test_fail_on.py +46 -0
- advisor_agent-0.5.1/tests/test_fence.py +71 -0
- advisor_agent-0.5.1/tests/test_focus.py +240 -0
- advisor_agent-0.5.1/tests/test_git_scope.py +65 -0
- advisor_agent-0.5.1/tests/test_history.py +117 -0
- advisor_agent-0.5.1/tests/test_history_ranking.py +272 -0
- advisor_agent-0.5.1/tests/test_install.py +502 -0
- advisor_agent-0.5.1/tests/test_main.py +1207 -0
- advisor_agent-0.5.1/tests/test_orchestrate.py +776 -0
- advisor_agent-0.5.1/tests/test_pr_comment.py +56 -0
- advisor_agent-0.5.1/tests/test_presets.py +137 -0
- advisor_agent-0.5.1/tests/test_public_api.py +41 -0
- advisor_agent-0.5.1/tests/test_rank.py +333 -0
- advisor_agent-0.5.1/tests/test_rank_php_superglobal_match.py +55 -0
- advisor_agent-0.5.1/tests/test_runner_budget.py +331 -0
- advisor_agent-0.5.1/tests/test_sarif.py +220 -0
- advisor_agent-0.5.1/tests/test_style.py +316 -0
- advisor_agent-0.5.1/tests/test_suppressions.py +192 -0
- advisor_agent-0.5.1/tests/test_verify.py +389 -0
- advisor_agent-0.5.1/tests/test_web.py +633 -0
- advisor_agent-0.5.1/uv.lock +687 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Something doesn't work the way the docs say it should
|
|
4
|
+
labels: [bug]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What happened
|
|
8
|
+
|
|
9
|
+
<!-- A clear, concise description of the bug. -->
|
|
10
|
+
|
|
11
|
+
## What did you expect to happen?
|
|
12
|
+
|
|
13
|
+
<!-- e.g. "advisor plan should print the ranking" -->
|
|
14
|
+
|
|
15
|
+
## Reproduction
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# paste the exact command(s)
|
|
19
|
+
advisor <subcommand> <args>
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Environment
|
|
23
|
+
|
|
24
|
+
- advisor version: `<output of advisor --version>`
|
|
25
|
+
- Python: `<output of python --version>`
|
|
26
|
+
- OS: macOS / Linux / Windows (specify distro/version)
|
|
27
|
+
- Terminal: (iTerm2 / Terminal.app / Windows Terminal / VS Code / etc.)
|
|
28
|
+
|
|
29
|
+
## Relevant logs
|
|
30
|
+
|
|
31
|
+
<details>
|
|
32
|
+
<summary>Click to expand</summary>
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
<paste stdout + stderr here>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
</details>
|
|
39
|
+
|
|
40
|
+
## Have you checked?
|
|
41
|
+
|
|
42
|
+
- [ ] The bug is reproducible with `NO_COLOR=1` set (rules out an
|
|
43
|
+
ANSI-styling issue)
|
|
44
|
+
- [ ] The bug reproduces after `pip install -U advisor-agent`
|
|
45
|
+
- [ ] I searched existing issues for duplicates
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an enhancement or new capability
|
|
4
|
+
labels: [enhancement]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Problem
|
|
8
|
+
|
|
9
|
+
<!-- What are you trying to do that's currently awkward or impossible? -->
|
|
10
|
+
|
|
11
|
+
## Proposed solution
|
|
12
|
+
|
|
13
|
+
<!-- What would the ideal behavior look like? CLI flag? Python API?
|
|
14
|
+
New subcommand? Be concrete. -->
|
|
15
|
+
|
|
16
|
+
## Alternatives considered
|
|
17
|
+
|
|
18
|
+
<!-- Other approaches you thought about, and why you prefer the proposal. -->
|
|
19
|
+
|
|
20
|
+
## Additional context
|
|
21
|
+
|
|
22
|
+
<!-- Related issues, prior art in other tools, links to relevant docs. -->
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
# Keep dev-tool pins fresh with weekly PRs. The runtime package itself has
|
|
3
|
+
# zero dependencies, so the surface area here is just GitHub Actions (for CI)
|
|
4
|
+
# and the Python dev extras. Grouped PRs reduce review noise.
|
|
5
|
+
|
|
6
|
+
updates:
|
|
7
|
+
- package-ecosystem: github-actions
|
|
8
|
+
directory: /
|
|
9
|
+
schedule:
|
|
10
|
+
interval: weekly
|
|
11
|
+
groups:
|
|
12
|
+
actions:
|
|
13
|
+
patterns:
|
|
14
|
+
- "*"
|
|
15
|
+
|
|
16
|
+
- package-ecosystem: pip
|
|
17
|
+
directory: /
|
|
18
|
+
schedule:
|
|
19
|
+
interval: weekly
|
|
20
|
+
groups:
|
|
21
|
+
dev-deps:
|
|
22
|
+
patterns:
|
|
23
|
+
- "pytest*"
|
|
24
|
+
- "ruff"
|
|
25
|
+
- "mypy"
|
|
26
|
+
- "hypothesis"
|
|
27
|
+
- "pre-commit"
|
|
28
|
+
- "shtab"
|
|
29
|
+
allow:
|
|
30
|
+
# Only care about optional-dependencies (`[dev]`, `[completion]`) —
|
|
31
|
+
# the core package has no runtime deps.
|
|
32
|
+
- dependency-type: direct
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
## Summary
|
|
2
|
+
|
|
3
|
+
<!-- One or two sentences: what does this PR change, and why? -->
|
|
4
|
+
|
|
5
|
+
## Changes
|
|
6
|
+
|
|
7
|
+
<!-- Bullet list of user-visible changes. Reference files with
|
|
8
|
+
`path/to/file.py:NN` where helpful. -->
|
|
9
|
+
|
|
10
|
+
-
|
|
11
|
+
-
|
|
12
|
+
-
|
|
13
|
+
|
|
14
|
+
## Type of change
|
|
15
|
+
|
|
16
|
+
- [ ] Bug fix (non-breaking)
|
|
17
|
+
- [ ] New feature (non-breaking)
|
|
18
|
+
- [ ] Breaking change (bump major or pre-1.0 minor)
|
|
19
|
+
- [ ] Documentation / tooling only
|
|
20
|
+
|
|
21
|
+
## Checklist
|
|
22
|
+
|
|
23
|
+
- [ ] `make check` passes locally (ruff + mypy + pytest)
|
|
24
|
+
- [ ] New code has tests (or a justification in the PR description)
|
|
25
|
+
- [ ] `CHANGELOG.md` has an `[Unreleased]` entry describing the change
|
|
26
|
+
- [ ] README / `docs/` updated if user-facing behavior changed
|
|
27
|
+
- [ ] No secrets, tokens, or private paths in the diff
|
|
28
|
+
|
|
29
|
+
## Linked issues
|
|
30
|
+
|
|
31
|
+
<!-- e.g. "Fixes #123" or "Refs #456". If this is unprompted, explain
|
|
32
|
+
the motivation in Summary above. -->
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
name: Advisor Review
|
|
2
|
+
|
|
3
|
+
# Reusable workflow: `uses: vzwjustin/advisor/.github/workflows/advisor.yml@v0.5.0`
|
|
4
|
+
#
|
|
5
|
+
# Runs `advisor plan` on the caller's repo and uploads the resulting SARIF
|
|
6
|
+
# 2.1.0 document to GitHub Code Scanning. On pull_request events, scope is
|
|
7
|
+
# auto-narrowed to the diff against the base ref unless the caller passes
|
|
8
|
+
# `since:` explicitly.
|
|
9
|
+
|
|
10
|
+
on:
|
|
11
|
+
workflow_call:
|
|
12
|
+
inputs:
|
|
13
|
+
target:
|
|
14
|
+
type: string
|
|
15
|
+
default: "."
|
|
16
|
+
description: "Path to review (default: repo root)"
|
|
17
|
+
min-priority:
|
|
18
|
+
type: number
|
|
19
|
+
default: 3
|
|
20
|
+
description: "Minimum priority tier (1-5). Higher = more selective."
|
|
21
|
+
since:
|
|
22
|
+
type: string
|
|
23
|
+
default: ""
|
|
24
|
+
description: "Git ref to scope to changed files since (e.g. HEAD~5). Overrides auto PR-base inference."
|
|
25
|
+
fail-on:
|
|
26
|
+
type: string
|
|
27
|
+
default: "never"
|
|
28
|
+
description: "Exit non-zero if any finding at/above level (never|low|medium|high|critical)."
|
|
29
|
+
preset:
|
|
30
|
+
type: string
|
|
31
|
+
default: ""
|
|
32
|
+
description: "Rule-pack preset name (python-web|python-cli|node-api|typescript-react|go-service|rust-crate)."
|
|
33
|
+
post-pr-comment:
|
|
34
|
+
type: boolean
|
|
35
|
+
default: false
|
|
36
|
+
description: "On pull_request, post a summary PR comment (pr-comment format)."
|
|
37
|
+
|
|
38
|
+
permissions:
|
|
39
|
+
contents: read
|
|
40
|
+
security-events: write
|
|
41
|
+
pull-requests: write
|
|
42
|
+
|
|
43
|
+
jobs:
|
|
44
|
+
advisor:
|
|
45
|
+
runs-on: ubuntu-latest
|
|
46
|
+
steps:
|
|
47
|
+
- uses: actions/checkout@v6
|
|
48
|
+
with:
|
|
49
|
+
fetch-depth: 0
|
|
50
|
+
|
|
51
|
+
- uses: actions/setup-python@v6
|
|
52
|
+
with:
|
|
53
|
+
python-version: "3.12"
|
|
54
|
+
|
|
55
|
+
- name: Install advisor
|
|
56
|
+
run: python -m pip install advisor-agent
|
|
57
|
+
|
|
58
|
+
- name: Run advisor plan
|
|
59
|
+
id: plan
|
|
60
|
+
run: |
|
|
61
|
+
SINCE_FLAG=""
|
|
62
|
+
if [ -n "${{ inputs.since }}" ]; then
|
|
63
|
+
SINCE_FLAG="--since ${{ inputs.since }}"
|
|
64
|
+
elif [ "${{ github.event_name }}" = "pull_request" ]; then
|
|
65
|
+
SINCE_FLAG="--since origin/${{ github.base_ref }}"
|
|
66
|
+
fi
|
|
67
|
+
PRESET_FLAG=""
|
|
68
|
+
if [ -n "${{ inputs.preset }}" ]; then
|
|
69
|
+
PRESET_FLAG="--preset ${{ inputs.preset }}"
|
|
70
|
+
fi
|
|
71
|
+
advisor plan "${{ inputs.target }}" \
|
|
72
|
+
$SINCE_FLAG $PRESET_FLAG \
|
|
73
|
+
--min-priority ${{ inputs.min-priority }} \
|
|
74
|
+
--fail-on "${{ inputs.fail-on }}" \
|
|
75
|
+
--sarif advisor.sarif
|
|
76
|
+
|
|
77
|
+
- name: Upload SARIF
|
|
78
|
+
if: always()
|
|
79
|
+
uses: github/codeql-action/upload-sarif@v3
|
|
80
|
+
with:
|
|
81
|
+
sarif_file: advisor.sarif
|
|
82
|
+
category: advisor
|
|
83
|
+
|
|
84
|
+
- name: Post PR comment
|
|
85
|
+
if: ${{ always() && inputs.post-pr-comment && github.event_name == 'pull_request' }}
|
|
86
|
+
uses: actions/github-script@v7
|
|
87
|
+
with:
|
|
88
|
+
script: |
|
|
89
|
+
const fs = require('fs');
|
|
90
|
+
const path = 'advisor.sarif';
|
|
91
|
+
if (!fs.existsSync(path)) return;
|
|
92
|
+
const doc = JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
93
|
+
const results = (doc.runs && doc.runs[0] && doc.runs[0].results) || [];
|
|
94
|
+
if (results.length === 0) return;
|
|
95
|
+
const counts = { error: 0, warning: 0, note: 0 };
|
|
96
|
+
for (const r of results) counts[r.level] = (counts[r.level] || 0) + 1;
|
|
97
|
+
const body = [
|
|
98
|
+
'## Advisor review',
|
|
99
|
+
'',
|
|
100
|
+
`Findings: **${results.length}** ` +
|
|
101
|
+
`(error: ${counts.error}, warning: ${counts.warning}, note: ${counts.note})`,
|
|
102
|
+
'',
|
|
103
|
+
'_See Code Scanning for full detail._',
|
|
104
|
+
].join('\n');
|
|
105
|
+
await github.rest.issues.createComment({
|
|
106
|
+
owner: context.repo.owner,
|
|
107
|
+
repo: context.repo.repo,
|
|
108
|
+
issue_number: context.issue.number,
|
|
109
|
+
body,
|
|
110
|
+
});
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [main]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
name: test (${{ matrix.os }} / py${{ matrix.python-version }})
|
|
12
|
+
runs-on: ${{ matrix.os }}
|
|
13
|
+
strategy:
|
|
14
|
+
fail-fast: false
|
|
15
|
+
matrix:
|
|
16
|
+
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
17
|
+
python-version: ["3.10", "3.11", "3.12", "3.13"]
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v6
|
|
20
|
+
|
|
21
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
22
|
+
uses: actions/setup-python@v6
|
|
23
|
+
with:
|
|
24
|
+
python-version: ${{ matrix.python-version }}
|
|
25
|
+
|
|
26
|
+
- name: Install package + dev extras
|
|
27
|
+
run: |
|
|
28
|
+
python -m pip install --upgrade pip
|
|
29
|
+
python -m pip install -e ".[dev]"
|
|
30
|
+
|
|
31
|
+
- name: Run tests with coverage
|
|
32
|
+
run: python -m pytest tests/ --cov=advisor --cov-report=term-missing
|
|
33
|
+
|
|
34
|
+
lint:
|
|
35
|
+
name: lint + typecheck
|
|
36
|
+
runs-on: ubuntu-latest
|
|
37
|
+
steps:
|
|
38
|
+
- uses: actions/checkout@v6
|
|
39
|
+
|
|
40
|
+
- name: Set up Python
|
|
41
|
+
uses: actions/setup-python@v6
|
|
42
|
+
with:
|
|
43
|
+
python-version: "3.12"
|
|
44
|
+
|
|
45
|
+
- name: Install package + dev extras
|
|
46
|
+
run: |
|
|
47
|
+
python -m pip install --upgrade pip
|
|
48
|
+
python -m pip install -e ".[dev,completion]"
|
|
49
|
+
|
|
50
|
+
- name: Ruff (lint)
|
|
51
|
+
run: python -m ruff check advisor tests
|
|
52
|
+
|
|
53
|
+
- name: Ruff (format check)
|
|
54
|
+
run: python -m ruff format --check advisor tests
|
|
55
|
+
|
|
56
|
+
- name: Mypy
|
|
57
|
+
run: python -m mypy advisor/
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
# Tag-triggered validation. Push a tag matching `v<semver>` (e.g. `v0.5.0`)
|
|
4
|
+
# and this workflow will:
|
|
5
|
+
# 1. Verify the tag matches `pyproject.toml` `version`
|
|
6
|
+
# 2. Run the full test suite on the tagged commit
|
|
7
|
+
# 3. Build sdist + wheel with `python -m build`
|
|
8
|
+
|
|
9
|
+
on:
|
|
10
|
+
push:
|
|
11
|
+
tags: ["v*"]
|
|
12
|
+
|
|
13
|
+
permissions:
|
|
14
|
+
contents: read
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
verify:
|
|
18
|
+
name: Verify tag matches pyproject version
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@v6
|
|
22
|
+
|
|
23
|
+
- name: Check tag vs. pyproject.toml
|
|
24
|
+
run: |
|
|
25
|
+
tag="${GITHUB_REF#refs/tags/v}"
|
|
26
|
+
pyproject_version=$(
|
|
27
|
+
python -c "import tomllib,sys; print(tomllib.load(open('pyproject.toml','rb'))['project']['version'])"
|
|
28
|
+
)
|
|
29
|
+
if [ "$tag" != "$pyproject_version" ]; then
|
|
30
|
+
echo "::error::tag $tag does not match pyproject version $pyproject_version"
|
|
31
|
+
exit 1
|
|
32
|
+
fi
|
|
33
|
+
echo "tag matches pyproject version: $tag"
|
|
34
|
+
|
|
35
|
+
test:
|
|
36
|
+
name: Full test suite on tagged commit
|
|
37
|
+
needs: verify
|
|
38
|
+
runs-on: ubuntu-latest
|
|
39
|
+
steps:
|
|
40
|
+
- uses: actions/checkout@v6
|
|
41
|
+
|
|
42
|
+
- name: Set up Python
|
|
43
|
+
uses: actions/setup-python@v6
|
|
44
|
+
with:
|
|
45
|
+
python-version: "3.12"
|
|
46
|
+
|
|
47
|
+
- name: Install + test
|
|
48
|
+
run: |
|
|
49
|
+
python -m pip install --upgrade pip
|
|
50
|
+
python -m pip install -e ".[dev]"
|
|
51
|
+
python -m pytest tests/ -q
|
|
52
|
+
|
|
53
|
+
build:
|
|
54
|
+
name: Build sdist + wheel
|
|
55
|
+
needs: test
|
|
56
|
+
runs-on: ubuntu-latest
|
|
57
|
+
steps:
|
|
58
|
+
- uses: actions/checkout@v6
|
|
59
|
+
|
|
60
|
+
- name: Set up Python
|
|
61
|
+
uses: actions/setup-python@v6
|
|
62
|
+
with:
|
|
63
|
+
python-version: "3.12"
|
|
64
|
+
|
|
65
|
+
- name: Install build tool
|
|
66
|
+
run: |
|
|
67
|
+
python -m pip install --upgrade pip
|
|
68
|
+
python -m pip install build
|
|
69
|
+
|
|
70
|
+
- name: Build distributions
|
|
71
|
+
run: python -m build
|
|
72
|
+
|
|
73
|
+
- name: Upload dist artifacts
|
|
74
|
+
uses: actions/upload-artifact@v7
|
|
75
|
+
with:
|
|
76
|
+
name: dist
|
|
77
|
+
path: dist/
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# This .gitignore file was automatically created by Hypothesis. Hypothesis gitignores
|
|
2
|
+
# .hypothesis by default, because we generally recommend that .hypothesis not be checked
|
|
3
|
+
# into version control.
|
|
4
|
+
#
|
|
5
|
+
# If you *would* like to check .hypothesis into version control, you should delete this
|
|
6
|
+
# file. Hypothesis will not re-create this .gitignore unless .hypothesis is deleted (and
|
|
7
|
+
# if it does, that's a bug - please report it!)
|
|
8
|
+
|
|
9
|
+
*
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/suppressions.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
['#', '**', '/', '1.0', 'ADVISOR', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '^\\d{4}-\\d{2}-\\d{2}$', 'file', 'file_glob', 'reason', 'rule_id', 'schema_version', 'until', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/web/server.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[15.0, 100, 200, 1000, 8765, 65535, '\x00', '*.py', ',', '..', '/', '/api/cost', '/api/history', '/api/plan', '/api/status', '/api/target', '/index.html', '/static/app.css', '/static/app.js', '127.0.0.1', '; charset=utf-8', 'Cache-Control', 'Content-Length', 'Content-Type', '\\', 'advisor_model', 'count', 'defaults', 'description', 'entries', 'error', 'estimate', 'file_path', 'file_types', 'is_active', 'last_mtime', 'limit', 'max_fixes_per_runner', 'min_priority', 'no-store', 'nosniff', 'open in browser', 'opus', 'press Ctrl-C to stop', 'priority', 'run_id', 'runner_model', 'schema_version', 'severity', 'shutting down', 'sonnet', 'status', 'target', 'task_count', 'tasks', 'text/css', 'text/html', 'timestamp', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/sarif.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[120, '$schema', '%SRCROOT%', '..', '/', '1.0', '2.1.0', ':', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '_', '`', 'advisor', 'advisor finding', 'artifactLocation', 'defaultConfiguration', 'driver', 'error', 'evidence', 'fix', 'fullDescription', 'help', 'id', 'informationUri', 'level', 'locations', 'message', 'name', 'note', 'originalUriBaseIds', 'physicalLocation', 'properties', 'region', 'results', 'ruleId', 'ruleIndex', 'rules', 'runs', 'severity', 'shortDescription', 'startLine', 'text', 'tool', 'uri', 'uriBaseId', 'utf-8', 'version', 'warning', '…']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/orchestrate/config.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[800, 80000, '*.py', 'ADVISOR_FILE_TYPES', 'ADVISOR_MAX_RUNNERS', 'ADVISOR_MIN_PRIORITY', 'ADVISOR_MODEL', 'ADVISOR_RUNNER_MODEL', 'ADVISOR_TEST_COMMAND', 'advisor_model', 'haiku', 'haiku-4', 'haiku-4-5', 'opus', 'opus-4', 'opus-4-5', 'review', 'runner_model', 'sonnet', 'sonnet-4', 'sonnet-4-5']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/__main__.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[0.0, 1.0, 90.0, 500, 800, 1024, 3600, 8765, 65535, 86400, '\x1b[2K\r', ' (expired)', '!', '#', '## Baseline diff', '### New', '*', '*.py', ',', ', ', '-', '--advisor-model', '--baseline', '--batch-size', '--branch', '--check', '--checkpoint', '--clear', '--context', '--estimate', '--exclude', '--expired', '--fail-on', '--file-count', '--file-types', '--format', '--from', '--host', '--json', '--limit', '--list', '--max-runners', '--min-priority', '--no-color', '--no-history', '--output', '--path', '--port', '--preset', '--pricing', '--print-completion', '--quiet', '--resume', '--rm', '--runner-id', '--runner-model', '--sarif', '--since', '--skill-path', '--skip-skill', '--staged', '--strict', '--team', '--test-cmd', '--transcript', '--verbose', '--version', '.', '.advisor', '.advisor/', '.advisor/*', '.advisor/**', '.advisor/**/*', '.gitignore', '/.advisor', '/.advisor/', '/.advisor/**', '/advisor <path>', '1', '1.0', '127.0.0.1', '?', 'ADVISOR_MAX_RUNNERS', 'BASE', 'CMD', 'CRITICAL', 'Extra goal context', 'FILE', 'HIGH', 'LOW', 'MEDIUM', 'NAME', 'NO_COLOR', 'PATH', 'PATTERN', 'REF', 'RUN_ID', 'Suppress CTA line', 'Team name', '[', '__main__', 'action', 'advisor', 'advisor install', 'advisor pipeline .', 'advisor protocol', 'advisor-agent', 'advisor_version', 'append', 'audit', 'baseline', 'baseline.jsonl', 'baseline_path', 'bash', 'batch_id', 'batches', 'bold', 'branch', 'budget_warnings', 'checkpoint', 'checkpoints', 'clear', 'command', 'complexity', 'count', 'create', 'create or diff', 'critical', 'current', 'cyan', 'description', 'diff', 'docs', 'doctor', 'entries', 'estimate', 'evidence', 'exclude', 'expired', 'expired suppressions', 'fail_on', 'file', 'file_glob', 'file_path', 'file_types', 'finding', 'findings', 'findings_in_batch', 'fix', 'fixed', 'format', 'from_file', 'healthy', 'high', 'history', 'install', 'install_path', 'installed', 'installed_version', 'json', 'just now', 'large_file_max_fixes', 'low', 'max_fixes_per_runner', 'medium', 'min_priority', 'missing', 'name', 'never', 'new', 'next', 'no_color', 'no_history', 'notes', 'nudge', 'ok', 'opt_out', 'opus', 'outdated', 'output', 'path', 'persisting_count', 'pipeline', 'plan', 'platform', 'pr-comment', 'present', 'preset', 'presets', 'pretty', 'pricing', 'priority', 'prompt', 'protocol', 'python', 'python_version', 'quiet', 'r', 'reason', 'replace', 'resume', 'resumed', 'review', 'rm', 'rule_id', 'run', 'run_id', 'run_ids', 'runner', 'runner_id', 'sarif', 'schema', 'schema_version', 'severity', 'since', 'skill', 'sonnet', 'staged', 'status', 'step', 'store_true', 'strict', 'suppressions', 'suppressions.jsonl', 'target', 'task_count', 'tasks', 'tcsh', 'test_cmd', 'test_command', 'text', 'timestamp', 'to_dict', 'top_priority', 'ui', 'uninstall', 'until', 'url', 'use', 'utf-8', 'verify', 'version', 'yellow', 'zsh', '{', '⚠']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/pr_comment.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[100, 60000, '## Advisor review', '### Details', "'''", '(no description)', '**Evidence:**', '</details>', '<details>', '<\u200b/details>', '<\u200bdetails>', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '\\|', '`', '```', '|', '| --- | ---: |', '| Severity | Count |', '‘']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/web/server.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[0.0, 15.0, 100, 200, 1000, 8765, 65535, '\x00', '*.py', ',', '..', '/', '/api/cost', '/api/history', '/api/plan', '/api/status', '/api/target', '/index.html', '/static/app.css', '/static/app.js', '127.0.0.1', '; charset=utf-8', 'Cache-Control', 'Content-Length', 'Content-Type', '\\', 'advisor_model', 'count', 'defaults', 'description', 'entries', 'error', 'estimate', 'file_path', 'file_types', 'is_active', 'last_mtime', 'limit', 'max_fixes_per_runner', 'min_priority', 'no-store', 'nosniff', 'open in browser', 'opus', 'press Ctrl-C to stop', 'priority', 'run_id', 'runner_model', 'schema_version', 'severity', 'shutting down', 'sonnet', 'status', 'target', 'task_count', 'tasks', 'text/css', 'text/html', 'timestamp', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/suppressions.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
['#', '$', '(?:.*/)?', '*', '**', '.*', '/', '1.0', '?', 'ADVISOR', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '[^/]', '[^/]*', '^', '^\\d{4}-\\d{2}-\\d{2}$', 'file', 'file_glob', 'reason', 'rule_id', 'schema_version', 'until', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/sarif.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[120, '$schema', '%SRCROOT%', '..', '/', '1.0', '2.1.0', ':', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '_', '`', 'advisor', 'advisor finding', 'artifactLocation', 'defaultConfiguration', 'driver', 'error', 'evidence', 'fix', 'fullDescription', 'help', 'id', 'informationUri', 'level', 'locations', 'message', 'name', 'note', 'originalUriBaseIds', 'physicalLocation', 'properties', 'region', 'results', 'ruleId', 'ruleIndex', 'rules', 'runs', 'severity', 'shortDescription', 'startLine', 'text', 'tool', 'uri', 'uriBaseId', 'utf-8', 'version', 'warning', '…']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/orchestrate/config.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[800, 80000, '*.py', 'ADVISOR_FILE_TYPES', 'ADVISOR_MAX_RUNNERS', 'ADVISOR_MIN_PRIORITY', 'ADVISOR_MODEL', 'ADVISOR_RUNNER_MODEL', 'ADVISOR_TEST_COMMAND', 'advisor_model', 'haiku', 'haiku-4', 'haiku-4-5', 'opus', 'opus-4', 'opus-4-5', 'review', 'runner_model', 'sonnet', 'sonnet-4', 'sonnet-4-5']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/__main__.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[0.0, 1.0, 90.0, 500, 800, 3600, 8765, 65535, 86400, '\x1b[2K\r', ' (expired)', '!', '#', '## Baseline diff', '### New', '*', '*.py', ',', ', ', '-', '--advisor-model', '--baseline', '--batch-size', '--branch', '--check', '--checkpoint', '--clear', '--context', '--estimate', '--exclude', '--expired', '--fail-on', '--file-count', '--file-types', '--format', '--from', '--host', '--json', '--limit', '--list', '--max-runners', '--min-priority', '--no-color', '--no-history', '--output', '--path', '--port', '--preset', '--pricing', '--print-completion', '--quiet', '--resume', '--rm', '--runner-id', '--runner-model', '--sarif', '--since', '--skill-path', '--skip-skill', '--staged', '--strict', '--team', '--test-cmd', '--transcript', '--verbose', '--version', '.', '.advisor', '.advisor/', '.advisor/*', '.advisor/**', '.advisor/**/*', '.gitignore', '/.advisor', '/.advisor/', '/.advisor/**', '/advisor <path>', '1', '1.0', '127.0.0.1', '?', 'ADVISOR_MAX_RUNNERS', 'BASE', 'CMD', 'CRITICAL', 'Extra goal context', 'FILE', 'HIGH', 'LOW', 'MEDIUM', 'NAME', 'NO_COLOR', 'PATH', 'PATTERN', 'REF', 'RUN_ID', 'Suppress CTA line', 'Team name', '[', '__main__', 'action', 'advisor', 'advisor install', 'advisor pipeline .', 'advisor protocol', 'advisor-agent', 'advisor_version', 'append', 'audit', 'baseline', 'baseline.jsonl', 'baseline_path', 'bash', 'batch_id', 'batches', 'bold', 'branch', 'budget_warnings', 'checkpoint', 'checkpoints', 'clear', 'command', 'complexity', 'count', 'create', 'create or diff', 'critical', 'current', 'cyan', 'description', 'diff', 'docs', 'doctor', 'entries', 'estimate', 'evidence', 'exclude', 'expired', 'expired suppressions', 'fail_on', 'file', 'file_glob', 'file_path', 'file_types', 'finding', 'findings', 'findings_in_batch', 'fix', 'fixed', 'format', 'from_file', 'healthy', 'high', 'history', 'install', 'install_path', 'installed', 'installed_version', 'json', 'just now', 'large_file_max_fixes', 'low', 'max_fixes_per_runner', 'medium', 'min_priority', 'missing', 'name', 'never', 'new', 'next', 'no_color', 'no_history', 'notes', 'nudge', 'ok', 'opt_out', 'opus', 'outdated', 'output', 'path', 'persisting_count', 'pipeline', 'plan', 'platform', 'pr-comment', 'present', 'preset', 'presets', 'pretty', 'pricing', 'priority', 'prompt', 'protocol', 'python', 'python_version', 'quiet', 'r', 'reason', 'replace', 'resume', 'resumed', 'review', 'rm', 'rule_id', 'run', 'run_id', 'run_ids', 'runner', 'runner_id', 'sarif', 'schema', 'schema_version', 'severity', 'since', 'skill', 'sonnet', 'staged', 'status', 'step', 'store_true', 'strict', 'suppressions', 'suppressions.jsonl', 'target', 'task_count', 'tasks', 'tcsh', 'test_cmd', 'test_command', 'text', 'timestamp', 'to_dict', 'top_priority', 'ui', 'uninstall', 'until', 'url', 'use', 'utf-8', 'verify', 'version', 'yellow', 'zsh', '{', '⚠']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/audit.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[500, 1000, '## Cap overruns', '- (none)', 'CONTEXT_PRESSURE', 'batch_file_count', 'cap_overruns', 'caps', 'context_pressure', 'description', 'evidence', 'file_path', 'findings_in_batch', 'fix', 'fix_counts', 'fix_numbers', 'large_file_max_fixes', 'max_fixes_per_runner', 'protocol_violations', 'rotations', 'run_id', 'runner-(\\d+)', 'runner-?', 'runners', 'severity', 'tasks', 'total_count']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/doctor.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
['\x1b[2K\r', '.claude', '1', 'ADVISOR_FILE_TYPES', 'ADVISOR_MAX_RUNNERS', 'ADVISOR_MIN_PRIORITY', 'ADVISOR_MODEL', 'ADVISOR_QUIET', 'ADVISOR_RUNNER_MODEL', 'ADVISOR_TEST_COMMAND', 'advisor_version', 'bold', 'checks', 'claude', 'claude-cli', 'claude-home', 'cyan', 'dev', 'env_overrides', 'fail', 'git', 'green', 'healthy', 'ok', 'opt-out', 'platform', 'python', 'python_version', 'red', 'running checks…', 'skill', 'warn']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/suppressions.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
['#', '**', '/', '1.0', 'ADVISOR', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '^\\d{4}-\\d{2}-\\d{2}$', 'file', 'file_glob', 'reason', 'rule_id', 'schema_version', 'until', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/__main__.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[0.0, 1.0, 90.0, 500, 800, 3600, 8765, 65535, 86400, '\x1b[2K\r', ' (expired)', '!', '#', '## Baseline diff', '### New', '*', '*.py', ',', ', ', '-', '--advisor-model', '--baseline', '--batch-size', '--branch', '--check', '--checkpoint', '--clear', '--context', '--estimate', '--exclude', '--expired', '--fail-on', '--file-count', '--file-types', '--format', '--from', '--host', '--json', '--limit', '--list', '--max-runners', '--min-priority', '--no-color', '--no-history', '--output', '--path', '--port', '--preset', '--pricing', '--print-completion', '--quiet', '--resume', '--rm', '--runner-id', '--runner-model', '--sarif', '--since', '--skill-path', '--skip-skill', '--staged', '--strict', '--team', '--test-cmd', '--transcript', '--verbose', '--version', '.', '.advisor', '.advisor/', '.advisor/*', '.advisor/**', '.advisor/**/*', '.gitignore', '/.advisor', '/.advisor/', '/.advisor/**', '/advisor <path>', '1', '1.0', '127.0.0.1', '?', 'ADVISOR_MAX_RUNNERS', 'BASE', 'CMD', 'CRITICAL', 'Extra goal context', 'FILE', 'HIGH', 'LOW', 'MEDIUM', 'NAME', 'NO_COLOR', 'PATH', 'PATTERN', 'REF', 'RUN_ID', 'Suppress CTA line', 'Team name', '[', '__main__', 'action', 'advisor', 'advisor install', 'advisor pipeline .', 'advisor protocol', 'advisor-agent', 'advisor_version', 'append', 'audit', 'baseline', 'baseline.jsonl', 'baseline_path', 'bash', 'batch_id', 'batches', 'bold', 'branch', 'budget_warnings', 'checkpoint', 'checkpoints', 'clear', 'command', 'complexity', 'count', 'create', 'create or diff', 'critical', 'current', 'cyan', 'description', 'diff', 'docs', 'doctor', 'entries', 'estimate', 'evidence', 'exclude', 'expired', 'expired suppressions', 'fail_on', 'file', 'file_glob', 'file_path', 'file_types', 'finding', 'findings', 'findings_in_batch', 'fix', 'fixed', 'format', 'from_file', 'healthy', 'high', 'history', 'install', 'install_path', 'installed', 'installed_version', 'json', 'just now', 'large_file_max_fixes', 'low', 'max_fixes_per_runner', 'medium', 'min_priority', 'missing', 'name', 'never', 'new', 'next', 'no_color', 'no_history', 'notes', 'nudge', 'ok', 'opt_out', 'opus', 'outdated', 'output', 'path', 'persisting_count', 'pipeline', 'plan', 'platform', 'pr-comment', 'present', 'preset', 'presets', 'pretty', 'pricing', 'priority', 'prompt', 'protocol', 'python', 'python_version', 'quiet', 'r', 'reason', 'replace', 'resume', 'resumed', 'review', 'rm', 'rule_id', 'run', 'run_id', 'run_ids', 'runner', 'runner_id', 'sarif', 'schema', 'schema_version', 'severity', 'since', 'skill', 'sonnet', 'staged', 'status', 'step', 'store_true', 'strict', 'suppressions', 'suppressions.jsonl', 'target', 'task_count', 'tasks', 'tcsh', 'test_cmd', 'test_command', 'text', 'timestamp', 'to_dict', 'top_priority', 'ui', 'uninstall', 'until', 'url', 'use', 'utf-8', 'verify', 'version', 'yellow', 'zsh', '{', '⚠']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/audit.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[500, '## Cap overruns', '- (none)', 'CONTEXT_PRESSURE', 'batch_file_count', 'cap_overruns', 'caps', 'context_pressure', 'description', 'evidence', 'file_path', 'findings_in_batch', 'fix', 'fix_counts', 'fix_numbers', 'large_file_max_fixes', 'max_fixes_per_runner', 'protocol_violations', 'rotations', 'run_id', 'runner-(\\d+)', 'runner-?', 'runners', 'severity', 'tasks', 'total_count']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/cost.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[3.5, 100, 200, 300, 400, 500, 600, 800, 1500, 2000, 4500, 7500, 1000000, 'advisor_model', 'cost_usd_max', 'cost_usd_min', 'file_count', 'haiku', 'input', 'input_tokens_max', 'input_tokens_min', 'opus', 'output', 'output_tokens_max', 'output_tokens_min', 'runner_count', 'runner_model', 'sonnet', 'utf-8']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/audit.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[500, 1000, '## Cap overruns', '- (none)', 'CONTEXT_PRESSURE', 'batch_file_count', 'cap_overruns', 'caps', 'context_pressure', 'description', 'evidence', 'file_path', 'findings_in_batch', 'fix', 'fix_counts', 'fix_numbers', 'large_file_max_fixes', 'max_fixes_per_runner', 'protocol_violations', 'rotations', 'run_id', 'runner', 'runner-(\\d+)', 'runner-?', 'runners', 'severity', 'tasks', 'total_count']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/sarif.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[120, '$schema', '%SRCROOT%', '..', '/', '1.0', '2.1.0', ':', 'CRITICAL', 'HIGH', 'LOW', 'MEDIUM', '_', '`', 'advisor', 'advisor finding', 'artifactLocation', 'defaultConfiguration', 'driver', 'error', 'evidence', 'fix', 'fullDescription', 'help', 'id', 'informationUri', 'level', 'locations', 'message', 'name', 'note', 'originalUriBaseIds', 'physicalLocation', 'properties', 'region', 'results', 'ruleId', 'ruleIndex', 'rules', 'runs', 'severity', 'shortDescription', 'startLine', 'text', 'tool', 'uri', 'uriBaseId', 'utf-8', 'version', 'warning', '…']
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# file: /Users/justinadams/Downloads/advisor/advisor/orchestrate/runner_prompts.py
|
|
2
|
+
# hypothesis_version: 6.152.1
|
|
3
|
+
|
|
4
|
+
[')', '- (none yet)', '- (none)', 'cap', 'code-review', 'description', 'empty', 'large-file cap', 'max_fixes_per_runner', 'medium', 'message', 'model', 'name', 'prompt', 'run_in_background', 'subagent_type', 'team_name', 'to']
|