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
50 changes: 50 additions & 0 deletions .github/workflows/publish-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# GitHub Actions CI/CD - TestPyPI Publish Workflow
# Publishes package to TestPyPI for testing

name: Publish to TestPyPI

on:
push:
tags:
- 'v*-test*' # Trigger on test tags (e.g., v2.2.0-test, v2.2.0-test1)
workflow_dispatch: # Allow manual trigger

jobs:
build-and-publish-test:
name: Build and Publish to TestPyPI
runs-on: ubuntu-latest
environment: testpypi # Use GitHub environment for Trusted Publishing
permissions:
id-token: write # Required for Trusted Publishing
contents: read

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install build dependencies
run: |
python -m pip install --upgrade pip
pip install build twine

- name: Build distribution packages
run: |
python -m build

- name: Check distribution packages
run: |
twine check dist/*
ls -la dist/

- name: Publish to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
skip-existing: true
verbose: true
print-hash: true
11 changes: 6 additions & 5 deletions .wolf/anatomy.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# anatomy.md

> Auto-maintained by OpenWolf. Last scanned: 2026-04-06T14:36:32.857Z
> Files: 505 tracked | Anatomy hits: 0 | Misses: 0
> Auto-maintained by OpenWolf. Last scanned: 2026-04-08T02:00:17.107Z
> Files: 506 tracked | Anatomy hits: 0 | Misses: 0

## ./

- `.coverage` (~14200 tok)
- `.gitignore` — Git ignore rules (~175 tok)
- `AGENTS.md` — Agent Instructions for DevAIFlow (~21192 tok)
- `AGENTS.md` — Agent Instructions for DevAIFlow (~21442 tok)
- `CHANGELOG.md` — Change log (~4649 tok)
- `CLAUDE.md` — OpenWolf (~139 tok)
- `config.schema.json` (~9891 tok)
Expand All @@ -18,7 +18,7 @@
- `pyproject.toml` — Python project configuration (~702 tok)
- `QUICKREF.md` — DevAIFlow Quick Reference (~1384 tok)
- `README.md` — Project documentation (~6603 tok)
- `RELEASING.md` — Release Management Process (~2707 tok)
- `RELEASING.md` — Release Management Process (~3523 tok)
- `requirements-dev.txt` (~28 tok)
- `requirements.txt` — Python dependencies (~72 tok)
- `SECURITY.md` — Security Policy (~1380 tok)
Expand All @@ -42,6 +42,7 @@

- `integration-tests.yml` — GitHub Actions CI/CD - Integration Tests Workflow (~387 tok)
- `lint.yml` — GitHub Actions CI/CD - Lint Workflow (~534 tok)
- `publish-test.yml` — GitHub Actions CI/CD - TestPyPI Publish Workflow (~370 tok)
- `publish.yml` — GitHub Actions CI/CD - PyPI Publish Workflow (~582 tok)
- `test.yml` — GitHub Actions CI/CD - Test Workflow (~467 tok)

Expand Down Expand Up @@ -456,7 +457,7 @@
- `feature-orchestration-architecture.md` — Feature Orchestration Implementation Summary (~3896 tok)
- `feature-orchestration.md` — Feature Orchestration Flow (~4079 tok)
- `issue-tracker-architecture.md` — Issue Tracker Architecture (~2650 tok)
- `publishing-to-pypi.md` — Publishing DevAIFlow to PyPI (~3596 tok)
- `publishing-to-pypi.md` — Publishing DevAIFlow to PyPI (~4007 tok)
- `release-management.md` — Release Management (~4727 tok)

## docs/experimental/
Expand Down
16 changes: 16 additions & 0 deletions .wolf/buglog.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,22 @@
"related_bugs": [],
"occurrences": 1,
"last_seen": "2026-04-06T14:34:09.151Z"
},
{
"id": "bug-003",
"timestamp": "2026-04-08T01:53:30.693Z",
"error_message": "Missing error handling in unknown",
"file": "RELEASING.md",
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
"fix": "Added try/catch block",
"tags": [
"auto-detected",
"error-handling",
"md"
],
"related_bugs": [],
"occurrences": 1,
"last_seen": "2026-04-08T01:53:30.693Z"
}
]
}
4 changes: 2 additions & 2 deletions .wolf/hooks/_session.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"session_id": "session-2026-04-06-1049",
"started": "2026-04-06T14:49:18.559Z",
"session_id": "session-2026-04-08-2200",
"started": "2026-04-08T02:00:56.461Z",
"files_read": {},
"files_written": [],
"edit_counts": {},
Expand Down
58 changes: 58 additions & 0 deletions .wolf/memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,3 +72,61 @@

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-06 10:49

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:17

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:18

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:47

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:52

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|
| 21:53 | Created .github/workflows/publish-test.yml | — | ~370 |
| 21:53 | Edited RELEASING.md | modified workflow() | ~868 |
| 21:53 | Edited RELEASING.md | 7→8 lines | ~83 |
| 21:54 | Edited docs/developer/publishing-to-pypi.md | expanded (+28 lines) | ~441 |
| 21:54 | Edited docs/developer/publishing-to-pypi.md | 5→7 lines | ~88 |
| 21:54 | Edited docs/developer/publishing-to-pypi.md | modified TestPyPI() | ~163 |

## Session: 2026-04-08 21:57

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:57

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|

## Session: 2026-04-08 21:57

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|
| 21:59 | Created .github/workflows/publish-test.yml, Updated RELEASING.md and publishing-to-pypi.md | publish-test.yml, RELEASING.md, docs/developer/publishing-to-pypi.md | TestPyPI workflow ready | ~1300 |
| 22:00 | Edited AGENTS.md | expanded (+6 lines) | ~227 |
| 22:00 | Edited AGENTS.md | 6→7 lines | ~163 |
| 22:00 | Edited AGENTS.md | 19→21 lines | ~321 |
| 22:00 | Edited AGENTS.md | tests() → needed() | ~202 |
| 22:00 | Updated AGENTS.md testing guidelines | AGENTS.md | Added when to run/skip pytest | ~200 |
| 22:00 | Session end: 4 writes across 1 files (AGENTS.md) | 2 reads | ~22170 tok |

## Session: 2026-04-08 22:00

| Time | Action | File(s) | Outcome | ~Tokens |
|------|--------|---------|---------|--------|
159 changes: 151 additions & 8 deletions .wolf/token-ledger.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
"version": 1,
"created_at": "2026-04-06T12:35:01.489Z",
"lifetime": {
"total_tokens_estimated": 108651,
"total_reads": 7,
"total_writes": 15,
"total_sessions": 9,
"anatomy_hits": 5,
"anatomy_misses": 1,
"repeated_reads_blocked": 14,
"estimated_savings_vs_bare_cli": 190705
"total_tokens_estimated": 153928,
"total_reads": 14,
"total_writes": 19,
"total_sessions": 18,
"anatomy_hits": 7,
"anatomy_misses": 5,
"repeated_reads_blocked": 16,
"estimated_savings_vs_bare_cli": 191105
},
"sessions": [
{
Expand Down Expand Up @@ -145,6 +145,149 @@
"repeated_reads_blocked": 14,
"anatomy_lookups": 5
}
},
{
"id": "session-2026-04-06-1049",
"started": "2026-04-06T14:49:40.616Z",
"ended": "2026-04-06T14:50:24.604Z",
"reads": [
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/tests/test_investigate_command.py",
"tokens_estimated": 10764,
"was_repeated": false,
"anatomy_had_description": false
},
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/devflow/cli/commands/investigate_command.py",
"tokens_estimated": 12343,
"was_repeated": false,
"anatomy_had_description": false
}
],
"writes": [],
"totals": {
"input_tokens_estimated": 23107,
"output_tokens_estimated": 0,
"reads_count": 2,
"writes_count": 0,
"repeated_reads_blocked": 0,
"anatomy_lookups": 1
}
},
{
"id": "session-2026-04-08-2157",
"started": "2026-04-08T01:57:55.993Z",
"ended": "2026-04-08T01:58:02.699Z",
"reads": [
{
"file": "/private/tmp/claude-501/-Users-dvernier-development-devaiflow-devaiflow/b25d0f9a-8d0d-4273-b2e2-3fe114b626aa/tasks/bmqy2pcnp.output",
"tokens_estimated": 0,
"was_repeated": false,
"anatomy_had_description": false
}
],
"writes": [],
"totals": {
"input_tokens_estimated": 0,
"output_tokens_estimated": 0,
"reads_count": 1,
"writes_count": 0,
"repeated_reads_blocked": 0,
"anatomy_lookups": 0
}
},
{
"id": "session-2026-04-08-2157",
"started": "2026-04-08T01:57:55.993Z",
"ended": "2026-04-08T01:58:43.135Z",
"reads": [
{
"file": "/private/tmp/claude-501/-Users-dvernier-development-devaiflow-devaiflow/b25d0f9a-8d0d-4273-b2e2-3fe114b626aa/tasks/bmqy2pcnp.output",
"tokens_estimated": 0,
"was_repeated": false,
"anatomy_had_description": false
}
],
"writes": [],
"totals": {
"input_tokens_estimated": 0,
"output_tokens_estimated": 0,
"reads_count": 1,
"writes_count": 0,
"repeated_reads_blocked": 0,
"anatomy_lookups": 0
}
},
{
"id": "session-2026-04-08-2157",
"started": "2026-04-08T01:57:55.993Z",
"ended": "2026-04-08T01:59:32.777Z",
"reads": [
{
"file": "/private/tmp/claude-501/-Users-dvernier-development-devaiflow-devaiflow/b25d0f9a-8d0d-4273-b2e2-3fe114b626aa/tasks/bmqy2pcnp.output",
"tokens_estimated": 0,
"was_repeated": true,
"anatomy_had_description": false
}
],
"writes": [],
"totals": {
"input_tokens_estimated": 0,
"output_tokens_estimated": 0,
"reads_count": 1,
"writes_count": 0,
"repeated_reads_blocked": 1,
"anatomy_lookups": 0
}
},
{
"id": "session-2026-04-08-2157",
"started": "2026-04-08T01:57:55.993Z",
"ended": "2026-04-08T02:00:32.232Z",
"reads": [
{
"file": "/private/tmp/claude-501/-Users-dvernier-development-devaiflow-devaiflow/b25d0f9a-8d0d-4273-b2e2-3fe114b626aa/tasks/bmqy2pcnp.output",
"tokens_estimated": 0,
"was_repeated": true,
"anatomy_had_description": false
},
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/AGENTS.md",
"tokens_estimated": 21192,
"was_repeated": false,
"anatomy_had_description": false
}
],
"writes": [
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/AGENTS.md",
"tokens_estimated": 243,
"action": "edit"
},
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/AGENTS.md",
"tokens_estimated": 175,
"action": "edit"
},
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/AGENTS.md",
"tokens_estimated": 344,
"action": "edit"
},
{
"file": "/Users/dvernier/development/devaiflow/devaiflow/AGENTS.md",
"tokens_estimated": 216,
"action": "edit"
}
],
"totals": {
"input_tokens_estimated": 21192,
"output_tokens_estimated": 978,
"reads_count": 2,
"writes_count": 4,
"repeated_reads_blocked": 1,
"anatomy_lookups": 1
}
}
],
"daemon_usage": [],
Expand Down
Loading
Loading