Teach leoclean external doctrine framing (#67)
Some checks are pending
CI / lint-and-test (push) Waiting to run
Some checks are pending
CI / lint-and-test (push) Waiting to run
This commit is contained in:
parent
93c480ea3c
commit
4a035d8727
3 changed files with 60 additions and 0 deletions
|
|
@ -82,6 +82,30 @@ Use this bridge before answering when the user asks:
|
||||||
- how to approve/edit/retire/supersede a claim;
|
- how to approve/edit/retire/supersede a claim;
|
||||||
- what the schema-backed soul/context says about roles, peers, blindspots, strategy, rules, or reasoning tools.
|
- what the schema-backed soul/context says about roles, peers, blindspots, strategy, rules, or reasoning tools.
|
||||||
|
|
||||||
|
## External Doctrine Contributions
|
||||||
|
|
||||||
|
When asked to help with another project's declaration, constitution, doctrine,
|
||||||
|
manifesto, GitHub issue, or PR, do not export Teleo doctrine as if it is the
|
||||||
|
target project's own position.
|
||||||
|
|
||||||
|
Use the target project's native language first. If the external text says
|
||||||
|
phrases like `no single voice can own understanding`, `purpose precedes
|
||||||
|
capability`, or another local principle, treat those as the wedge. Frame Leo's
|
||||||
|
contribution as:
|
||||||
|
|
||||||
|
```text
|
||||||
|
This extends your own principle <X> into <specific operational question>.
|
||||||
|
```
|
||||||
|
|
||||||
|
Prefer issue-before-PR unless the operator explicitly authorizes a PR. The
|
||||||
|
issue should ask a concrete question, identify the gap, and invite the target
|
||||||
|
community to decide whether they want draft language. Link Teleo analysis only
|
||||||
|
as one reference, not as controlling doctrine.
|
||||||
|
|
||||||
|
Consent is action-specific. Leo may draft, critique, and propose language in
|
||||||
|
chat. Leo should not sign, post, submit, open an issue/PR, or speak for Teleo
|
||||||
|
publicly without explicit operator authorization for that exact public action.
|
||||||
|
|
||||||
## Memory vs KB Rule
|
## Memory vs KB Rule
|
||||||
|
|
||||||
Do not treat runtime memory as canonical truth.
|
Do not treat runtime memory as canonical truth.
|
||||||
|
|
|
||||||
|
|
@ -90,6 +90,30 @@ Next admin action: approve/apply the proposal, request edits, or create the miss
|
||||||
Do not call an approved proposal "implemented" until canonical `public.*` rows
|
Do not call an approved proposal "implemented" until canonical `public.*` rows
|
||||||
and edges show the applied state.
|
and edges show the applied state.
|
||||||
|
|
||||||
|
## External Doctrine Contributions
|
||||||
|
|
||||||
|
When asked to help with another project's declaration, constitution, doctrine,
|
||||||
|
manifesto, GitHub issue, or PR, do not export Teleo doctrine as if it is the
|
||||||
|
target project's own position.
|
||||||
|
|
||||||
|
Use the target project's native language first. If the external text says
|
||||||
|
phrases like `no single voice can own understanding`, `purpose precedes
|
||||||
|
capability`, or another local principle, treat those as the wedge. Frame Leo's
|
||||||
|
contribution as:
|
||||||
|
|
||||||
|
```text
|
||||||
|
This extends your own principle <X> into <specific operational question>.
|
||||||
|
```
|
||||||
|
|
||||||
|
Prefer issue-before-PR unless the operator explicitly authorizes a PR. The
|
||||||
|
issue should ask a concrete question, identify the gap, and invite the target
|
||||||
|
community to decide whether they want draft language. Link Teleo analysis only
|
||||||
|
as one reference, not as controlling doctrine.
|
||||||
|
|
||||||
|
Consent is action-specific. Leo may draft, critique, and propose language in
|
||||||
|
chat. Leo should not sign, post, submit, open an issue/PR, or speak for Teleo
|
||||||
|
publicly without explicit operator authorization for that exact public action.
|
||||||
|
|
||||||
## Memory vs KB Rule
|
## Memory vs KB Rule
|
||||||
|
|
||||||
Do not treat runtime memory as canonical truth.
|
Do not treat runtime memory as canonical truth.
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,18 @@ def test_gcp_kb_skill_keeps_claim_links_and_backtick_rendering() -> None:
|
||||||
assert "wrap claim IDs, proposal IDs" in text
|
assert "wrap claim IDs, proposal IDs" in text
|
||||||
|
|
||||||
|
|
||||||
|
def test_leoclean_kb_skills_anchor_external_doctrine_in_target_project_language() -> None:
|
||||||
|
for surface in ("vps", "gcp"):
|
||||||
|
text = (SKILL_ROOT / surface / "teleo-kb-bridge" / "SKILL.md").read_text()
|
||||||
|
|
||||||
|
assert "External Doctrine Contributions" in text
|
||||||
|
assert "Use the target project's native language first" in text
|
||||||
|
assert "no single voice can own understanding" in text
|
||||||
|
assert "purpose precedes" in text
|
||||||
|
assert "Prefer issue-before-PR" in text
|
||||||
|
assert "Consent is action-specific" in text
|
||||||
|
|
||||||
|
|
||||||
def test_vps_live_telegram_skill_uses_systemd_for_gateway_liveness() -> None:
|
def test_vps_live_telegram_skill_uses_systemd_for_gateway_liveness() -> None:
|
||||||
text = (SKILL_ROOT / "vps" / "live-leo-telegram" / "SKILL.md").read_text()
|
text = (SKILL_ROOT / "vps" / "live-leo-telegram" / "SKILL.md").read_text()
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue