docs(prd): assign PRD number 0082
lint / lint (push) Successful in 3m6s
test / coverage (pull_request) Blocked by required conditions
prd-number-check / require-numbered-prds (pull_request) Successful in 7s
tracker-policy-pr / check-pr (pull_request) Successful in 8s
test / unit (pull_request) Successful in 48s
test / image-input-builds (pull_request) Successful in 38s
test / integration-docker (pull_request) Has been cancelled
lint / lint (push) Successful in 3m6s
test / coverage (pull_request) Blocked by required conditions
prd-number-check / require-numbered-prds (pull_request) Successful in 7s
tracker-policy-pr / check-pr (pull_request) Successful in 8s
test / unit (pull_request) Successful in 48s
test / image-input-builds (pull_request) Successful in 38s
test / integration-docker (pull_request) Has been cancelled
CI (prd-number-check) rejects unnumbered prd-new-*.md on merge to main. Rename docs/prds/prd-new-trusted-agent-forge-identity.md to 0082-trusted-agent-forge-identity.md (0081 is claimed by #517/#519) and update the in-repo 'PRD prd-new-trusted-agent-forge-identity' citations to 'PRD 0082'. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
"""Unit: trusted agent forge identity & guidance
|
||||
(PRD prd-new-trusted-agent-forge-identity).
|
||||
(PRD 0082).
|
||||
|
||||
Covers the net-new surface: agent `author`, agent `forge-accounts` (Gitea API
|
||||
URL validation + host token reference), the repo→forge association resolved at
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Unit: agent-owned identity via `author` (PRD
|
||||
prd-new-trusted-agent-forge-identity).
|
||||
0082).
|
||||
|
||||
Identity is agent-only now: an agent file declares an `author` block
|
||||
(name + email, both required) and at `ManifestIndex.load_for_agent()`
|
||||
|
||||
@@ -132,7 +132,7 @@ class TestExtendsEnvMerge(unittest.TestCase):
|
||||
class TestExtendsGitMerge(unittest.TestCase):
|
||||
"""git-gate.repos merges by name, with same-name child entries
|
||||
merging field-by-field (child wins). Bottles no longer carry a user
|
||||
identity (PRD prd-new-trusted-agent-forge-identity), so only repos
|
||||
identity (PRD 0082), so only repos
|
||||
merging is meaningful across extends chains."""
|
||||
|
||||
_GIT_ENTRY_A = {"url": "ssh://git@host-a/a.git", "key": {"provider": "static", "path": "/dev/null"}}
|
||||
@@ -339,7 +339,7 @@ class TestExtendsEgressMerge(unittest.TestCase):
|
||||
|
||||
class TestExtendsNoBottleUserIdentity(unittest.TestCase):
|
||||
"""Bottles no longer carry a user identity (PRD
|
||||
prd-new-trusted-agent-forge-identity): identity moved to the agent's
|
||||
0082): identity moved to the agent's
|
||||
`author` block. `git-gate.user` on a bottle is rejected outright, and
|
||||
`git_user` is always empty across an extends chain."""
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Unit: agent `author` identity -> bottle.git_user (PRD
|
||||
prd-new-trusted-agent-forge-identity).
|
||||
0082).
|
||||
|
||||
Identity moved off `git-gate.user` (bottle) onto the trusted agent's
|
||||
`author` block. At `load_for_agent` the agent's author populates the
|
||||
|
||||
@@ -72,7 +72,7 @@ class _LazyCase(unittest.TestCase):
|
||||
|
||||
class TestAllAgentNamesLazy(_LazyCase):
|
||||
def test_cwd_agents_ignored_home_only(self) -> None:
|
||||
# Agents are home-only (PRD prd-new-trusted-agent-forge-identity):
|
||||
# Agents are home-only (PRD 0082):
|
||||
# a cwd agents/ dir is warned-and-ignored, so only the home agent
|
||||
# appears in all_agent_names.
|
||||
_write(self.home_cb / "bottles" / "dev.md", _BOTTLE_DEV)
|
||||
@@ -100,7 +100,7 @@ class TestRequireAgentLazy(_LazyCase):
|
||||
self.resolve().require_agent("alpha") # no raise
|
||||
|
||||
def test_cwd_only_agent_not_selectable(self) -> None:
|
||||
# Agents are home-only (PRD prd-new-trusted-agent-forge-identity):
|
||||
# Agents are home-only (PRD 0082):
|
||||
# a cwd-only agent file is never selectable, so require_agent raises.
|
||||
_write(self.home_cb / "agents" / "alpha.md", _AGENT)
|
||||
_write(self.cwd_cb / "agents" / "beta.md", _AGENT)
|
||||
|
||||
@@ -111,7 +111,7 @@ class TestAgentFileParses(_ResolveCase):
|
||||
|
||||
|
||||
class TestCwdAgentIgnoredHomeWins(_ResolveCase):
|
||||
"""SC #3 (revised, PRD prd-new-trusted-agent-forge-identity): agents
|
||||
"""SC #3 (revised, PRD 0082): agents
|
||||
are home-only. A cwd agent file with the same name as a home agent no
|
||||
longer wins — it is warned-and-ignored, so the HOME agent's prompt is
|
||||
used and the home bottle stays intact."""
|
||||
@@ -141,7 +141,7 @@ class TestCwdAgentIgnoredHomeWins(_ResolveCase):
|
||||
class TestCwdBottlesIgnored(_ResolveCase):
|
||||
"""SC #4: a bottles/ dir under $CWD is ignored (with a warn).
|
||||
The home bottle still wins. Under
|
||||
PRD prd-new-trusted-agent-forge-identity a cwd agents/ dir is also
|
||||
PRD 0082 a cwd agents/ dir is also
|
||||
ignored, so $CWD contributes nothing — the filesystem layout is the
|
||||
trust boundary."""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user