fix: update remaining active worker wording

This commit is contained in:
Keisuke Hirata 2026-06-26 01:06:20 +09:00
parent da96d06f25
commit cb0c52e787
No known key found for this signature in database
9 changed files with 21 additions and 21 deletions

View File

@ -1,6 +1,6 @@
# Compaction # Compaction
Compaction exists because long-running Pods need durable continuity without sending the entire transcript forever. Compaction exists because long-running Workers need durable continuity without sending the entire transcript forever.
## Pruning vs compaction ## Pruning vs compaction

View File

@ -6,7 +6,7 @@ The authoritative record for work is still code, git history, work item files, t
## Record types ## Record types
- `summary.md` is resident background context for normal Pods. - `summary.md` is resident background context for normal Workers.
- `decisions/` stores durable decisions that are useful across turns. - `decisions/` stores durable decisions that are useful across turns.
- `requests/` stores durable user requests and preferences. - `requests/` stores durable user requests and preferences.
- `.yoi/knowledge/` stores curated Knowledge records when available. - `.yoi/knowledge/` stores curated Knowledge records when available.

View File

@ -99,7 +99,7 @@ Collision handling:
Discovery is a read-only inventory operation. It may report package metadata, validation errors, source, canonical store path, and deterministic digest. It must not initialize any runtime contribution. Discovery is a read-only inventory operation. It may report package metadata, validation errors, source, canonical store path, and deterministic digest. It must not initialize any runtime contribution.
Enablement is a resolved runtime plan. It should come from Profile/manifest configuration or another explicit local policy layer, then be recorded into the resolved Manifest/session metadata used to start the Worker. Restored Pods should use that resolved enabled-plugin plan instead of silently re-running fresh discovery and picking newer packages. Fresh discovery must not silently upgrade a restored Worker. Enablement is a resolved runtime plan. It should come from Profile/manifest configuration or another explicit local policy layer, then be recorded into the resolved Manifest/session metadata used to start the Worker. Restored Workers should use that resolved enabled-plugin plan instead of silently re-running fresh discovery and picking newer packages. Fresh discovery must not silently upgrade a restored Worker.
A minimal implemented enablement record is shaped like this. `version` is an exact package-version requirement; richer range constraints are deferred. `digest` is optional in authoring config, but fresh startup records the resolved digest into runtime metadata. A minimal implemented enablement record is shaped like this. `version` is an exact package-version requirement; richer range constraints are deferred. `digest` is optional in authoring config, but fresh startup records the resolved digest into runtime metadata.

View File

@ -22,7 +22,7 @@ Directory traversal tools should not follow symlink directories as a way around
## Delegation ## Delegation
Child Pods receive an explicit subset of the parent's scope. Delegation is a capability loan, not a copy of all parent authority. Child Workers receive an explicit subset of the parent's scope. Delegation is a capability loan, not a copy of all parent authority.
When a child stops, shuts down, or is pruned as unreachable, delegated write permissions must be reclaimed. Explicit base denies remain in force. When a child stops, shuts down, or is pruned as unreachable, delegated write permissions must be reclaimed. Explicit base denies remain in force.

View File

@ -4,7 +4,7 @@ Environment variables are a minimized runtime boundary. Prefer explicit profile/
## Why minimize environment variables ## Why minimize environment variables
Ambient environment is hard to audit: it can differ between shells, services, spawned Pods, tests, and restored processes. If important runtime behavior depends on it, reproducing a session becomes harder. Ambient environment is hard to audit: it can differ between shells, services, spawned Workers, tests, and restored processes. If important runtime behavior depends on it, reproducing a session becomes harder.
Yoi keeps environment variables for narrow bootstrap and development cases, while normal provider credentials and runtime configuration should be explicit records. Yoi keeps environment variables for narrow bootstrap and development cases, while normal provider credentials and runtime configuration should be explicit records.

View File

@ -24,14 +24,14 @@ Use the highest-level interface that matches the work:
- Use `yoi panel` for the Ticket/Intake/Orchestrator workspace Dashboard and role-launch actions. - Use `yoi panel` for the Ticket/Intake/Orchestrator workspace Dashboard and role-launch actions.
- Use `yoi objective ...` for lightweight medium-term Objective records and their non-blocking canonical Ticket links. - Use `yoi objective ...` for lightweight medium-term Objective records and their non-blocking canonical Ticket links.
- Inside Pods, use typed Ticket tools to create, inspect, comment, review, and close Tickets. - Inside Workers, use typed Ticket tools to create, inspect, comment, review, and close Tickets.
- For multi-step work, follow the Ticket Intake, Orchestrator Routing, planning/requirements-sync, and Multi-agent workflows. - For multi-step work, follow the Ticket Intake, Orchestrator Routing, planning/requirements-sync, and Multi-agent workflows.
Maintainers can inspect the local `.yoi/tickets/` files directly when debugging storage, but normal user instructions should go through `yoi panel`, Ticket tools, or `yoi ticket ...`. Maintainers can inspect the local `.yoi/tickets/` files directly when debugging storage, but normal user instructions should go through `yoi panel`, Ticket tools, or `yoi ticket ...`.
## Ticket tools inside Pods ## Ticket tools inside Workers
Pods with the Ticket built-in feature can use typed Ticket tools: Workers with the Ticket built-in feature can use typed Ticket tools:
- `TicketCreate` - `TicketCreate`
- `TicketList` — lightweight bounded overview for selecting ids; it returns short summaries only and must not be used as body/thread/artifact authority. - `TicketList` — lightweight bounded overview for selecting ids; it returns short summaries only and must not be used as body/thread/artifact authority.
@ -195,7 +195,7 @@ Intake should:
- draft background, requirements, acceptance criteria, binding decisions/invariants, implementation latitude, readiness, risk flags, and validation; - draft background, requirements, acceptance criteria, binding decisions/invariants, implementation latitude, readiness, risk flags, and validation;
- create or update the Ticket only after user agreement. - create or update the Ticket only after user agreement.
Intake should not schedule implementation, spawn coder/reviewer Pods, create worktrees, merge, or close Tickets. Intake should not schedule implementation, spawn coder/reviewer Workers, create worktrees, merge, or close Tickets.
### 2. Orchestrator routing ### 2. Orchestrator routing
@ -226,7 +226,7 @@ Planning sync should resolve or record:
- critical risks and failure modes; - critical risks and failure modes;
- implementation-ready vs requirements-sync/spike/blocked classification. - implementation-ready vs requirements-sync/spike/blocked classification.
Do not send Tickets with unresolved concrete missing decisions/information directly to coder Pods. If no concrete missing item remains after bounded checks, risky-but-specified Tickets should proceed with an IntentPacket plus escalation conditions and reviewer focus. Do not send Tickets with unresolved concrete missing decisions/information directly to coder Workers. If no concrete missing item remains after bounded checks, risky-but-specified Tickets should proceed with an IntentPacket plus escalation conditions and reviewer focus.
### 4. Implementation assignment ### 4. Implementation assignment

View File

@ -17,7 +17,7 @@ Current workflow themes include:
- sibling coder/reviewer Worker orchestration - sibling coder/reviewer Worker orchestration
- human-gated maintenance and merge readiness - human-gated maintenance and merge readiness
## Child Pods ## Child Workers
Spawned Workers are useful for scoped implementation, review, or exploration. They are not independent project authorities. Spawned Workers are useful for scoped implementation, review, or exploration. They are not independent project authorities.
@ -35,7 +35,7 @@ Notifications are hints to inspect state. They are not proof of completion.
Unless explicitly authorized otherwise, final merge, cleanup, design-boundary decisions, and ticket closure remain the orchestrator/human responsibility. Unless explicitly authorized otherwise, final merge, cleanup, design-boundary decisions, and ticket closure remain the orchestrator/human responsibility.
Child Pods may commit in delegated worktrees when the workflow allows it, but the merge-ready dossier should make the final decision auditable from repository records. Child Workers may commit in delegated worktrees when the workflow allows it, but the merge-ready dossier should make the final decision auditable from repository records.
## Public and dogfood workflow split ## Public and dogfood workflow split

View File

@ -40,10 +40,10 @@ fn rendered_ticket_row(
} }
} }
fn rendered_pod_row(name: &str) -> RenderedPanelRow { fn rendered_worker_row(name: &str) -> RenderedPanelRow {
RenderedPanelRow { RenderedPanelRow {
key: PanelRowKey { key: PanelRowKey {
kind: "pod".to_string(), kind: "worker".to_string(),
id: name.to_string(), id: name.to_string(),
}, },
title: name.to_string(), title: name.to_string(),
@ -74,7 +74,7 @@ fn ready_snapshot(rows: Vec<RenderedPanelRow>) -> DashboardContentReady {
orchestrator: Some(DashboardOrchestratorState { orchestrator: Some(DashboardOrchestratorState {
worker_name: "workspace-orchestrator".to_string(), worker_name: "workspace-orchestrator".to_string(),
status: "unavailable".to_string(), status: "unavailable".to_string(),
detail: Some("fixture blocks host Pod launch".to_string()), detail: Some("fixture blocks host Worker launch".to_string()),
}), }),
diagnostics: vec![], diagnostics: vec![],
}, },
@ -106,7 +106,7 @@ fn panel_fixture_ticket_row_matcher_rejects_absent_fixture_data() {
); );
let wrong_kind = RenderedPanelRow { let wrong_kind = RenderedPanelRow {
key: PanelRowKey { key: PanelRowKey {
kind: "pod".to_string(), kind: "worker".to_string(),
id: "0000000000000".to_string(), id: "0000000000000".to_string(),
}, },
title: "Ready E2E Ticket".to_string(), title: "Ready E2E Ticket".to_string(),
@ -171,7 +171,7 @@ fn dashboard_snapshot_rejects_missing_row_wrong_state_missing_overlay_and_missin
Some("planning"), Some("planning"),
None, None,
), ),
rendered_pod_row("workspace"), rendered_worker_row("workspace"),
] ]
}; };
assert_eq!( assert_eq!(
@ -189,7 +189,7 @@ fn dashboard_snapshot_rejects_missing_row_wrong_state_missing_overlay_and_missin
Some("ready"), Some("ready"),
Some("inprogress"), Some("inprogress"),
), ),
rendered_pod_row("workspace"), rendered_worker_row("workspace"),
]); ]);
assert_ne!( assert_ne!(
missing_row.snapshot_for_expected(&expected), missing_row.snapshot_for_expected(&expected),
@ -354,7 +354,7 @@ fn panel_dashboard_content_ready_has_startup_budget() -> yoi_e2e::Result<()> {
&& source_breakdown.has_source("ticket_scan_parse") && source_breakdown.has_source("ticket_scan_parse")
&& source_breakdown.has_source("orchestration_overlay_validation_read_git") && source_breakdown.has_source("orchestration_overlay_validation_read_git")
&& source_breakdown.has_source("workspace_panel.build.total"), && source_breakdown.has_source("workspace_panel.build.total"),
"dashboard source breakdown should include pod metadata/status, ticket scan/parse, overlay validation/read/git, local claim scan, and panel-build sources; got {:?}; artifacts at {}", "dashboard source breakdown should include worker metadata/status, ticket scan/parse, overlay validation/read/git, local claim scan, and panel-build sources; got {:?}; artifacts at {}",
source_breakdown, source_breakdown,
panel.artifacts().dir.display() panel.artifacts().dir.display()
); );
@ -623,7 +623,7 @@ fn assert_no_runtime_or_host_pod_leak(
] { ] {
assert!( assert!(
!rendered.contains(marker), !rendered.contains(marker),
"host/fixture runtime Pod marker {marker:?} leaked into panel rows; artifacts at {artifacts}\n{rendered}" "host/fixture runtime Worker marker {marker:?} leaked into panel rows; artifacts at {artifacts}\n{rendered}"
); );
} }
if let Some(host_runtime) = std::env::var_os("XDG_RUNTIME_DIR") { if let Some(host_runtime) = std::env::var_os("XDG_RUNTIME_DIR") {

View File

@ -55,7 +55,7 @@ fn single_pod_rewind_picker_applies_without_escape_and_suppresses_duplicate_ente
let status = tui.expect_exit_within(PanelHarness::default_exit_wait())?; let status = tui.expect_exit_within(PanelHarness::default_exit_wait())?;
assert!( assert!(
status.success(), status.success(),
"single-pod rewind fixture should exit cleanly" "single-worker rewind fixture should exit cleanly"
); );
drop(tui); drop(tui);
let cleanup = fixture.cleanup()?; let cleanup = fixture.cleanup()?;