Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
{
"name": "agentic-engineering",
"description": "The autonomous engineering system for repository portfolios — engineer, read-only surveyor, and meta-engineer agents; portfolio, product, spend, and improvement workflows; cross-tool instruction architecture and skill discovery; configured by the consumer AGENTS.md",
"version": "4.1.2",
"version": "4.1.3",
"source": "./plugins/agentic-engineering"
},
{
Expand Down
2 changes: 1 addition & 1 deletion .github/plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
{
"name": "agentic-engineering",
"description": "The autonomous engineering system for repository portfolios — engineer, read-only surveyor, and meta-engineer agents; portfolio, product, spend, and improvement workflows; cross-tool instruction architecture and skill discovery; configured by the consumer AGENTS.md",
"version": "4.1.2",
"version": "4.1.3",
"source": "./plugins/agentic-engineering"
},
{
Expand Down
2 changes: 1 addition & 1 deletion plugins/agentic-engineering/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "agentic-engineering",
"description": "The autonomous engineering system for repository portfolios — engineer, read-only surveyor, and meta-engineer agents; portfolio, product, spend, and improvement workflows; cross-tool instruction architecture and skill discovery; configured by the consumer AGENTS.md",
"version": "4.1.2",
"version": "4.1.3",
"author": {
"name": "devantler-tech",
"url": "https://github.com/devantler-tech"
Expand Down
7 changes: 5 additions & 2 deletions plugins/agentic-engineering/agents/agentic-engineer.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,11 @@ instead.
invoking it. When the runtime exposes no per-call setting, use an equivalent bounded process
supervisor that preserves output and exit status; when neither control exists, split the command
into bounded targets or record the missing capability rather than launching a known-too-long
command. This does not authorize a long foreground remote-state poll, retry, or sleep loop. Keep
remote waits asynchronous where the runtime supports it and keep doing useful work.
command. **Never foreground-wait on remote state.** **Keep remote waits asynchronous:** for CI,
review, merge, or deploy state, arm
at most one detached watcher when the runtime supports it; never run a foreground polling or
sleep loop, and never poll beside an armed watcher. Continue with other actionable work. If none
Comment thread
devantler marked this conversation as resolved.
Outdated
remains, end the run and let the next scheduled tick collect the result.
Comment thread
devantler marked this conversation as resolved.
Outdated
Comment thread
devantler marked this conversation as resolved.
Outdated
8. **Spend context deliberately.** Delegate the survey to the read-only **`portfolio-surveyor`**
subagent (your runtime may expose this bundled agent under a plugin-scoped name — e.g.
`agentic-engineering:portfolio-surveyor` — so select it by whatever qualified
Expand Down
2 changes: 1 addition & 1 deletion plugins/agentic-engineering/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "agentic-engineering",
"description": "The autonomous engineering system for repository portfolios — engineer, read-only surveyor, and meta-engineer agents; portfolio, product, spend, and improvement workflows; cross-tool instruction architecture and skill discovery; configured by the consumer AGENTS.md",
"version": "4.1.2",
"version": "4.1.3",
"author": {
"name": "devantler-tech",
"url": "https://github.com/devantler-tech"
Expand Down
13 changes: 13 additions & 0 deletions scripts/validate-manifests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -774,6 +774,19 @@ validate_desired_state_resources() {
fi
done

for remote_wait_marker in \
'**Never foreground-wait on remote state.**' \
'at most one detached watcher' \
'end the run and let the next scheduled tick collect'; do
Comment thread
devantler marked this conversation as resolved.
Outdated
if [ ! -f "$plugin_dir/agents/$entrypoint.agent.md" ] \
|| ! grep -qF "$remote_wait_marker" \
"$plugin_dir/agents/$entrypoint.agent.md"; then
echo "::error::$resource: agentic-engineer must forbid foreground remote waits, missing: $remote_wait_marker"
failed=1
resource_failed=1
fi
done

Comment thread
coderabbitai[bot] marked this conversation as resolved.
Outdated
if [ ! -f "$plugin_dir/agents/agent-improver.agent.md" ] \
|| ! grep -qF "## Delivery ownership — finding to fix" \
"$plugin_dir/agents/agent-improver.agent.md"; then
Expand Down
15 changes: 15 additions & 0 deletions scripts/validate-manifests.test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -570,6 +570,9 @@ Use a **bounded tool timeout** from the **measured repository or CI duration** p
When the runtime exposes no per-call setting, use an equivalent bounded process supervisor.
Keep remote waits asynchronous.

**Never foreground-wait on remote state.** Arm at most one detached watcher.
Comment thread
devantler marked this conversation as resolved.
Outdated
If no other work remains, end the run and let the next scheduled tick collect the result.

## Spend stewardship

- **You never move money.**
Expand Down Expand Up @@ -964,6 +967,18 @@ for deadline_marker in \
"agentic-engineer must bound expected-to-run-long local commands" "$d"
done

for remote_wait_marker in \
'Never foreground-wait on remote state' \
'at most one detached watcher' \
'end the run and let the next scheduled tick collect'; do
d=$(fresh); make_desired_state "$d" alpha
grep -vF "$remote_wait_marker" \
"$d/plugins/alpha/agents/agentic-engineer.agent.md" > "$d/tmp" \
&& mv "$d/tmp" "$d/plugins/alpha/agents/agentic-engineer.agent.md"
check_fail "Agentic Engineer requires remote wait marker: $remote_wait_marker" \
"agentic-engineer must forbid foreground remote waits" "$d"
done

d=$(fresh); make_desired_state "$d" alpha
jq '.spec.guardrails |= map(select(startswith("Write-capable roles own selected engineering work") | not))' \
"$d/plugins/alpha/resources/provider-neutral.desired-state.json" > "$d/tmp" \
Expand Down
Loading