agent-supervisor 0.1.2__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.
Files changed (54) hide show
  1. agent_supervisor-0.1.2/.github/workflows/ci.yml +54 -0
  2. agent_supervisor-0.1.2/.github/workflows/docs.yml +37 -0
  3. agent_supervisor-0.1.2/.github/workflows/publish-python.yml +56 -0
  4. agent_supervisor-0.1.2/.gitignore +25 -0
  5. agent_supervisor-0.1.2/Cargo.lock +1017 -0
  6. agent_supervisor-0.1.2/Cargo.toml +46 -0
  7. agent_supervisor-0.1.2/LICENSE +201 -0
  8. agent_supervisor-0.1.2/PKG-INFO +36 -0
  9. agent_supervisor-0.1.2/README.md +248 -0
  10. agent_supervisor-0.1.2/agent_supervisor/__init__.py +84 -0
  11. agent_supervisor-0.1.2/dist/agent_supervisor-0.1.2-cp39-abi3-manylinux_2_39_x86_64.whl +0 -0
  12. agent_supervisor-0.1.2/docs/api-boundaries.md +31 -0
  13. agent_supervisor-0.1.2/docs/index.md +72 -0
  14. agent_supervisor-0.1.2/docs/network-host-mode.md +37 -0
  15. agent_supervisor-0.1.2/docs/openshell.md +97 -0
  16. agent_supervisor-0.1.2/docs/process-groups.md +18 -0
  17. agent_supervisor-0.1.2/docs/python-api.md +216 -0
  18. agent_supervisor-0.1.2/docs/quickstart.md +54 -0
  19. agent_supervisor-0.1.2/docs/releases/0.1.0.md +39 -0
  20. agent_supervisor-0.1.2/docs/releases/0.1.1.md +53 -0
  21. agent_supervisor-0.1.2/docs/releases/0.1.2.md +39 -0
  22. agent_supervisor-0.1.2/docs/security-model.md +42 -0
  23. agent_supervisor-0.1.2/docs/stylesheets/extra.css +192 -0
  24. agent_supervisor-0.1.2/docs/supervisor-lifecycle.md +20 -0
  25. agent_supervisor-0.1.2/mkdocs.yml +82 -0
  26. agent_supervisor-0.1.2/pyproject.toml +26 -0
  27. agent_supervisor-0.1.2/python/Cargo.lock +651 -0
  28. agent_supervisor-0.1.2/python/Cargo.toml +17 -0
  29. agent_supervisor-0.1.2/python/README.md +20 -0
  30. agent_supervisor-0.1.2/python/src/lib.rs +771 -0
  31. agent_supervisor-0.1.2/python/tests/test_api.py +162 -0
  32. agent_supervisor-0.1.2/src/environment.rs +104 -0
  33. agent_supervisor-0.1.2/src/error.rs +309 -0
  34. agent_supervisor-0.1.2/src/events.rs +297 -0
  35. agent_supervisor-0.1.2/src/filesystem.rs +385 -0
  36. agent_supervisor-0.1.2/src/group.rs +289 -0
  37. agent_supervisor-0.1.2/src/lib.rs +42 -0
  38. agent_supervisor-0.1.2/src/network.rs +87 -0
  39. agent_supervisor-0.1.2/src/pipeline.rs +291 -0
  40. agent_supervisor-0.1.2/src/policy.rs +320 -0
  41. agent_supervisor-0.1.2/src/probes.rs +184 -0
  42. agent_supervisor-0.1.2/src/process_control.rs +1508 -0
  43. agent_supervisor-0.1.2/src/pty.rs +302 -0
  44. agent_supervisor-0.1.2/src/runner.rs +87 -0
  45. agent_supervisor-0.1.2/src/supervisor.rs +1483 -0
  46. agent_supervisor-0.1.2/src/windows_filesystem.rs +1097 -0
  47. agent_supervisor-0.1.2/tests/filesystem_unsupported.rs +31 -0
  48. agent_supervisor-0.1.2/tests/linux_filesystem.rs +122 -0
  49. agent_supervisor-0.1.2/tests/loom_supervisor.rs +26 -0
  50. agent_supervisor-0.1.2/tests/macos_filesystem.rs +152 -0
  51. agent_supervisor-0.1.2/tests/macos_smoke.rs +71 -0
  52. agent_supervisor-0.1.2/tests/resource_limits_properties.rs +33 -0
  53. agent_supervisor-0.1.2/tests/windows_filesystem.rs +212 -0
  54. agent_supervisor-0.1.2/tests/windows_smoke.rs +105 -0
@@ -0,0 +1,54 @@
1
+ name: ci
2
+
3
+ on:
4
+ push:
5
+ pull_request:
6
+
7
+ jobs:
8
+ python:
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ os: [ubuntu-latest, macos-latest, windows-latest]
13
+ runs-on: ${{ matrix.os }}
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - uses: dtolnay/rust-toolchain@stable
17
+ - uses: actions/setup-python@v5
18
+ with:
19
+ python-version: '3.9'
20
+ - name: Check Python binding formatting
21
+ run: cargo fmt --manifest-path python/Cargo.toml -- --check
22
+ - name: Install maturin
23
+ run: python -m pip install maturin
24
+ - name: Build Python wheel
25
+ run: python -m maturin build --manifest-path python/Cargo.toml --interpreter python
26
+ - name: Install wheel and run Python API tests
27
+ shell: bash
28
+ run: |
29
+ python -m pip install --no-deps python/target/wheels/*.whl
30
+ python -m unittest discover -s python/tests -v
31
+
32
+ rust:
33
+ strategy:
34
+ fail-fast: false
35
+ matrix:
36
+ os: [ubuntu-latest, macos-latest, windows-latest]
37
+ runs-on: ${{ matrix.os }}
38
+ steps:
39
+ - uses: actions/checkout@v4
40
+ - uses: dtolnay/rust-toolchain@stable
41
+ - run: cargo fmt --check
42
+ - run: cargo test --all-targets -- --test-threads=1
43
+ timeout-minutes: 5
44
+ - name: Run platform network integration test
45
+ if: runner.os == 'Windows'
46
+ run: cargo test --test windows_filesystem -- --test-threads=1
47
+ - name: Run platform network integration test
48
+ if: runner.os == 'macOS'
49
+ run: cargo test --test macos_filesystem -- --test-threads=1
50
+ - name: Run platform network integration test
51
+ if: runner.os == 'Linux'
52
+ run: cargo test --test linux_filesystem -- --test-threads=1
53
+ - run: cargo check --all-targets
54
+ - run: cargo clippy --all-targets -- -D warnings
@@ -0,0 +1,37 @@
1
+ name: docs
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+ pages: write
11
+ id-token: write
12
+
13
+ concurrency:
14
+ group: pages
15
+ cancel-in-progress: true
16
+
17
+ jobs:
18
+ deploy:
19
+ runs-on: ubuntu-latest
20
+ environment:
21
+ name: github-pages
22
+ url: ${{ steps.deployment.outputs.page_url }}
23
+ steps:
24
+ - uses: actions/checkout@v4
25
+ - uses: actions/setup-python@v5
26
+ with:
27
+ python-version: '3.x'
28
+ - name: Install documentation tooling
29
+ run: pip install mkdocs-material
30
+ - name: Build documentation
31
+ run: mkdocs build --strict
32
+ - uses: actions/configure-pages@v5
33
+ - uses: actions/upload-pages-artifact@v3
34
+ with:
35
+ path: site
36
+ - id: deployment
37
+ uses: actions/deploy-pages@v4
@@ -0,0 +1,56 @@
1
+ name: Publish Python package
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ build:
12
+ strategy:
13
+ fail-fast: false
14
+ matrix:
15
+ os: [ubuntu-latest, macos-latest, windows-latest]
16
+ runs-on: ${{ matrix.os }}
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - uses: dtolnay/rust-toolchain@stable
20
+ - uses: actions/setup-python@v5
21
+ with:
22
+ python-version: '3.9'
23
+ - name: Install maturin
24
+ run: python -m pip install maturin
25
+ - name: Build wheel
26
+ run: python -m maturin build --release --compatibility pypi --manifest-path python/Cargo.toml --interpreter python --out dist
27
+ - name: Install wheel and run Python API tests
28
+ shell: bash
29
+ run: |
30
+ python -m pip install --no-deps dist/*.whl
31
+ python -m unittest discover -s python/tests -v
32
+ - name: Build source distribution
33
+ if: runner.os == 'Linux'
34
+ run: python -m maturin sdist --manifest-path python/Cargo.toml --out dist
35
+ - uses: actions/upload-artifact@v4
36
+ with:
37
+ name: python-dist-${{ runner.os }}
38
+ path: dist/*
39
+ if-no-files-found: error
40
+
41
+ publish:
42
+ needs: build
43
+ runs-on: ubuntu-latest
44
+ environment:
45
+ name: pypi
46
+ url: https://pypi.org/p/agent-supervisor
47
+ permissions:
48
+ id-token: write
49
+ steps:
50
+ - uses: actions/download-artifact@v4
51
+ with:
52
+ pattern: python-dist-*
53
+ path: dist
54
+ merge-multiple: true
55
+ - name: Publish distributions to PyPI
56
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,25 @@
1
+ # Generated by Cargo
2
+ # will have compiled files and executables
3
+ debug
4
+ target
5
+
6
+ # These are backup files generated by rustfmt
7
+ **/*.rs.bk
8
+
9
+ # MSVC Windows builds of rustc generate these, which store debugging information
10
+ *.pdb
11
+
12
+ # Generated by cargo mutants
13
+ # Contains mutation testing data
14
+ **/mutants.out*/
15
+
16
+ # RustRover
17
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
18
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
19
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
20
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
21
+ #.idea/
22
+
23
+ /target/
24
+ /site/
25
+ .lint-ai/