coreason-ecosystem 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.
- coreason_ecosystem-0.1.0/.clinerules +1 -0
- coreason_ecosystem-0.1.0/.coreason/registry.lock +1 -0
- coreason_ecosystem-0.1.0/.cursorrules +1 -0
- coreason_ecosystem-0.1.0/.dockerignore +9 -0
- coreason_ecosystem-0.1.0/.editorconfig +18 -0
- coreason_ecosystem-0.1.0/.github/CODEOWNERS +7 -0
- coreason_ecosystem-0.1.0/.github/copilot-instructions.md +1 -0
- coreason_ecosystem-0.1.0/.github/workflows/ci.yml +141 -0
- coreason_ecosystem-0.1.0/.github/workflows/docs.yml +25 -0
- coreason_ecosystem-0.1.0/.github/workflows/publish.yml +71 -0
- coreason_ecosystem-0.1.0/.github/workflows/security.yml +37 -0
- coreason_ecosystem-0.1.0/.gitignore +142 -0
- coreason_ecosystem-0.1.0/.pre-commit-config.yaml +41 -0
- coreason_ecosystem-0.1.0/.ruff.toml +2 -0
- coreason_ecosystem-0.1.0/.vscode/extensions.json +9 -0
- coreason_ecosystem-0.1.0/.vscode/settings.json +16 -0
- coreason_ecosystem-0.1.0/AGENTS.md +30 -0
- coreason_ecosystem-0.1.0/Dockerfile +47 -0
- coreason_ecosystem-0.1.0/LICENSE +57 -0
- coreason_ecosystem-0.1.0/NOTICE +8 -0
- coreason_ecosystem-0.1.0/PKG-INFO +201 -0
- coreason_ecosystem-0.1.0/README.md +122 -0
- coreason_ecosystem-0.1.0/codecov.yml +23 -0
- coreason_ecosystem-0.1.0/docs/engineering_blueprint.md +83 -0
- coreason_ecosystem-0.1.0/docs/index.md +46 -0
- coreason_ecosystem-0.1.0/docs/lexical_architecture.md +19 -0
- coreason_ecosystem-0.1.0/docs/manifesto.md +293 -0
- coreason_ecosystem-0.1.0/infrastructure/bare-metal/Pulumi.yaml +3 -0
- coreason_ecosystem-0.1.0/infrastructure/bare-metal/__main__.py +49 -0
- coreason_ecosystem-0.1.0/infrastructure/local/compose.yaml +59 -0
- coreason_ecosystem-0.1.0/infrastructure/observability/grafana/dashboards/coreason-dashboard.json +42 -0
- coreason_ecosystem-0.1.0/infrastructure/observability/grafana/provisioning/dashboards/default.yaml +11 -0
- coreason_ecosystem-0.1.0/infrastructure/observability/prometheus/prometheus.yml +9 -0
- coreason_ecosystem-0.1.0/llms.txt +16 -0
- coreason_ecosystem-0.1.0/mkdocs.yml +13 -0
- coreason_ecosystem-0.1.0/pyproject.toml +106 -0
- coreason_ecosystem-0.1.0/renovate.json +17 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/__init__.py +21 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/__main__.py +4 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/cli.py +121 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/build.py +110 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/doctor.py +102 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/init.py +116 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/registry.py +60 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/sync.py +70 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/orchestration/up.py +196 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/utils/__init__.py +13 -0
- coreason_ecosystem-0.1.0/src/coreason_ecosystem/utils/logger.py +46 -0
- coreason_ecosystem-0.1.0/tests/test_build.py +74 -0
- coreason_ecosystem-0.1.0/tests/test_cli.py +438 -0
- coreason_ecosystem-0.1.0/tests/test_init.py +115 -0
- coreason_ecosystem-0.1.0/tests/test_registry.py +66 -0
- coreason_ecosystem-0.1.0/tests/test_sync.py +76 -0
- coreason_ecosystem-0.1.0/tests/test_utils.py +14 -0
- coreason_ecosystem-0.1.0/uv.lock +1224 -0
- coreason_ecosystem-0.1.0/zensical.toml +25 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
See AGENTS.md for AI agent rules.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
81e420e22a8d3ae8b313141deb728fa7435b24c276ffccd3fcec0b1c773f4a85
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
See AGENTS.md for AI agent rules.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
root = true
|
|
2
|
+
|
|
3
|
+
[*]
|
|
4
|
+
charset = utf-8
|
|
5
|
+
end_of_line = lf
|
|
6
|
+
insert_final_newline = true
|
|
7
|
+
indent_style = space
|
|
8
|
+
indent_size = 4
|
|
9
|
+
trim_trailing_whitespace = true
|
|
10
|
+
|
|
11
|
+
[*.py]
|
|
12
|
+
indent_size = 4
|
|
13
|
+
|
|
14
|
+
[*.{yml,yaml,json,toml}]
|
|
15
|
+
indent_size = 2
|
|
16
|
+
|
|
17
|
+
[*.md]
|
|
18
|
+
trim_trailing_whitespace = false
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
See AGENTS.md for AI agent rules.
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
|
|
2
|
+
name: CI
|
|
3
|
+
|
|
4
|
+
on:
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main
|
|
8
|
+
- develop
|
|
9
|
+
pull_request:
|
|
10
|
+
|
|
11
|
+
permissions:
|
|
12
|
+
contents: read
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
16
|
+
cancel-in-progress: true
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
lint-and-audit:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
23
|
+
- name: Install uv
|
|
24
|
+
uses: astral-sh/setup-uv@v5
|
|
25
|
+
with:
|
|
26
|
+
enable-cache: true
|
|
27
|
+
cache-dependency-glob: "uv.lock"
|
|
28
|
+
- name: Set up Python
|
|
29
|
+
uses: actions/setup-python@v5
|
|
30
|
+
with:
|
|
31
|
+
python-version-file: "pyproject.toml"
|
|
32
|
+
allow-prereleases: true
|
|
33
|
+
- name: Install dependencies
|
|
34
|
+
run: uv sync --all-extras --dev
|
|
35
|
+
shell: bash
|
|
36
|
+
- name: Run pre-commit
|
|
37
|
+
run: uv run pre-commit run --all-files
|
|
38
|
+
shell: bash
|
|
39
|
+
|
|
40
|
+
test-ubuntu:
|
|
41
|
+
needs: [lint-and-audit]
|
|
42
|
+
if: always() && needs.lint-and-audit.result == 'success'
|
|
43
|
+
runs-on: ubuntu-latest
|
|
44
|
+
strategy:
|
|
45
|
+
matrix:
|
|
46
|
+
python-version: ["3.14-dev", "3.14t-dev"]
|
|
47
|
+
steps:
|
|
48
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
49
|
+
- name: Install uv
|
|
50
|
+
uses: astral-sh/setup-uv@v5
|
|
51
|
+
with:
|
|
52
|
+
enable-cache: true
|
|
53
|
+
cache-dependency-glob: "uv.lock"
|
|
54
|
+
|
|
55
|
+
- name: Set up Python
|
|
56
|
+
uses: actions/setup-python@v5
|
|
57
|
+
with:
|
|
58
|
+
python-version: ${{ matrix.python-version }}
|
|
59
|
+
allow-prereleases: true
|
|
60
|
+
|
|
61
|
+
- name: Set PYTHON_GIL for Free-Threading
|
|
62
|
+
if: matrix.python-version == '3.14t'
|
|
63
|
+
run: echo "PYTHON_GIL=0" >> $GITHUB_ENV
|
|
64
|
+
shell: bash
|
|
65
|
+
|
|
66
|
+
- name: Install dependencies
|
|
67
|
+
run: uv sync --all-extras --dev
|
|
68
|
+
shell: bash
|
|
69
|
+
|
|
70
|
+
- name: Run tests
|
|
71
|
+
run: uv run pytest --cov=coreason_ecosystem --cov-report=xml
|
|
72
|
+
shell: bash
|
|
73
|
+
|
|
74
|
+
- name: Build docs
|
|
75
|
+
run: uv run zensical build
|
|
76
|
+
shell: bash
|
|
77
|
+
|
|
78
|
+
- name: Upload coverage to Codecov
|
|
79
|
+
uses: codecov/codecov-action@v4
|
|
80
|
+
with:
|
|
81
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
82
|
+
fail_ci_if_error: true
|
|
83
|
+
verbose: true
|
|
84
|
+
|
|
85
|
+
test-extended:
|
|
86
|
+
needs: [lint-and-audit]
|
|
87
|
+
if: always() && needs.lint-and-audit.result == 'success'
|
|
88
|
+
runs-on: ${{ matrix.os }}
|
|
89
|
+
strategy:
|
|
90
|
+
matrix:
|
|
91
|
+
os: [windows-latest, macos-latest]
|
|
92
|
+
python-version: ["3.14-dev", "3.14t-dev"]
|
|
93
|
+
steps:
|
|
94
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
95
|
+
- name: Install uv
|
|
96
|
+
uses: astral-sh/setup-uv@v5
|
|
97
|
+
with:
|
|
98
|
+
enable-cache: true
|
|
99
|
+
cache-dependency-glob: "uv.lock"
|
|
100
|
+
|
|
101
|
+
- name: Set up Python
|
|
102
|
+
uses: actions/setup-python@v5
|
|
103
|
+
with:
|
|
104
|
+
python-version: ${{ matrix.python-version }}
|
|
105
|
+
allow-prereleases: true
|
|
106
|
+
|
|
107
|
+
- name: Set PYTHON_GIL for Free-Threading
|
|
108
|
+
if: matrix.python-version == '3.14t'
|
|
109
|
+
run: echo "PYTHON_GIL=0" >> $GITHUB_ENV
|
|
110
|
+
shell: bash
|
|
111
|
+
|
|
112
|
+
- name: Install dependencies
|
|
113
|
+
run: uv sync --all-extras --dev
|
|
114
|
+
shell: bash
|
|
115
|
+
|
|
116
|
+
- name: Run tests
|
|
117
|
+
run: uv run pytest --cov=coreason_ecosystem --cov-report=xml
|
|
118
|
+
shell: bash
|
|
119
|
+
|
|
120
|
+
reproducible-builds:
|
|
121
|
+
name: Reproducible Builds (Determinism Verification)
|
|
122
|
+
needs: [test-ubuntu, test-extended]
|
|
123
|
+
runs-on: ubuntu-latest
|
|
124
|
+
steps:
|
|
125
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
126
|
+
- name: Install uv
|
|
127
|
+
uses: astral-sh/setup-uv@v5
|
|
128
|
+
with:
|
|
129
|
+
enable-cache: true
|
|
130
|
+
cache-dependency-glob: "uv.lock"
|
|
131
|
+
- name: Set up Python
|
|
132
|
+
uses: actions/setup-python@v5
|
|
133
|
+
with:
|
|
134
|
+
python-version-file: "pyproject.toml"
|
|
135
|
+
allow-prereleases: true
|
|
136
|
+
- name: Build wheel
|
|
137
|
+
run: uv build
|
|
138
|
+
shell: bash
|
|
139
|
+
- name: Verify SHA256
|
|
140
|
+
run: sha256sum dist/*.whl
|
|
141
|
+
shell: bash
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: Deploy Documentation
|
|
2
|
+
on:
|
|
3
|
+
push:
|
|
4
|
+
branches:
|
|
5
|
+
- main
|
|
6
|
+
permissions:
|
|
7
|
+
contents: write
|
|
8
|
+
jobs:
|
|
9
|
+
deploy:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- name: Install uv
|
|
14
|
+
uses: astral-sh/setup-uv@v3
|
|
15
|
+
with:
|
|
16
|
+
enable-cache: true
|
|
17
|
+
cache-dependency-glob: "uv.lock"
|
|
18
|
+
- name: Set up Python
|
|
19
|
+
uses: actions/setup-python@v5
|
|
20
|
+
with:
|
|
21
|
+
python-version-file: "pyproject.toml"
|
|
22
|
+
- name: Install dependencies
|
|
23
|
+
run: uv sync --all-extras
|
|
24
|
+
- name: Deploy MkDocs
|
|
25
|
+
run: uv run mkdocs gh-deploy --force
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
push:
|
|
7
|
+
tags:
|
|
8
|
+
- "v*"
|
|
9
|
+
|
|
10
|
+
permissions:
|
|
11
|
+
contents: write
|
|
12
|
+
id-token: write
|
|
13
|
+
pages: write
|
|
14
|
+
|
|
15
|
+
jobs:
|
|
16
|
+
release:
|
|
17
|
+
runs-on: ubuntu-latest
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
20
|
+
- name: Install uv
|
|
21
|
+
uses: astral-sh/setup-uv@v5
|
|
22
|
+
with:
|
|
23
|
+
enable-cache: true
|
|
24
|
+
cache-dependency-glob: "uv.lock"
|
|
25
|
+
|
|
26
|
+
- name: Set up Python
|
|
27
|
+
uses: actions/setup-python@v5
|
|
28
|
+
with:
|
|
29
|
+
python-version-file: "pyproject.toml"
|
|
30
|
+
allow-prereleases: true
|
|
31
|
+
|
|
32
|
+
- name: Build Docs
|
|
33
|
+
run: uv run zensical build
|
|
34
|
+
shell: bash
|
|
35
|
+
|
|
36
|
+
- name: Upload Pages artifact
|
|
37
|
+
uses: actions/upload-pages-artifact@v3
|
|
38
|
+
with:
|
|
39
|
+
path: "site/"
|
|
40
|
+
|
|
41
|
+
- name: Build package
|
|
42
|
+
run: uv build
|
|
43
|
+
shell: bash
|
|
44
|
+
|
|
45
|
+
- name: Publish to PyPI
|
|
46
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
47
|
+
|
|
48
|
+
- name: Generate SBOM
|
|
49
|
+
uses: anchore/sbom-action@v0
|
|
50
|
+
with:
|
|
51
|
+
path: ./dist
|
|
52
|
+
format: spdx-json
|
|
53
|
+
output-file: sbom.spdx.json
|
|
54
|
+
|
|
55
|
+
- name: Sign artifacts with Sigstore
|
|
56
|
+
uses: sigstore/gh-action-sigstore-python@v3.0.0
|
|
57
|
+
with:
|
|
58
|
+
inputs: >-
|
|
59
|
+
dist/*.tar.gz
|
|
60
|
+
dist/*.whl
|
|
61
|
+
|
|
62
|
+
deploy-pages:
|
|
63
|
+
needs: release
|
|
64
|
+
runs-on: ubuntu-latest
|
|
65
|
+
environment:
|
|
66
|
+
name: github-pages
|
|
67
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
68
|
+
steps:
|
|
69
|
+
- name: Deploy to GitHub Pages
|
|
70
|
+
id: deployment
|
|
71
|
+
uses: actions/deploy-pages@v4
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
|
|
2
|
+
name: Security Audit
|
|
3
|
+
|
|
4
|
+
on:
|
|
5
|
+
schedule:
|
|
6
|
+
- cron: '0 0 * * *'
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
audit-dependencies:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
|
|
17
|
+
|
|
18
|
+
- name: Install uv
|
|
19
|
+
uses: astral-sh/setup-uv@v5
|
|
20
|
+
with:
|
|
21
|
+
enable-cache: true
|
|
22
|
+
cache-dependency-glob: "uv.lock"
|
|
23
|
+
|
|
24
|
+
- name: Set up Python
|
|
25
|
+
uses: actions/setup-python@v5
|
|
26
|
+
with:
|
|
27
|
+
python-version-file: "pyproject.toml"
|
|
28
|
+
allow-prereleases: true
|
|
29
|
+
|
|
30
|
+
- name: Export requirements for pip-audit
|
|
31
|
+
run: uv export --format requirements-txt > requirements.txt
|
|
32
|
+
shell: bash
|
|
33
|
+
|
|
34
|
+
- name: Run pip-audit
|
|
35
|
+
uses: pypa/gh-action-pip-audit@v1.1.0
|
|
36
|
+
with:
|
|
37
|
+
inputs: requirements.txt
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
build/
|
|
12
|
+
develop-eggs/
|
|
13
|
+
dist/
|
|
14
|
+
downloads/
|
|
15
|
+
eggs/
|
|
16
|
+
.eggs/
|
|
17
|
+
lib/
|
|
18
|
+
lib64/
|
|
19
|
+
parts/
|
|
20
|
+
sdist/
|
|
21
|
+
var/
|
|
22
|
+
wheels/
|
|
23
|
+
*.egg-info/
|
|
24
|
+
.installed.cfg
|
|
25
|
+
*.egg
|
|
26
|
+
MANIFEST
|
|
27
|
+
|
|
28
|
+
# PyInstaller
|
|
29
|
+
# Usually these files are written by a python script from a template
|
|
30
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
31
|
+
*.manifest
|
|
32
|
+
*.spec
|
|
33
|
+
|
|
34
|
+
# Installer logs
|
|
35
|
+
pip-log.txt
|
|
36
|
+
pip-delete-this-directory.txt
|
|
37
|
+
|
|
38
|
+
# Unit test / coverage reports
|
|
39
|
+
htmlcov/
|
|
40
|
+
.tox/
|
|
41
|
+
.nox/
|
|
42
|
+
.coverage
|
|
43
|
+
.coverage.*
|
|
44
|
+
.cache
|
|
45
|
+
nosetests.xml
|
|
46
|
+
coverage.xml
|
|
47
|
+
*.cover
|
|
48
|
+
*.py,cover
|
|
49
|
+
.hypothesis/
|
|
50
|
+
.pytest_cache/
|
|
51
|
+
|
|
52
|
+
# Translations
|
|
53
|
+
*.mo
|
|
54
|
+
*.pot
|
|
55
|
+
|
|
56
|
+
# Django stuff:
|
|
57
|
+
*.log
|
|
58
|
+
local_settings.py
|
|
59
|
+
db.sqlite3
|
|
60
|
+
db.sqlite3-journal
|
|
61
|
+
|
|
62
|
+
# Flask stuff:
|
|
63
|
+
instance/
|
|
64
|
+
.webassets-cache
|
|
65
|
+
|
|
66
|
+
# Scrapy stuff:
|
|
67
|
+
.scrapy
|
|
68
|
+
|
|
69
|
+
# Sphinx documentation
|
|
70
|
+
docs/_build/
|
|
71
|
+
|
|
72
|
+
# PyBuilder
|
|
73
|
+
target/
|
|
74
|
+
|
|
75
|
+
# Jupyter Notebook
|
|
76
|
+
.ipynb_checkpoints
|
|
77
|
+
|
|
78
|
+
# IPython
|
|
79
|
+
profile_default/
|
|
80
|
+
ipython_config.py
|
|
81
|
+
|
|
82
|
+
# pyenv
|
|
83
|
+
.python-version
|
|
84
|
+
|
|
85
|
+
# pipenv
|
|
86
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
87
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
88
|
+
# from different sources is not a concern, Pipfile.lock also may be ignored.
|
|
89
|
+
#Pipfile.lock
|
|
90
|
+
|
|
91
|
+
# pdm
|
|
92
|
+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
|
93
|
+
#pdm.lock
|
|
94
|
+
# pdm stores its cache in the specified location, which is ~/.pdm/cache by default.
|
|
95
|
+
# It might be desirable to ignore it if you use a different cache directory.
|
|
96
|
+
#.pdm-cache/
|
|
97
|
+
|
|
98
|
+
# PEP 582; used by pdm
|
|
99
|
+
__pypackages__/
|
|
100
|
+
|
|
101
|
+
# Celery stuff
|
|
102
|
+
celerybeat-schedule
|
|
103
|
+
celerybeat.pid
|
|
104
|
+
|
|
105
|
+
# SageMath parsed files
|
|
106
|
+
*.sage.py
|
|
107
|
+
|
|
108
|
+
# Environments
|
|
109
|
+
.env
|
|
110
|
+
.venv
|
|
111
|
+
env/
|
|
112
|
+
venv/
|
|
113
|
+
ENV/
|
|
114
|
+
env.bak/
|
|
115
|
+
venv.bak/
|
|
116
|
+
|
|
117
|
+
# Spyder project settings
|
|
118
|
+
.spyderproject
|
|
119
|
+
.spyproject
|
|
120
|
+
|
|
121
|
+
# Rope project settings
|
|
122
|
+
.ropeproject
|
|
123
|
+
|
|
124
|
+
# zensical documentation
|
|
125
|
+
site/
|
|
126
|
+
|
|
127
|
+
# mypy
|
|
128
|
+
.mypy_cache/
|
|
129
|
+
.dmypy.json
|
|
130
|
+
dmypy.json
|
|
131
|
+
|
|
132
|
+
# Pyre type checker
|
|
133
|
+
.pyre/
|
|
134
|
+
|
|
135
|
+
# pytype static type analyzer
|
|
136
|
+
.pytype/
|
|
137
|
+
|
|
138
|
+
# Cython debug symbols
|
|
139
|
+
cython_debug/
|
|
140
|
+
|
|
141
|
+
# Runtime Logs
|
|
142
|
+
logs/
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: v6.0.0
|
|
4
|
+
hooks:
|
|
5
|
+
- id: trailing-whitespace
|
|
6
|
+
- id: end-of-file-fixer
|
|
7
|
+
- id: check-yaml
|
|
8
|
+
- id: check-toml
|
|
9
|
+
- id: check-json
|
|
10
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
11
|
+
rev: v0.14.14
|
|
12
|
+
hooks:
|
|
13
|
+
- id: ruff
|
|
14
|
+
args: [--fix, --exit-non-zero-on-fix]
|
|
15
|
+
- id: ruff-format
|
|
16
|
+
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
17
|
+
rev: v1.18.2
|
|
18
|
+
hooks:
|
|
19
|
+
- id: mypy
|
|
20
|
+
additional_dependencies: ["pydantic>=2.0", "pytest", "types-PyYAML", "click-types", "typer", "rich", "httpx", "loguru", "filelock"]
|
|
21
|
+
args: [--config-file, pyproject.toml]
|
|
22
|
+
- repo: https://github.com/AleksaC/hadolint-py
|
|
23
|
+
rev: v2.14.0
|
|
24
|
+
hooks:
|
|
25
|
+
- id: hadolint
|
|
26
|
+
- repo: https://github.com/zricethezav/gitleaks
|
|
27
|
+
rev: v8.24.0
|
|
28
|
+
hooks:
|
|
29
|
+
- id: gitleaks
|
|
30
|
+
- repo: https://github.com/codespell-project/codespell
|
|
31
|
+
rev: v2.4.1
|
|
32
|
+
hooks:
|
|
33
|
+
- id: codespell
|
|
34
|
+
- repo: local
|
|
35
|
+
hooks:
|
|
36
|
+
- id: deptry
|
|
37
|
+
name: deptry
|
|
38
|
+
entry: uv run deptry src/
|
|
39
|
+
language: system
|
|
40
|
+
pass_filenames: false
|
|
41
|
+
always_run: true
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"python.defaultInterpreterPath": ".venv/bin/python",
|
|
3
|
+
"[python]": {
|
|
4
|
+
"editor.defaultFormatter": "charliermarsh.ruff",
|
|
5
|
+
"editor.formatOnSave": true,
|
|
6
|
+
"editor.codeActionsOnSave": {
|
|
7
|
+
"source.fixAll": "explicit",
|
|
8
|
+
"source.organizeImports": "explicit"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"mypy-type-checker.args": [
|
|
12
|
+
"--config-file=pyproject.toml"
|
|
13
|
+
],
|
|
14
|
+
"ruff.enable": true,
|
|
15
|
+
"ruff.organizeImports": true
|
|
16
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<legal_directive priority="highest" action="halt_if_violated">
|
|
2
|
+
This repository, its generated code, and associated logic are the intellectual property of CoReason, Inc.
|
|
3
|
+
Licensed under the Prosperity Public License 3.0.
|
|
4
|
+
</legal_directive>
|
|
5
|
+
|
|
6
|
+
# 🛑 COREASON ECOSYSTEM: AGENTIC DIRECTIVES 🛑
|
|
7
|
+
|
|
8
|
+
**System/Role Definition:** You are an Expert Enterprise Systems Architect. You are operating within `coreason-ecosystem`, the **Governance Layer** of the CoReason Tripartite Cybernetic Manifold.
|
|
9
|
+
|
|
10
|
+
Your mandate is Macro-Orchestration. You do not build Swarm intelligence; you deploy, monitor, and document the infrastructure that houses it.
|
|
11
|
+
|
|
12
|
+
## 📜 IMMUTABLE LAWS OF THE CONTROL PLANE
|
|
13
|
+
|
|
14
|
+
### RULE 1: The Principle of Non-Interference
|
|
15
|
+
You must never write or modify Swarm capabilities, internal Temporal workflow logic, or Pydantic ontological models. Your domain is strictly limited to the exterior scaffolding: CLI routers (`typer`), infrastructure configuration (Docker/Docker Compose), Server-Sent Events (SSE) telemetry aggregation, and automated documentation generation.
|
|
16
|
+
|
|
17
|
+
### RULE 2: Epistemic Documentation (Zero-Waste Mandate)
|
|
18
|
+
Documentation is a mathematical derivative of the codebase, never a manual transcription. When building the `ecosystem.docs` module, you are strictly forbidden from hardcoding tool descriptions. You must engineer pipelines that dynamically parse `coreason_ontology.schema.json` and generate static MkDocs/Material portals.
|
|
19
|
+
|
|
20
|
+
### RULE 3: Cryptographic Supply Chain (The Registry)
|
|
21
|
+
When building the WASM capability registry (`ecosystem.registry`), you must treat WebAssembly binaries as untrusted physical matter. Every command that builds or publishes a `.wasm` file must inherently generate and attach a SHA-256 cryptographic hash. The ecosystem must guarantee the epistemic provenance of the Swarm's tools.
|
|
22
|
+
|
|
23
|
+
### RULE 4: Infrastructure Bounding (Deployment Topology)
|
|
24
|
+
When engineering the `ecosystem.deploy` module, design the infrastructure orchestrations to target robust, virtualized environments. Assume the deployment topology will be provisioning Temporal clusters, Redis message brokers, and `coreason-runtime` daemons across Proxmox-managed nodes. Ensure all networking and container bindings are built for isolated, secure virtualization.
|
|
25
|
+
|
|
26
|
+
### RULE 5: Mandatory Licensing
|
|
27
|
+
If you generate derived work, documentation portals, or enterprise CLI extensions, ensure the output inherently respects the SOTA proprietary boundaries. The CLI tool itself and its generated artifacts are governed by the **Prosperity Public License 3.0.0**.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
*Violation of these directives is a critical failure of the macro-orchestration boundary. Read, internalize, and execute.*
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Stage 1: Builder
|
|
2
|
+
FROM python:3.14-slim AS builder
|
|
3
|
+
|
|
4
|
+
# Install uv
|
|
5
|
+
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
|
6
|
+
|
|
7
|
+
# Set the working directory
|
|
8
|
+
WORKDIR /app
|
|
9
|
+
|
|
10
|
+
# Copy the project files
|
|
11
|
+
COPY pyproject.toml .
|
|
12
|
+
COPY uv.lock .
|
|
13
|
+
COPY src/ ./src/
|
|
14
|
+
COPY README.md .
|
|
15
|
+
COPY LICENSE .
|
|
16
|
+
|
|
17
|
+
# Install dependencies and build the wheel
|
|
18
|
+
RUN --mount=type=cache,target=/root/.cache/uv \
|
|
19
|
+
uv sync --no-dev --frozen
|
|
20
|
+
|
|
21
|
+
# Build the execution plane wheel
|
|
22
|
+
RUN uv build --wheel --out-dir /wheels
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# Stage 2: Runtime
|
|
26
|
+
FROM python:3.14-slim AS runtime
|
|
27
|
+
|
|
28
|
+
# Install uv
|
|
29
|
+
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
|
30
|
+
|
|
31
|
+
# Create a non-root user
|
|
32
|
+
RUN useradd --create-home --shell /bin/bash appuser
|
|
33
|
+
USER appuser
|
|
34
|
+
|
|
35
|
+
# Add user's local bin to PATH
|
|
36
|
+
ENV PATH="/home/appuser/app/.venv/bin:/home/appuser/.local/bin:${PATH}"
|
|
37
|
+
|
|
38
|
+
WORKDIR /home/appuser/app
|
|
39
|
+
|
|
40
|
+
# Copy ONLY the wheel from builder
|
|
41
|
+
COPY --from=builder /wheels /wheels
|
|
42
|
+
|
|
43
|
+
# Create a fresh, empty production venv and install the wheel
|
|
44
|
+
RUN uv venv /home/appuser/app/.venv && \
|
|
45
|
+
uv pip install --no-cache /wheels/*.whl
|
|
46
|
+
|
|
47
|
+
CMD ["coreason"]
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# The Prosperity Public License 3.0.0
|
|
2
|
+
|
|
3
|
+
Contributor: CoReason, Inc.
|
|
4
|
+
|
|
5
|
+
Source Code: https://github.com/CoReason-AI/coreason_manifest
|
|
6
|
+
|
|
7
|
+
## Purpose
|
|
8
|
+
|
|
9
|
+
This license allows you to use and share this software for noncommercial purposes for free and to try this software for commercial purposes for thirty days.
|
|
10
|
+
|
|
11
|
+
## Agreement
|
|
12
|
+
|
|
13
|
+
In order to receive this license, you have to agree to its rules. Those rules are both obligations under that agreement and conditions to your license. Don't do anything with this software that triggers a rule you can't or won't follow.
|
|
14
|
+
|
|
15
|
+
## Notices
|
|
16
|
+
|
|
17
|
+
Make sure everyone who gets a copy of any part of this software from you, with or without changes, also gets the text of this license and the contributor and source code lines above.
|
|
18
|
+
|
|
19
|
+
## Commercial Trial
|
|
20
|
+
|
|
21
|
+
Limit your use of this software for commercial purposes to a thirty-day trial period. If you use this software for work, your company gets one trial period for all personnel, not one trial per person.
|
|
22
|
+
|
|
23
|
+
## Contributions Back
|
|
24
|
+
|
|
25
|
+
Developing feedback, changes, or additions that you contribute back to the contributor on the terms of a standardized public software license such as [the Blue Oak Model License 1.0.0](https://blueoakcouncil.org/license/1.0.0), [the Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0.html), [the MIT license](https://spdx.org/licenses/MIT.html), or [the two-clause BSD license](https://spdx.org/licenses/BSD-2-Clause.html) doesn't count as use for a commercial purpose.
|
|
26
|
+
|
|
27
|
+
## Personal Uses
|
|
28
|
+
|
|
29
|
+
Personal use for research, experiment, and testing for the benefit of public knowledge, personal study, private entertainment, hobby projects, amateur pursuits, or religious observance, without any anticipated commercial application, doesn't count as use for a commercial purpose.
|
|
30
|
+
|
|
31
|
+
## Noncommercial Organizations
|
|
32
|
+
|
|
33
|
+
Use by any charitable organization, educational institution, public research organization, public safety or health organization, environmental protection organization, or government institution doesn't count as use for a commercial purpose regardless of the source of funding or obligations resulting from the funding.
|
|
34
|
+
|
|
35
|
+
## Defense
|
|
36
|
+
|
|
37
|
+
Don't make any legal claim against anyone accusing this software, with or without changes, alone or with other technology, of infringing any patent.
|
|
38
|
+
|
|
39
|
+
## Copyright
|
|
40
|
+
|
|
41
|
+
The contributor licenses you to do everything with this software that would otherwise infringe their copyright in it.
|
|
42
|
+
|
|
43
|
+
## Patent
|
|
44
|
+
|
|
45
|
+
The contributor licenses you to do everything with this software that would otherwise infringe any patents they can license or become able to license.
|
|
46
|
+
|
|
47
|
+
## Reliability
|
|
48
|
+
|
|
49
|
+
The contributor can't revoke this license.
|
|
50
|
+
|
|
51
|
+
## Excuse
|
|
52
|
+
|
|
53
|
+
You're excused for unknowingly breaking [Notices](#notices) if you take all practical steps to comply within thirty days of learning you broke the rule.
|
|
54
|
+
|
|
55
|
+
## No Liability
|
|
56
|
+
|
|
57
|
+
***As far as the law allows, this software comes as is, without any warranty or condition, and the contributor won't be liable to anyone for any damages related to this software or this license, under any kind of legal claim.***
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Copyright (c) 2026 CoReason, Inc.. All Rights Reserved
|
|
2
|
+
|
|
3
|
+
This software is licensed under the Prosperity Public License 3.0.0.
|
|
4
|
+
The issuer of the Prosperity Public License for this software is CoReason, Inc..
|
|
5
|
+
|
|
6
|
+
For a commercial version of this software, please contact us at gowtham.rao@coreason.ai.
|
|
7
|
+
|
|
8
|
+
GENESIS COMMIT: Initializing repository coreason_manifest per CoReason Clean Room Protocol PIP-001. This repository is established as an independently created De Novo development environment, commencing on 2026-03-14. I, Gowtham A Rao certify that this date is subsequent to my individual Temporal Firewall Date.
|