ticket: close staging source anchors work
This commit is contained in:
parent
9a1a75de48
commit
c5eb28af75
|
|
@ -1,8 +1,8 @@
|
|||
---
|
||||
title: 'Extract stagingのsource anchor形式を実装する'
|
||||
state: 'inprogress'
|
||||
state: 'closed'
|
||||
created_at: '2026-07-16T17:17:22Z'
|
||||
updated_at: '2026-07-16T19:44:01Z'
|
||||
updated_at: '2026-07-16T19:45:37Z'
|
||||
assignee: null
|
||||
queued_by: 'workspace-panel'
|
||||
queued_at: '2026-07-16T19:26:52Z'
|
||||
|
|
|
|||
35
.yoi/tickets/00001KXNYXNM6/resolution.md
Normal file
35
.yoi/tickets/00001KXNYXNM6/resolution.md
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
Extract staging の entry-level source anchors / evidence references を実装・レビュー・merge・検証した。
|
||||
|
||||
実装内容:
|
||||
- `crates/memory/src/schema/common.rs` に bounded source/evidence metadata 型を追加。
|
||||
- `EvidenceKind(pub String)`。
|
||||
- known constants: `message`, `tool_call`, `tool_result`, `file_ref`, `ticket_ref`, `objective_ref`。
|
||||
- `SourceEvidenceRef` with `session_id`, `segment_id`, `entry_range`, `evidence_id`, `evidence_kind`, `label`, `summary`。
|
||||
- `DecisionEntry`, `DiscussionEntry`, `AttemptEntry`, `RequestEntry` に optional `source_refs: Vec<SourceEvidenceRef>` を追加。
|
||||
- `source_refs` は default empty / skip serializing empty とし、`#[schemars(skip)]` で LLM extract schema には露出しないようにした。
|
||||
- 既存 `StagingRecord.source` は record-level source range として維持。
|
||||
- old staging JSON without `source_refs` の互換性を維持。
|
||||
- legacy record-level `source.session_id` compatibility を追加。
|
||||
- new staging JSON with entry-level refs の roundtrip を追加。
|
||||
- consolidation input は pretty JSON として entry-level refs を lossless に保持するようにした。
|
||||
- session-explore / resolver tools / extract launch / staging resolution/disposition はこの Ticket では実装していない。
|
||||
|
||||
Review:
|
||||
- Reviewer approved with no blockers。
|
||||
- Evidence included bounded anchor field definitions, all four entry types, old/new JSON tests, legacy source compatibility, and consolidation preservation。
|
||||
- Non-blocking note: `label` / `summary` の length/raw-content discipline は type enforcement ではなく semantic/host-policy に残る。
|
||||
|
||||
Merge / validation:
|
||||
- Merge commit: `9a1a75de merge: staging source anchors`。
|
||||
- Final validation passed:
|
||||
- `cargo fmt --check`
|
||||
- `git diff --check`
|
||||
- `cargo test -p memory`
|
||||
- `cargo check -p yoi`
|
||||
- `yoi ticket doctor`
|
||||
- `nix build .#yoi --no-link`
|
||||
- Validation log: `/run/user/1000/yoi/yoi-orchestrator/bash-output/staging-source-anchors-final-validation-1784231070.txt`
|
||||
|
||||
Cleanup:
|
||||
- Implementation worktree/branch cleanup will be performed after close commit。
|
||||
- Per user instruction, `StopPod` is not used。
|
||||
|
|
@ -190,3 +190,96 @@ Non-blocking note:
|
|||
- `label` / `summary` の length/raw-content discipline は type enforcement ではなく semantic/host-policy に残る。ただし raw message/tool-result embedding や out-of-scope session-explore/disposition implementation は導入されていない。
|
||||
|
||||
---
|
||||
|
||||
<!-- event: implementation_report author: orchestrator at: 2026-07-16T19:45:13Z -->
|
||||
|
||||
## Implementation report
|
||||
|
||||
Merge / final validation report:
|
||||
|
||||
- Reviewer approved the implementation with no blockers。
|
||||
- Merged branch `work/00001KXNYXNM6-staging-source-anchors` into orchestration branch with merge commit `9a1a75de merge: staging source anchors`。
|
||||
- Final validation was rerun in `/home/hare/Projects/yoi/.worktree/orchestration` after merge。
|
||||
|
||||
Validation passed:
|
||||
- `cargo fmt --check`
|
||||
- `git diff --check`
|
||||
- `cargo test -p memory`
|
||||
- `cargo check -p yoi`
|
||||
- `yoi ticket doctor`
|
||||
- `nix build .#yoi --no-link`
|
||||
|
||||
Validation log:
|
||||
- `/run/user/1000/yoi/yoi-orchestrator/bash-output/staging-source-anchors-final-validation-1784231070.txt`
|
||||
|
||||
Reviewed/merged implementation commit:
|
||||
- `31798fb2 feat: add staging entry source anchors`
|
||||
|
||||
Notes:
|
||||
- `StagingRecord.source` remains the record-level source range。
|
||||
- Entry-level `source_refs` are optional, default empty, and skipped when empty。
|
||||
- Old staging JSON compatibility and new source-ref roundtrip are covered by tests。
|
||||
- Consolidation input preserves entry-level refs as pretty JSON。
|
||||
- session-explore / resolver tools / extract launch / staging resolution were not implemented in this Ticket。
|
||||
- Per user instruction, no `StopPod` cleanup was performed。
|
||||
|
||||
---
|
||||
|
||||
<!-- event: state_changed author: orchestrator at: 2026-07-16T19:45:21Z from: inprogress to: done reason: implementation_validated field: state -->
|
||||
|
||||
## State changed
|
||||
|
||||
Implementation was reviewed, merged into orchestration branch, and final validation passed. Moving to done before closure.
|
||||
|
||||
---
|
||||
|
||||
<!-- event: state_changed author: hare at: 2026-07-16T19:45:37Z from: done to: closed reason: closed field: state -->
|
||||
|
||||
## State changed
|
||||
|
||||
Ticket を closed にしました。
|
||||
|
||||
|
||||
---
|
||||
|
||||
<!-- event: close author: hare at: 2026-07-16T19:45:37Z status: closed -->
|
||||
|
||||
## 完了
|
||||
|
||||
Extract staging の entry-level source anchors / evidence references を実装・レビュー・merge・検証した。
|
||||
|
||||
実装内容:
|
||||
- `crates/memory/src/schema/common.rs` に bounded source/evidence metadata 型を追加。
|
||||
- `EvidenceKind(pub String)`。
|
||||
- known constants: `message`, `tool_call`, `tool_result`, `file_ref`, `ticket_ref`, `objective_ref`。
|
||||
- `SourceEvidenceRef` with `session_id`, `segment_id`, `entry_range`, `evidence_id`, `evidence_kind`, `label`, `summary`。
|
||||
- `DecisionEntry`, `DiscussionEntry`, `AttemptEntry`, `RequestEntry` に optional `source_refs: Vec<SourceEvidenceRef>` を追加。
|
||||
- `source_refs` は default empty / skip serializing empty とし、`#[schemars(skip)]` で LLM extract schema には露出しないようにした。
|
||||
- 既存 `StagingRecord.source` は record-level source range として維持。
|
||||
- old staging JSON without `source_refs` の互換性を維持。
|
||||
- legacy record-level `source.session_id` compatibility を追加。
|
||||
- new staging JSON with entry-level refs の roundtrip を追加。
|
||||
- consolidation input は pretty JSON として entry-level refs を lossless に保持するようにした。
|
||||
- session-explore / resolver tools / extract launch / staging resolution/disposition はこの Ticket では実装していない。
|
||||
|
||||
Review:
|
||||
- Reviewer approved with no blockers。
|
||||
- Evidence included bounded anchor field definitions, all four entry types, old/new JSON tests, legacy source compatibility, and consolidation preservation。
|
||||
- Non-blocking note: `label` / `summary` の length/raw-content discipline は type enforcement ではなく semantic/host-policy に残る。
|
||||
|
||||
Merge / validation:
|
||||
- Merge commit: `9a1a75de merge: staging source anchors`。
|
||||
- Final validation passed:
|
||||
- `cargo fmt --check`
|
||||
- `git diff --check`
|
||||
- `cargo test -p memory`
|
||||
- `cargo check -p yoi`
|
||||
- `yoi ticket doctor`
|
||||
- `nix build .#yoi --no-link`
|
||||
- Validation log: `/run/user/1000/yoi/yoi-orchestrator/bash-output/staging-source-anchors-final-validation-1784231070.txt`
|
||||
|
||||
Cleanup:
|
||||
- Implementation worktree/branch cleanup will be performed after close commit。
|
||||
- Per user instruction, `StopPod` is not used。
|
||||
|
||||
---
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user