apsimo-hermes 1.3.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.
- apsimo_hermes/SUPPLIED-INPUT.md +84 -0
- apsimo_hermes/__init__.py +2921 -0
- apsimo_hermes/apsimo_hostworker/__init__.py +18 -0
- apsimo_hermes/apsimo_hostworker/catalog.py +754 -0
- apsimo_hermes/apsimo_hostworker/contract.py +402 -0
- apsimo_hermes/client.py +1855 -0
- apsimo_hermes/commitment_work.py +171 -0
- apsimo_hermes/compat.py +53 -0
- apsimo_hermes/completed_reports.py +84 -0
- apsimo_hermes/contacts.py +32 -0
- apsimo_hermes/draft_artifacts.py +98 -0
- apsimo_hermes/environment.py +43 -0
- apsimo_hermes/events.py +19 -0
- apsimo_hermes/evidence.py +98 -0
- apsimo_hermes/executions.py +269 -0
- apsimo_hermes/followups.py +105 -0
- apsimo_hermes/initiative_work.py +212 -0
- apsimo_hermes/input_provenance.py +428 -0
- apsimo_hermes/judgments.py +77 -0
- apsimo_hermes/local_work.py +201 -0
- apsimo_hermes/local_work_runner.py +200 -0
- apsimo_hermes/model_response.py +10 -0
- apsimo_hermes/naming.py +105 -0
- apsimo_hermes/native_drafts.py +342 -0
- apsimo_hermes/native_input.py +75 -0
- apsimo_hermes/native_memory.py +137 -0
- apsimo_hermes/native_scope.py +23 -0
- apsimo_hermes/native_task_platform.py +519 -0
- apsimo_hermes/plugin.yaml +14 -0
- apsimo_hermes/request_capabilities.py +100 -0
- apsimo_hermes/request_memory.py +738 -0
- apsimo_hermes/request_work.py +132 -0
- apsimo_hermes/review.py +85 -0
- apsimo_hermes/review_evaluation.py +227 -0
- apsimo_hermes/review_evidence.py +68 -0
- apsimo_hermes/review_worker.py +229 -0
- apsimo_hermes/runtime_models.py +53 -0
- apsimo_hermes/slash.py +34 -0
- apsimo_hermes/source_annotate.py +38 -0
- apsimo_hermes/source_forget.py +24 -0
- apsimo_hermes/source_read.py +138 -0
- apsimo_hermes/task_controller.py +388 -0
- apsimo_hermes/task_handoffs.py +450 -0
- apsimo_hermes/task_sources.py +191 -0
- apsimo_hermes-1.3.0.dist-info/METADATA +676 -0
- apsimo_hermes-1.3.0.dist-info/RECORD +59 -0
- apsimo_hermes-1.3.0.dist-info/WHEEL +5 -0
- apsimo_hermes-1.3.0.dist-info/entry_points.txt +7 -0
- apsimo_hermes-1.3.0.dist-info/licenses/LICENSE +21 -0
- apsimo_hermes-1.3.0.dist-info/top_level.txt +4 -0
- apsimo_memory/SKILL.md +61 -0
- apsimo_memory/__init__.py +74 -0
- apsimo_memory/cli.py +180 -0
- apsimo_memory/plugin.yaml +13 -0
- apsimo_memory/provider.py +2645 -0
- colony_hermes/__init__.py +5 -0
- colony_hermes/plugin.yaml +14 -0
- colony_memory/__init__.py +4 -0
- colony_memory/plugin.yaml +13 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Already captured host input
|
|
2
|
+
|
|
3
|
+
An authenticated host may run an existing native task inside
|
|
4
|
+
`apsimo_hermes.input_provenance.supplied_input(contact_id=..., session_id=...,
|
|
5
|
+
input_refs=[...], source_refs=[...])`. The caller must first validate the
|
|
6
|
+
participant, original input hashes and current inherited source revisions.
|
|
7
|
+
`contact_id` is a consistency check, never an authority grant. Ordinary native
|
|
8
|
+
participant and tool authority still apply.
|
|
9
|
+
|
|
10
|
+
`session_id` is the new native root session. Each input reference contains
|
|
11
|
+
`source_id` and `input_message_hash`; each source reference contains `source_id`
|
|
12
|
+
and `source_version`. These are exact lowercase SHA-256 hashes, not a topic or
|
|
13
|
+
a textual provenance claim. Native child turns inherit only a valid bound
|
|
14
|
+
parent scope. The context resets on exit, and copied worker contexts cannot
|
|
15
|
+
continue after that exit.
|
|
16
|
+
|
|
17
|
+
The host may use Hermes's `persist_user_message` to display the original human
|
|
18
|
+
input while the actual request contains a derived task. The adapter records
|
|
19
|
+
only the assistant source, with the original input dependencies and inherited
|
|
20
|
+
source dependencies. It does not add the task wrapper as human testimony.
|
|
21
|
+
From 1.0.33, this validated assistant-only output is retained even when the
|
|
22
|
+
native platform is excluded from automatic ordinary turn capture. The platform
|
|
23
|
+
filter still excludes ordinary turns without supplied input; the exception
|
|
24
|
+
does not grant participant or tool authority.
|
|
25
|
+
Inherited handles are labelled as unopened evidence and become available to
|
|
26
|
+
the scoped source reader only after their exact host-appended block reaches
|
|
27
|
+
the actual native request. Quoted marker text cannot add host handles.
|
|
28
|
+
|
|
29
|
+
Existing erasure reconciliation runs before requests, tools and the final
|
|
30
|
+
writer. `handoff.result` is populated only after the dependent assistant
|
|
31
|
+
envelope is durably queued; it is not a claim of backend delivery. It contains
|
|
32
|
+
the native session/turn and exact input/source dependencies. The host must
|
|
33
|
+
revalidate these before delayed result exposure, playback or further effects.
|
|
34
|
+
Canonical deletion follows recorded dependencies; arbitrary paraphrases,
|
|
35
|
+
native transcript files and archived copies remain outside this guarantee.
|
|
36
|
+
|
|
37
|
+
`handoff.failure` is either `None` or a typed summary containing `reason`,
|
|
38
|
+
`admitted` and `retryable`. A timeout or network failure during source freshness
|
|
39
|
+
verification reports `source_freshness_unavailable`. Only a failure before any
|
|
40
|
+
successful source admission has `retryable: true`. Confirmed erasure, invalid
|
|
41
|
+
scope, HTTP authorization failures and other unknown failures are not retryable.
|
|
42
|
+
Later successful verification never reopens the failed scope. The request stays
|
|
43
|
+
without source content or tools; transient verification is described as temporary,
|
|
44
|
+
not as a claim that the source was deleted.
|
|
45
|
+
|
|
46
|
+
A host may use that exact initial-failure result to start one fresh native task
|
|
47
|
+
under its existing deadline, after revalidating the original source envelope.
|
|
48
|
+
It must rebuild the agent and supplied-input scope so native prefetch and inherited
|
|
49
|
+
context run again. This adapter does not retry tasks, extend their budgets or
|
|
50
|
+
authorize replay after any successful admission or possible tool effect.
|
|
51
|
+
|
|
52
|
+
When `execution_registry_enabled` is true, a source-checked root execution also
|
|
53
|
+
retains these input IDs and hashes in its existing operational metadata. The
|
|
54
|
+
work reader opens a current, viewer-scoped excerpt of the original input, up to
|
|
55
|
+
240 characters, so another session can identify the request associated with
|
|
56
|
+
that execution. Long inputs and multiple input parents are marked partial.
|
|
57
|
+
This is an attributed request, not proof of task performance, a current task
|
|
58
|
+
plan, or a delegated child's assignment. Unbound executions keep unknown
|
|
59
|
+
purpose; task wrappers and process commands never supply a substitute.
|
|
60
|
+
|
|
61
|
+
The registered request adapter opts in with `input_context=true`, then includes
|
|
62
|
+
any displayed excerpt in the existing source-freshness check and answer
|
|
63
|
+
lineage. Older adapters receive operational metadata only. The registry stores
|
|
64
|
+
no excerpt text. Erased or inaccessible inputs disappear on the next read;
|
|
65
|
+
annotated inputs require the canonical source reader instead of a clipped work
|
|
66
|
+
label that could omit the correction. Active work and ancestry are selected
|
|
67
|
+
before optional excerpts within the same eight-record, 4,000-character budget.
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
Registered native platforms may wrap their actual message handler in
|
|
71
|
+
`transport_input(contact_id=..., platform=..., input_refs=..., source_refs=...)`
|
|
72
|
+
before Hermes allocates a session. Only the first independently authenticated
|
|
73
|
+
root turn on that platform can bind the scope. Wrap the execution handler,
|
|
74
|
+
including startup resume, rather than the earlier admission callback. Persist
|
|
75
|
+
`result` before the wrapper exits because native delivery runs afterwards.
|
|
76
|
+
Detached children cannot retain a scope after its owning handler closes.
|
|
77
|
+
|
|
78
|
+
An automatic resume can set the optional bounded `recall_query` to its already
|
|
79
|
+
validated original input. The memory provider uses it only after normal
|
|
80
|
+
participant checks, and only for a bound root session. Child queries remain
|
|
81
|
+
independent. This preserves Hermes' empty-event automatic continuation semantics
|
|
82
|
+
while retrieving task-relevant current evidence. Exact native plain-user-tail
|
|
83
|
+
merges preserve only the current observed recall suffix; historical rows still
|
|
84
|
+
receive ordinary erasure filtering before the wire row is recombined.
|