techtree 0.1.0__py3-none-any.whl
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.
- techtree/__init__.py +35 -0
- techtree/__main__.py +14 -0
- techtree/canonical.py +239 -0
- techtree/catalog/__init__.py +25 -0
- techtree/catalog/repository.py +400 -0
- techtree/catalog/service.py +419 -0
- techtree/cli/__init__.py +1 -0
- techtree/cli/app.py +416 -0
- techtree/cli/commands/__init__.py +1 -0
- techtree/cli/commands/climb.py +1223 -0
- techtree/cli/commands/doctor.py +147 -0
- techtree/cli/commands/engine.py +207 -0
- techtree/cli/commands/proof.py +556 -0
- techtree/cli/commands/publish.py +447 -0
- techtree/cli/commands/release.py +303 -0
- techtree/cli/commands/run.py +1067 -0
- techtree/cli/commands/setup.py +181 -0
- techtree/cli/commands/skill.py +221 -0
- techtree/cli/commands/uplift.py +698 -0
- techtree/cli/commands/withdraw.py +212 -0
- techtree/cli/confirm.py +47 -0
- techtree/cli/context.py +96 -0
- techtree/cli/invoke.py +220 -0
- techtree/cli/output.py +280 -0
- techtree/constants.py +138 -0
- techtree/crypto.py +128 -0
- techtree/doctor/__init__.py +1 -0
- techtree/doctor/checks.py +675 -0
- techtree/doctor/execution_checks.py +435 -0
- techtree/doctor/service.py +326 -0
- techtree/drafts/__init__.py +32 -0
- techtree/drafts/source.py +146 -0
- techtree/drafts/store.py +992 -0
- techtree/engines/__init__.py +1 -0
- techtree/engines/bundle.py +251 -0
- techtree/engines/installer.py +679 -0
- techtree/engines/registry.py +235 -0
- techtree/engines/runner.py +170 -0
- techtree/errors.py +262 -0
- techtree/fs.py +234 -0
- techtree/harness.py +108 -0
- techtree/identity/__init__.py +41 -0
- techtree/identity/models.py +113 -0
- techtree/identity/service.py +199 -0
- techtree/identity/store.py +263 -0
- techtree/ids.py +85 -0
- techtree/manifests/__init__.py +39 -0
- techtree/manifests/builder.py +433 -0
- techtree/manifests/compare.py +376 -0
- techtree/models/__init__.py +282 -0
- techtree/models/base.py +201 -0
- techtree/models/campaign.py +484 -0
- techtree/models/catalog.py +227 -0
- techtree/models/cli.py +151 -0
- techtree/models/climb.py +254 -0
- techtree/models/data_policy.py +130 -0
- techtree/models/engine.py +156 -0
- techtree/models/episode_receipt.py +130 -0
- techtree/models/evaluation_backend.py +113 -0
- techtree/models/experiment.py +154 -0
- techtree/models/run.py +214 -0
- techtree/models/skill.py +156 -0
- techtree/models/uplift_report.py +158 -0
- techtree/models/validation.py +299 -0
- techtree/paths.py +116 -0
- techtree/presentation/__init__.py +31 -0
- techtree/presentation/build.py +1242 -0
- techtree/presentation/compact.py +246 -0
- techtree/presentation/evidence.py +169 -0
- techtree/presentation/models.py +358 -0
- techtree/presentation/rich.py +312 -0
- techtree/presentation/sanitize.py +156 -0
- techtree/publication/__init__.py +44 -0
- techtree/publication/address.py +180 -0
- techtree/publication/coordinates.py +26 -0
- techtree/publication/journal.py +212 -0
- techtree/publication/keccak.py +183 -0
- techtree/publication/models.py +209 -0
- techtree/publication/offer.py +35 -0
- techtree/publication/service.py +618 -0
- techtree/publication/transport.py +296 -0
- techtree/publication/verify.py +242 -0
- techtree/publication/withdraw.py +156 -0
- techtree/py.typed +0 -0
- techtree/receipts/__init__.py +52 -0
- techtree/receipts/bundle.py +578 -0
- techtree/receipts/compare.py +1065 -0
- techtree/receipts/episode.py +672 -0
- techtree/receipts/execution.py +630 -0
- techtree/receipts/observed.py +474 -0
- techtree/receipts/set.py +336 -0
- techtree/receipts/uplift.py +655 -0
- techtree/receipts/verify.py +1055 -0
- techtree/release/__init__.py +9 -0
- techtree/release/bootstrap.py +509 -0
- techtree/release/checks.py +376 -0
- techtree/release/document.py +125 -0
- techtree/release/generate.py +221 -0
- techtree/release/models.py +293 -0
- techtree/release/provenance.py +109 -0
- techtree/resources/catalog/campaigns/hello-world-climb.json +1 -0
- techtree/resources/catalog/catalog.json +32 -0
- techtree/resources/catalog/climbs/hello-world-climb.json +1 -0
- techtree/resources/catalog/data-policies/hello-world-climb.json +1 -0
- techtree/resources/catalog/taskset-validations/hello-world-climb.json +1 -0
- techtree/resources/catalog/validation-evidence/hello-world-climb.json +1 -0
- techtree/resources/engines/default/engine.json +20 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/procedure_transfer_v1/__init__.py +7 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/procedure_transfer_v1/algorithm.py +136 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/procedure_transfer_v1/dataset.py +156 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/procedure_transfer_v1/env.py +48 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/procedure_transfer_v1/taskset.py +163 -0
- techtree/resources/engines/default/packages/procedure-transfer-v1/pyproject.toml +13 -0
- techtree/resources/engines/default/pyproject.toml +23 -0
- techtree/resources/engines/default/tools/inspect_taskset.py +124 -0
- techtree/resources/engines/default/tools/normalize_eval_output.py +470 -0
- techtree/resources/engines/default/tools/normalize_validation.py +222 -0
- techtree/resources/engines/default/uv.lock +1758 -0
- techtree/resources/harness/hermes-agent-0.19.0.json +69 -0
- techtree/resources/release/build-provenance.json +4 -0
- techtree/resources/release/release-core.json +24 -0
- techtree/runs/__init__.py +31 -0
- techtree/runs/artifacts.py +750 -0
- techtree/runs/child_registry.py +228 -0
- techtree/runs/events.py +478 -0
- techtree/runs/executor.py +140 -0
- techtree/runs/fake.py +741 -0
- techtree/runs/launcher.py +253 -0
- techtree/runs/machine.py +489 -0
- techtree/runs/real.py +789 -0
- techtree/runs/service.py +616 -0
- techtree/runs/store.py +555 -0
- techtree/runs/validation.py +259 -0
- techtree/runs/variants.py +684 -0
- techtree/settings.py +143 -0
- techtree/skills/__init__.py +14 -0
- techtree/skills/archive.py +282 -0
- techtree/skills/policy.py +62 -0
- techtree/skills/scanner.py +394 -0
- techtree/skills/service.py +752 -0
- techtree/skills/starter.py +434 -0
- techtree/tasksets/__init__.py +1 -0
- techtree/tasksets/membership.py +269 -0
- techtree/tasksets/provider.py +207 -0
- techtree/tasksets/resolver.py +311 -0
- techtree/tasksets/service.py +484 -0
- techtree/tasksets/verifiers_cli.py +538 -0
- techtree/uplift/__init__.py +20 -0
- techtree/uplift/context.py +544 -0
- techtree/uplift/derive.py +203 -0
- techtree/uplift/public_tasks.py +151 -0
- techtree/uplift/service.py +719 -0
- techtree/uplift/source.py +160 -0
- techtree/verifiers/__init__.py +31 -0
- techtree/verifiers/budget.py +219 -0
- techtree/verifiers/child.py +633 -0
- techtree/verifiers/compiler.py +432 -0
- techtree/verifiers/config.py +365 -0
- techtree/verifiers/credentials.py +321 -0
- techtree/verifiers/image.py +126 -0
- techtree/verifiers/models.py +527 -0
- techtree/verifiers/outputs.py +368 -0
- techtree/verifiers/progress.py +192 -0
- techtree/verifiers/supervisor.py +341 -0
- techtree/verifiers/verify.py +782 -0
- techtree/version.py +39 -0
- techtree/worker/__init__.py +18 -0
- techtree/worker/execute.py +487 -0
- techtree/worker/main.py +57 -0
- techtree-0.1.0.dist-info/METADATA +344 -0
- techtree-0.1.0.dist-info/RECORD +174 -0
- techtree-0.1.0.dist-info/WHEEL +4 -0
- techtree-0.1.0.dist-info/entry_points.txt +3 -0
- techtree-0.1.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"harness_id": "hermes-agent",
|
|
3
|
+
"harness_version": "0.19.0",
|
|
4
|
+
"recorded_from": "the WP6c paid probes of 2026-08-13 and the WP11 acceptance comparison, which offered an identical surface",
|
|
5
|
+
"schema_version": "techtree.harness-conformance.v1alpha1",
|
|
6
|
+
"skill_index_tool": "skill_manage",
|
|
7
|
+
"tools": [
|
|
8
|
+
{
|
|
9
|
+
"name": "delegate_task",
|
|
10
|
+
"parameters_digest": "sha256:13eead2bbea0ffda081c86cca20b52b7e1bdb8fa8de0a4aa4cdb8036c578b4bc"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"name": "execute_code",
|
|
14
|
+
"parameters_digest": "sha256:95906f90716a48b6ab95738056315ab1d565e31894b2e3f9508ba03c32d7a76b"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "memory",
|
|
18
|
+
"parameters_digest": "sha256:3ddbf0c04cc580177048062b57a7dba80c72284243a6b7cdc7a60d1b13c03307"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "patch",
|
|
22
|
+
"parameters_digest": "sha256:be197048bc5ffffafdb754e9c424df2a7f29a4a43c757f892467ffdefc442f30"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "process",
|
|
26
|
+
"parameters_digest": "sha256:f4c9f9214c8ad482b275a6b8a0cb756319e21d4ac1bfaa1fe7f281d31ee8301f"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "read_file",
|
|
30
|
+
"parameters_digest": "sha256:cb38b632732acc596fd5f5d3f0b33644c0ad5b3354ac01e82b1b238c7f3b7122"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "search_files",
|
|
34
|
+
"parameters_digest": "sha256:853033131cf11f9db86cf043b6ba8b23445f328baa9d11072ce8a82de81da6cf"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "session_search",
|
|
38
|
+
"parameters_digest": "sha256:9092600f7504b88a1bbb6348c957aec52ac387c7a02f50605e96c65ebc3f8ebe"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"name": "skill_manage",
|
|
42
|
+
"parameters_digest": "sha256:9b3b5fa010e839f04430999946d7c8d3a0fee425740e337c77af12799177e56d"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"name": "skill_view",
|
|
46
|
+
"parameters_digest": "sha256:2baab7037c7ec14eb9e9476d31d2a49844158d0161420307dd0e6d28e77c8fb5"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "skills_list",
|
|
50
|
+
"parameters_digest": "sha256:d577f592e050f14fc397ac2f9865984beaa09dccf56caeacef2ff99e6aa9204c"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "terminal",
|
|
54
|
+
"parameters_digest": "sha256:439982c1434ccdc7b7f5b968fb2d4474a8557483528e5a1bbc6dc703f23108a8"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "todo",
|
|
58
|
+
"parameters_digest": "sha256:0ee6425f020b1f539ee1e74ad011b0ab7255cf4643be34ce1b651ee7f0213b1e"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "vision_analyze",
|
|
62
|
+
"parameters_digest": "sha256:59f8105711073175ad5cf040d2c97c3bfbf359793fbb26a3fcaaea7d17dee013"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "write_file",
|
|
66
|
+
"parameters_digest": "sha256:90cce6e84b9b53a665d4dd69060eea52b3fe99fbe0b6642e17fef86fd441d9e3"
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"catalog_digest": "sha256:10a7fcc5de1951c14509947c0512a4eeb247a703cdf01cc3f268580979a7d12c",
|
|
3
|
+
"cli_version": "0.1.0",
|
|
4
|
+
"engine_digest": "sha256:29b1bbb8327d8f1a9ade03ff4504695ad3783ae34aaaa559e5c6bf9fc95e879b",
|
|
5
|
+
"intro_climb_reference": "hello-world-climb@1",
|
|
6
|
+
"maximum_tested_host_hermes_version": "0.20.1",
|
|
7
|
+
"minimum_host_hermes_version": "0.20.1",
|
|
8
|
+
"protocol_version": "v1alpha1",
|
|
9
|
+
"publication": {
|
|
10
|
+
"network_key": {
|
|
11
|
+
"algorithm": "ed25519",
|
|
12
|
+
"key_id": "sha256:84ea8ffad2b0fc59f9db9f14b7d97f25c060e71b644dec316ecd582ac040b966",
|
|
13
|
+
"public_key": "FbKdOrQUNLohljAE31P5ts99ynqvGpesCktW3aez0I4="
|
|
14
|
+
},
|
|
15
|
+
"public_log_url": "https://techtree.sh/runs",
|
|
16
|
+
"submission_endpoint": "https://techtree.sh/api/v1/publications"
|
|
17
|
+
},
|
|
18
|
+
"release_id": "climb-v0.1.0",
|
|
19
|
+
"schema_version": "techtree.release-core.v1",
|
|
20
|
+
"skill_improver_digest": "sha256:d5a381bed8ae5ddd5bbd6035775154dc47d2cb11b1da14f11d30ed47ff371678",
|
|
21
|
+
"starter_skill_digest": "sha256:596d1368ac157975accce7ceff835eed6bfb789eaf68528a0aefa25a68793b0b",
|
|
22
|
+
"starter_skill_object_url": "https://techtree.sh/api/v1/objects/sha256:2aff27070177d9f37b99d5bef6fa372586887e78180005195cb808971ae55a4c",
|
|
23
|
+
"subject_hermes_version": "0.19.0"
|
|
24
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"""The run event log, its state machine, and the store that owns both.
|
|
2
|
+
|
|
3
|
+
Spec section 18.
|
|
4
|
+
|
|
5
|
+
A run is a long-lived thing executed by a separate process, watched by a
|
|
6
|
+
command-line client that comes and goes. Nothing in that arrangement lets the
|
|
7
|
+
two share memory, so the run's history is the only thing they can both trust:
|
|
8
|
+
every fact about a run is first appended to ``events.jsonl`` and only then
|
|
9
|
+
projected into ``state.json``. The projection is a cache. The log is the truth.
|
|
10
|
+
|
|
11
|
+
Three modules divide the work:
|
|
12
|
+
|
|
13
|
+
:mod:`techtree.runs.events`
|
|
14
|
+
Bytes. Appending one line durably, reading the log back, and refusing a log
|
|
15
|
+
whose sequence numbers skip.
|
|
16
|
+
|
|
17
|
+
:mod:`techtree.runs.machine`
|
|
18
|
+
Meaning. Which phase may follow which, and how a list of events becomes one
|
|
19
|
+
``RunState``.
|
|
20
|
+
|
|
21
|
+
:mod:`techtree.runs.store`
|
|
22
|
+
Placement and mutual exclusion. Where each file lives under
|
|
23
|
+
``runs/<run-id>/``, and the per-run lock every writer passes through.
|
|
24
|
+
|
|
25
|
+
The narrative version, including heartbeat, PID, cancellation, and recovery
|
|
26
|
+
semantics, is in ``docs/run-state-machine.md``.
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
from __future__ import annotations
|
|
30
|
+
|
|
31
|
+
__all__: list[str] = []
|