[P2][workflow] Trace dependency evidence before loop terminal outcomes #88

Closed
opened 2026-10-11 16:36:35 +00:00 by kilo · 5 comments
Member

Goal

Make /loop distinguish verified dependency gates from unknown evidence before inactivity decisions, while preserving Kernel's existing nonterminal pre-implementation re-selection.

Why

Kernel develop already revalidates a selected untouched issue and preserves started delivery (#71), but the current queue contract does not trace dependency edges backward to the earliest executable predecessor, classify unknown producer/dependency evidence as UNVERIFIED, or explicitly keep recovery progress narration nonterminal. Scarcity Router issue #202 and merged PR #203 provide the verified workflow precedent.

Scope

Adapt .kilo/command/loop.md, .kilo/rules/10-task-system.md, and relevant technical-recovery guidance; add semantic cases to tests/test_workflow_contract.py. Cover current canonical issue/dependency and producer-contract evidence before WAIT or an existing terminal decision. Walk explicit dependency edges backward; a gated candidate must not prevent unrelated eligible Kernel work.

Acceptance Criteria

  1. Before WAIT, BLOCKED, STOP_AND_ASK, or QUEUE_EMPTY, refresh and verify current canonical dependency and producer-contract evidence, trace explicit chains to the earliest executable predecessor, and distinguish issue-local gates from repository-wide inactivity.
  2. Unknown or inaccessible evidence is recorded as UNVERIFIED: it proves neither readiness nor a verified gate/blocker. Do not claim QUEUE_EMPTY from unverified evidence; continue other confirmed eligible work and report the exact evidence gap under existing terminal rules.
  3. Technical-recovery progress/status narration is nonterminal; continue the same authorized invocation until an existing terminal condition is actually met.
  4. Preserve explicit-/loop full-queue authority, standalone selected-issue scope, #71 re-selection, started-delivery/history/review counters, reviewer independence, security, validation, and merge authority.
  5. Offline semantic contract tests cover a dependency chain with an executable predecessor, a gated candidate beside unrelated eligible work, changed/missing evidence, UNVERIFIED versus ready/gated outcomes, nonterminal recovery narration, and queue exhaustion scoped to this repository.

Constraints

Development workflow only. No product/API/state-machine changes, invented dependency edges, Router policy, weaker reviewer/security/check gates, or altered review counters. Do not modify Kernel issue #53 or PR #85, their code/branch/review history/status, or the owner's stated 9/13 review count.

## Goal Make `/loop` distinguish verified dependency gates from unknown evidence before inactivity decisions, while preserving Kernel's existing nonterminal pre-implementation re-selection. ## Why Kernel `develop` already revalidates a selected untouched issue and preserves started delivery (`#71`), but the current queue contract does not trace dependency edges backward to the earliest executable predecessor, classify unknown producer/dependency evidence as `UNVERIFIED`, or explicitly keep recovery progress narration nonterminal. Scarcity Router issue #202 and merged PR #203 provide the verified workflow precedent. ## Scope Adapt `.kilo/command/loop.md`, `.kilo/rules/10-task-system.md`, and relevant technical-recovery guidance; add semantic cases to `tests/test_workflow_contract.py`. Cover current canonical issue/dependency and producer-contract evidence before `WAIT` or an existing terminal decision. Walk explicit dependency edges backward; a gated candidate must not prevent unrelated eligible Kernel work. ## Acceptance Criteria 1. Before `WAIT`, `BLOCKED`, `STOP_AND_ASK`, or `QUEUE_EMPTY`, refresh and verify current canonical dependency and producer-contract evidence, trace explicit chains to the earliest executable predecessor, and distinguish issue-local gates from repository-wide inactivity. 2. Unknown or inaccessible evidence is recorded as `UNVERIFIED`: it proves neither readiness nor a verified gate/blocker. Do not claim `QUEUE_EMPTY` from unverified evidence; continue other confirmed eligible work and report the exact evidence gap under existing terminal rules. 3. Technical-recovery progress/status narration is nonterminal; continue the same authorized invocation until an existing terminal condition is actually met. 4. Preserve explicit-`/loop` full-queue authority, standalone selected-issue scope, `#71` re-selection, started-delivery/history/review counters, reviewer independence, security, validation, and merge authority. 5. Offline semantic contract tests cover a dependency chain with an executable predecessor, a gated candidate beside unrelated eligible work, changed/missing evidence, `UNVERIFIED` versus ready/gated outcomes, nonterminal recovery narration, and queue exhaustion scoped to this repository. ## Constraints Development workflow only. No product/API/state-machine changes, invented dependency edges, Router policy, weaker reviewer/security/check gates, or altered review counters. Do not modify Kernel issue #53 or PR #85, their code/branch/review history/status, or the owner's stated 9/13 review count. ## Links - Scarcity Router precedent: https://forgejo.creatidy.com/BioMedical-IT/scarcity-router/issues/202 - Integrated correction: https://forgejo.creatidy.com/BioMedical-IT/scarcity-router/pulls/203 - Existing Kernel re-selection contract: https://forgejo.creatidy.com/Creatidy/creatidy-kernel/issues/71
Author
Member

Implemented #88 and opened PR #89: #89

PR head 043ced035c7c8ae28ee658673eeb8224e494eab5, based on canonical develop 8c49f61bb6ea4bfbb0f38a0868339647feba6396. The change refreshes canonical issue/dependency and required producer evidence, traces explicit chains to the earliest executable predecessor, treats missing/changed/inaccessible evidence as UNVERIFIED, isolates gates to dependent chains, prevents queue exhaustion from unknown evidence, and keeps recovery narration nonterminal. Offline semantic workflow coverage was added; no product/runtime changes.

Validation (sanitized): make check passed (1434 passed, 85 skipped, 103 subtests); make package-check passed (reproducible wheel/sdist, isolated install, CLI/intake/source smokes). Focused workflow tests passed (22 passed, 103 subtests). Issue remains open; independent PR review is pending.

Implemented #88 and opened PR #89: https://forgejo.creatidy.com/Creatidy/creatidy-kernel/pulls/89 PR head `043ced035c7c8ae28ee658673eeb8224e494eab5`, based on canonical `develop` `8c49f61bb6ea4bfbb0f38a0868339647feba6396`. The change refreshes canonical issue/dependency and required producer evidence, traces explicit chains to the earliest executable predecessor, treats missing/changed/inaccessible evidence as `UNVERIFIED`, isolates gates to dependent chains, prevents queue exhaustion from unknown evidence, and keeps recovery narration nonterminal. Offline semantic workflow coverage was added; no product/runtime changes. Validation (sanitized): `make check` passed (1434 passed, 85 skipped, 103 subtests); `make package-check` passed (reproducible wheel/sdist, isolated install, CLI/intake/source smokes). Focused workflow tests passed (22 passed, 103 subtests). Issue remains open; independent PR review is pending.
Author
Member

PR #89 has been updated with independent review remediation commit cd62f48 (current head cd62f48d191ec8b5b3728eed5b6e6c1ee216fc27; base remains 8c49f61bb6ea4bfbb0f38a0868339647feba6396). The reviewer identified a test-model case that could skip later dependency edges after finding an executable prerequisite. The tracer now validates every edge and returns UNVERIFIED if any required edge is stale/missing; a mixed ready-plus-unknown regression was added. Focused tests and sanitized make check / make package-check pass again. Ordinal 1 was infrastructure-only; ordinal 2 finding is fixed. A fresh whole-PR review is pending. Issue remains open.

PR #89 has been updated with independent review remediation commit `cd62f48` (current head `cd62f48d191ec8b5b3728eed5b6e6c1ee216fc27`; base remains `8c49f61bb6ea4bfbb0f38a0868339647feba6396`). The reviewer identified a test-model case that could skip later dependency edges after finding an executable prerequisite. The tracer now validates every edge and returns `UNVERIFIED` if any required edge is stale/missing; a mixed ready-plus-unknown regression was added. Focused tests and sanitized `make check` / `make package-check` pass again. Ordinal 1 was infrastructure-only; ordinal 2 finding is fixed. A fresh whole-PR review is pending. Issue remains open.
Author
Member

PR #89 now includes commit d468aba (d468abadd4a45e2a804e1bb8988d02fc5888cc21). The second review finding is fixed: branching dependency traces retain all verified executable leaves, while selection uses deterministic canonical issue order rather than dependency-edge order; regression tests reverse those orders. Base remains 8c49f61bb6ea4bfbb0f38a0868339647feba6396. Focused tests pass (23 passed, 103 subtests); sanitized make check passes (1435 passed, 85 skipped, 103 subtests); sanitized make package-check passes. A fresh whole-PR review is pending. Issue remains open.

PR #89 now includes commit `d468aba` (`d468abadd4a45e2a804e1bb8988d02fc5888cc21`). The second review finding is fixed: branching dependency traces retain all verified executable leaves, while selection uses deterministic canonical issue order rather than dependency-edge order; regression tests reverse those orders. Base remains `8c49f61bb6ea4bfbb0f38a0868339647feba6396`. Focused tests pass (23 passed, 103 subtests); sanitized `make check` passes (1435 passed, 85 skipped, 103 subtests); sanitized `make package-check` passes. A fresh whole-PR review is pending. Issue remains open.
Author
Member

PR #89 is ready for merge following fresh independent whole-PR review ordinal 4: APPROVE with empty findings on exact head d468abadd4a45e2a804e1bb8988d02fc5888cc21 / base 8c49f61bb6ea4bfbb0f38a0868339647feba6396. Post-review currentness verification confirmed the PR is still open/unmerged and both refs are unchanged. Sanitized make check passed (1435 passed, 85 skipped, 103 subtests); make package-check passed; focused workflow contract tests passed (23 passed, 103 subtests). Ordinals 2 and 3 findings were remediated in commits cd62f48 and d468aba; ordinal 1 was infrastructure-only. Per standalone authority, no merge was performed and issue #88 remains open.

PR #89 is ready for merge following fresh independent whole-PR review ordinal 4: APPROVE with empty findings on exact head `d468abadd4a45e2a804e1bb8988d02fc5888cc21` / base `8c49f61bb6ea4bfbb0f38a0868339647feba6396`. Post-review currentness verification confirmed the PR is still open/unmerged and both refs are unchanged. Sanitized `make check` passed (1435 passed, 85 skipped, 103 subtests); `make package-check` passed; focused workflow contract tests passed (23 passed, 103 subtests). Ordinals 2 and 3 findings were remediated in commits `cd62f48` and `d468aba`; ordinal 1 was infrastructure-only. Per standalone authority, no merge was performed and issue #88 remains open.
Author
Member

Implemented the owner-requested review fix in PR #89, commit 922b3e69121879649de8baa0d76260b6c1555642: a local gate no longer skips required dependency inspection. Missing/changed/inaccessible dependency evidence returns UNVERIFIED instead of false QUEUE_EMPTY; unrelated eligible work remains selectable and verified local gates are preserved. Regression cases failed before the fix and pass now.

Focused validation: 25 passed, 106 subtests. Sanitized make check: 1437 passed, 85 optional-native skipped, 106 subtests, tooling/boundary/secret/whitespace passed. Sanitized make package-check: passed.

Fresh independent full review ordinal 7 APPROVE, empty findings, on head 922b3e69121879649de8baa0d76260b6c1555642 / base 8c49f61bb6ea4bfbb0f38a0868339647feba6396. Counter preserved including the subsequent read-only review dispatches (5 infrastructure COMMENT; 6 REQUEST_CHANGES), now 7/10. Used available equivalent fresh independent read-only contract path after diagnosed native loaded-instruction conflict, no self-review or weakened gates. Post-review MCP/Git currentness and clean checkout verified. READY_TO_MERGE; standalone invocation does not merge or close this issue.

Implemented the owner-requested review fix in PR #89, commit `922b3e69121879649de8baa0d76260b6c1555642`: a local gate no longer skips required dependency inspection. Missing/changed/inaccessible dependency evidence returns UNVERIFIED instead of false QUEUE_EMPTY; unrelated eligible work remains selectable and verified local gates are preserved. Regression cases failed before the fix and pass now. Focused validation: 25 passed, 106 subtests. Sanitized `make check`: 1437 passed, 85 optional-native skipped, 106 subtests, tooling/boundary/secret/whitespace passed. Sanitized `make package-check`: passed. Fresh independent full review ordinal 7 APPROVE, empty findings, on head `922b3e69121879649de8baa0d76260b6c1555642` / base `8c49f61bb6ea4bfbb0f38a0868339647feba6396`. Counter preserved including the subsequent read-only review dispatches (5 infrastructure COMMENT; 6 REQUEST_CHANGES), now 7/10. Used available equivalent fresh independent read-only contract path after diagnosed native loaded-instruction conflict, no self-review or weakened gates. Post-review MCP/Git currentness and clean checkout verified. READY_TO_MERGE; standalone invocation does not merge or close this issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Creatidy/creatidy-kernel#88
No description provided.