Trace the os-backlog comment journey in plugins/os-backlog and build its site #1395
Labels
No labels
P0
P1
P2
P3
bug
category/code-change
category/cross-repo
category/eval-run
category/investigation
category/no-test-target
category/owner-ruling
category/prose-artifact
category/recurring-chore
category/structure
category/umbrella
crc-refactor
create
delete
enhancement
filed-by/agent
filed-by/user
frozen
lint-rule
needs-info
needs-triage
next
plugin/cc-architect
plugin/os
plugin/os-adr
plugin/os-aidd-lint
plugin/os-backlog
plugin/os-context
plugin/os-doc-hygiene
plugin/os-sdlc
plugin/os-vault
project/cc-os
ready-for-agent
ready-for-human
recurring
review
rule-proposal
update
waiting
wayfinder:grilling
wayfinder:map
wayfinder:map
wayfinder:research
wayfinder:task
wayfinder:task
wontfix
worklist/deviations
worklist/lint-rule
worklist/new-implement-build
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jared/cc-os#1395
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The system-model tracer (#1327, ADR-0300) has no journey view for the most used CLI call.
os-backlog comment N --body Xran 460 times in 30 days.A trace of it gives a second easy-to-read journey outside os-me, with few objects.
Ticket 1394 traces
handoff completeinplugins/osfirst and proves the tracer works outside os-me.This ticket is blocked by #1394.
Observed
The expected chain is:
The end-to-end test is
plugins/os-backlog/tests/comment_cli_test.rb.The tests likely use the File backend, not Forgejo.
The implementer records which backend the journey shows.
Reproduce
n/a: this is a feature ticket. The chain above is the expectation to verify.
Approach
Use the same shim as #1394, from the ADR-0300 owner sketch:
Required work:
def use_case(_name) = yieldinplugins/os-backlog/tests/test_helper.rbuse_case("os-backlog comment")inplugins/os-backlog/tests/comment_cli_test.rbdynamic view os_backlog_commentinplugins/os-backlog/design/generated/journeys/*.c4Orchestrator work: run
plugins/os-sdlc/bin/system-model build plugins/os-backlog, thenlikec4 validate. Show Jared the view withsystem-model serve plugins/os-backlog.Acceptance criteria
plugins/os-sdlc/bin/system-model build plugins/os-backlog, when it finishes, then the generatedos_backlog_commentjourney holds the messages of the chain above andlikec4 validateaccepts the model.system-model serve plugins/os-backlog, when Jared opens the os_backlog_comment view, then he sees the numbered messages.Owner sketch
Non-goals
os-me journeys stay in #1392.
Tracing calls into core Ruby is out of scope.
Origin
Unblocked: #1111 closed (main
5ced3a86). The behavior-verifier brief now carries test_changes.Work started on branch ticket-1395 (session 47f54f99). #1111 and #1394 are closed. Hand-built outside the implement pipeline: the whole diff is test paths plus generated design files, and the behavior-verifier errors on a test-path-only diff (#1428, seen on #1392 run 192).
Resolution
Done: comment_cli_test wraps the end-to-end comment path in use_case("os-backlog comment"); UseCase shim added to plugins/os-backlog/tests/test_helper.rb; plugins/os-backlog/design scaffolded (likec4.config.json, spec.c4, views/index.c4) and system-model build writes generated/journeys/os_backlog_comment.c4 holding CLI -> IssueCommands -> CliTrackerRequirement.tracker -> CliOptions.comment_body -> Issues.comment -> FileBackend.comment; backend shown is File (FileTrackerSandbox). likec4 validate passes inside the build. Tracer now binds the target's Gemfile and preloads bundler/setup before the recorder when the target has a Gemfile, so os-backlog's locked json activates first. To view: system-model serve plugins/os-backlog, view os_backlog_comment.
Evidence: Hand-built outside the implement pipeline because the whole diff is test paths plus generated files and the behavior-verifier errors on such a diff (#1428). Feature commit
3f7765c3, merged to main2e31c37a. os-backlog suite 327 runs 0 failures; os-sdlc suite 2784 runs 0 failures; rubocop clean on the os-sdlc files; os-me (5 journeys) and os (handoff_complete) rebuilt as regression checks; contract-auditor GAP on the first placement resolved by moving the binding into Tracer#environment.Follow-ups: Filed: #1434 (Tracer records zero journeys silently when the trace subprocess fails; bit twice this session). Skeptic DROP, noted here: a Zeitwerk eager-load guard (test_helper already eager-loads at suite load); a shared source for the UseCase shim (ADR-0300 prescribes the local copy). Criterion 3 (Jared opens the view in serve) is his to check.