agent-tty 0.1.0__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.
@@ -0,0 +1,104 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ pull_request:
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ static-package:
13
+ name: static + package (${{ matrix.os }})
14
+ runs-on: ${{ matrix.os }}
15
+ timeout-minutes: 15
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ os: [ubuntu-latest, macos-latest, windows-latest]
20
+ python-version: ["3.12"]
21
+ defaults:
22
+ run:
23
+ shell: bash
24
+ steps:
25
+ - uses: actions/checkout@v6
26
+ with:
27
+ persist-credentials: false
28
+
29
+ - uses: actions/setup-python@v6
30
+ with:
31
+ python-version: ${{ matrix.python-version }}
32
+ cache: pip
33
+
34
+ - name: Upgrade packaging tools
35
+ run: python -m pip install --upgrade pip build twine
36
+
37
+ - name: Compile source and tests
38
+ run: python -m compileall src tests
39
+
40
+ - name: Static contract tests
41
+ run: python tests/test_contracts.py
42
+
43
+ - name: Documentation drift tests
44
+ run: python tests/test_docs.py
45
+
46
+ - name: Build distributions
47
+ run: python -m build
48
+
49
+ - name: Check distributions
50
+ run: python -m twine check dist/*
51
+
52
+ - name: Install built wheel
53
+ run: python -m pip install --force-reinstall dist/*.whl
54
+
55
+ - name: Installed CLI smoke
56
+ run: |
57
+ python -m agent_tty --help >/dev/null
58
+ k --help >/dev/null
59
+ km --help >/dev/null
60
+ python -c "import agent_tty; print(agent_tty.__version__)"
61
+
62
+ runtime:
63
+ name: runtime tmux (${{ matrix.os }})
64
+ runs-on: ${{ matrix.os }}
65
+ timeout-minutes: 20
66
+ strategy:
67
+ fail-fast: false
68
+ matrix:
69
+ os: [ubuntu-latest, macos-latest]
70
+ python-version: ["3.12"]
71
+ defaults:
72
+ run:
73
+ shell: bash
74
+ steps:
75
+ - uses: actions/checkout@v6
76
+ with:
77
+ persist-credentials: false
78
+
79
+ - uses: actions/setup-python@v6
80
+ with:
81
+ python-version: ${{ matrix.python-version }}
82
+ cache: pip
83
+
84
+ - name: Install tmux on Ubuntu
85
+ if: runner.os == 'Linux'
86
+ run: |
87
+ sudo apt-get update
88
+ sudo apt-get install -y tmux
89
+
90
+ - name: Install tmux on macOS
91
+ if: runner.os == 'macOS'
92
+ run: brew install tmux
93
+
94
+ - name: Build and install package
95
+ run: |
96
+ python -m pip install --upgrade pip build
97
+ python -m build
98
+ python -m pip install --force-reinstall dist/*.whl
99
+
100
+ - name: Verify tmux
101
+ run: tmux -V
102
+
103
+ - name: Full runtime suite against installed k
104
+ run: python tests/run_all.py k
@@ -0,0 +1,111 @@
1
+ name: Release
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ build:
12
+ name: Build distributions
13
+ runs-on: ubuntu-latest
14
+ timeout-minutes: 10
15
+ steps:
16
+ - uses: actions/checkout@v6
17
+ with:
18
+ persist-credentials: false
19
+
20
+ - uses: actions/setup-python@v6
21
+ with:
22
+ python-version: "3.12"
23
+
24
+ - name: Install build tools
25
+ run: python -m pip install --upgrade pip build twine
26
+
27
+ - name: Build sdist and wheel
28
+ run: python -m build
29
+
30
+ - name: Validate distributions
31
+ run: python -m twine check dist/*
32
+
33
+ - name: Verify version matches tag
34
+ run: |
35
+ PKG_VERSION=$(python -c "import tomllib; print(tomllib.load(open('pyproject.toml','rb'))['project']['version'])")
36
+ TAG_VERSION="${GITHUB_REF_NAME#v}"
37
+ if [ "$PKG_VERSION" != "$TAG_VERSION" ]; then
38
+ echo "::error::Version mismatch: pyproject.toml=$PKG_VERSION tag=$TAG_VERSION"
39
+ exit 1
40
+ fi
41
+
42
+ - name: Upload distributions
43
+ uses: actions/upload-artifact@v6
44
+ with:
45
+ name: dist
46
+ path: dist/
47
+
48
+ test-wheel:
49
+ name: Test wheel (${{ matrix.os }})
50
+ needs: build
51
+ runs-on: ${{ matrix.os }}
52
+ timeout-minutes: 15
53
+ strategy:
54
+ fail-fast: true
55
+ matrix:
56
+ os: [ubuntu-latest, macos-latest]
57
+ defaults:
58
+ run:
59
+ shell: bash
60
+ steps:
61
+ - uses: actions/checkout@v6
62
+ with:
63
+ persist-credentials: false
64
+
65
+ - uses: actions/setup-python@v6
66
+ with:
67
+ python-version: "3.12"
68
+
69
+ - name: Download distributions
70
+ uses: actions/download-artifact@v6
71
+ with:
72
+ name: dist
73
+ path: dist/
74
+
75
+ - name: Install tmux
76
+ run: |
77
+ if [ "$RUNNER_OS" = "Linux" ]; then
78
+ sudo apt-get update && sudo apt-get install -y tmux
79
+ else
80
+ brew install tmux
81
+ fi
82
+
83
+ - name: Install wheel
84
+ run: python -m pip install dist/*.whl
85
+
86
+ - name: CLI smoke
87
+ run: |
88
+ k --help >/dev/null
89
+ km --help >/dev/null
90
+ python -m agent_tty --help >/dev/null
91
+
92
+ - name: Full test suite
93
+ run: python tests/run_all.py k
94
+
95
+ publish:
96
+ name: Publish to PyPI
97
+ needs: [build, test-wheel]
98
+ runs-on: ubuntu-latest
99
+ timeout-minutes: 10
100
+ environment: pypi
101
+ permissions:
102
+ id-token: write
103
+ steps:
104
+ - name: Download distributions
105
+ uses: actions/download-artifact@v6
106
+ with:
107
+ name: dist
108
+ path: dist/
109
+
110
+ - name: Publish to PyPI
111
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,7 @@
1
+ __pycache__/
2
+ *.pyc
3
+ *.egg-info/
4
+ dist/
5
+ build/
6
+ *.egg
7
+ .eggs/