Skip to content

fix: make node observations understandable and measurable - #6445

Merged
vivekchand merged 4 commits into
mainfrom
fix/node-clarity
Oct 16, 2026
Merged

vivekchand merged 4 commits into
mainfrom
fix/node-clarity

Conversation

@vivekchand

@vivekchand vivekchand commented Oct 15, 2026 •

Copy link
Copy Markdown
Owner

The Node activity screen showed an unknown process total despite retaining 512 observations, no per-process CPU rates and an empty port list when macOS denied the primary API. Its actor-category diagram also did not explain the selected observation.

Show positive observed counts separately from exact totals, measure process CPU from comparable cumulative intervals, and collect permitted macOS TCP listeners with a fixed bounded lsof fallback. The selected view now explains what was seen, where and when, with evidenced attribution or a specific uncertainty explanation. Original before/after and source evidence stays under Technical details. Inventories explain their source and keep a direct coverage link, including when only stale retained rows remain.

The daemon remains the collector and DuckDB writer. No request-time host reads, elevated permissions, new dependencies, process controls or additional pollers are introduced. CPU 100% means one core; first or discontinuous samples remain unavailable. Fallback listeners are always partial, and malformed/interrupted/method-change observations cannot imply removals or ownership.

Validation: 96 focused collector/store/frontend/browser/wiring checks pass, including an actual owned process and loopback listener through the collector and in-memory DuckDB. New observed-count, malformed parser and CPU interval regressions were demonstrated red before correction. Independent frontend and collector reviews cover the complete buckets. A real-data Chrome preview confirmed the event story, positive counts, interval CPU, accessible ports and coverage reasons. The eleven exact Factory criteria are mirrored; all have test references and the prior 68 uncovered criteria remain unchanged (418/486 covered after rebasing onto Asimov main).

Factory requirements and design were written and read back before implementation:

CI wiring: the new collector regression module is explicitly included in the existing Node verification job; its exact command passes 95 checks locally and the CI test-file coverage ratchet remains at 902 pre-existing unlisted files.

Execution and review evidence: .sw-factory/WO-NODE-CLARITY-001/. Official wheel inspection, local upgrade, cloud deployment and the actual installed owned-process/listener/CPU path in local and encrypted hosted views remain mandatory delivery gates under root ownership.

🤖 Prepared by Codex under the repository’s Claude Code workflow.

@8090-software-factory

Copy link
Copy Markdown

✅ Drift Bot (ClawMetry): no drift detected

Drift Bot analyzed the changed files against this project's blueprints and requirements and found no drift.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Visual diff

Comparing 40037e2d45c9 (head) against the PR base branch.

2 of 86 comparison(s) flagged (>1% pixel diff).

View Before After Diff
desktop overview before after diff · 0.00%
desktop flow before after diff · 0.00%
desktop brain before after diff · 0.00%
desktop usage before after diff · 0.00%
desktop crons before after diff · 0.00%
desktop memory before after diff · 0.02%
desktop security before after diff · 0.02%
desktop subagents before after diff · 0.00%
desktop transcripts before after diff · 0.00%
desktop logs before after diff · 0.00%
desktop skills before after diff · 0.01%
desktop models before after diff · 0.00%
desktop approvals before after diff · 0.03%
desktop alerts before after diff · 0.00%
desktop notifications before after diff · 0.00%
desktop limits before after diff · 0.00%
desktop history before after diff · 0.00%
desktop channels before after diff · 0.00%
desktop harness before after diff · 0.00%
desktop inventory before after diff · 0.00%
desktop node-activity ⚠️ before after diff · 100.00%
desktop assistant before after diff · 0.00%
desktop setup before after diff · 0.00%
desktop improve before after diff · 0.02%
desktop nemoclaw before after diff · 0.00%
desktop guard before after diff · 0.00%
desktop signals before after diff · 0.00%
desktop policy before after diff · 0.00%
desktop selfevolve before after diff · 0.00%
desktop swimlane before after diff · 0.00%
desktop tool-catalog before after diff · 0.00%
desktop tracing before after diff · 0.00%
desktop turn-anatomy before after diff · 0.02%
desktop version-impact before after diff · 0.00%
desktop context-economics before after diff · 0.00%
desktop agents before after diff · 0.00%
desktop dives before after diff · 0.00%
desktop evals before after diff · 0.00%
desktop bench before after diff · 0.00%
desktop trail before after diff · 0.00%
desktop compliance before after diff · 0.00%
desktop price-book before after diff · 0.00%
desktop delivery before after diff · 0.00%
mobile overview before after diff · 0.00%
mobile flow before after diff · 0.00%
mobile brain before after diff · 0.03%
mobile usage before after diff · 0.00%
mobile crons before after diff · 0.00%
mobile memory before after diff · 0.03%
mobile security before after diff · 0.03%
mobile subagents before after diff · 0.00%
mobile transcripts before after diff · 0.00%
mobile logs before after diff · 0.55%
mobile skills before after diff · 0.01%
mobile models before after diff · 0.00%
mobile approvals before after diff · 0.01%
mobile alerts before after diff · 0.00%
mobile notifications before after diff · 0.00%
mobile limits before after diff · 0.00%
mobile history before after diff · 0.00%
mobile channels before after diff · 0.00%
mobile harness before after diff · 0.00%
mobile inventory before after diff · 0.00%
mobile node-activity ⚠️ before after diff · 100.00%
mobile assistant before after diff · 0.00%
mobile setup before after diff · 0.00%
mobile improve before after diff · 0.05%
mobile nemoclaw before after diff · 0.00%
mobile guard before after diff · 0.00%
mobile signals before after diff · 0.00%
mobile policy before after diff · 0.00%
mobile selfevolve before after diff · 0.00%
mobile swimlane before after diff · 0.00%
mobile tool-catalog before after diff · 0.00%
mobile tracing before after diff · 0.00%
mobile turn-anatomy before after diff · 0.00%
mobile version-impact before after diff · 0.00%
mobile context-economics before after diff · 0.00%
mobile agents before after diff · 0.00%
mobile dives before after diff · 0.00%
mobile evals before after diff · 0.00%
mobile bench before after diff · 0.00%
mobile trail before after diff · 0.00%
mobile compliance before after diff · 0.00%
mobile price-book before after diff · 0.00%
mobile delivery before after diff · 0.00%

Folder: 40037e2d45c9. Full PNGs also attached as a workflow artefact.

Generated by visual-diff bot. Pixel diffs >1% flagged; eyeball the table before merging. This check is non-blocking — fail = bot bug, not a code problem.

@8090-software-factory

Copy link
Copy Markdown

✅ Drift Bot (ClawMetry): no drift detected

Drift Bot analyzed the changed files against this project's blueprints and requirements and found no drift.

@8090-software-factory

Copy link
Copy Markdown

✅ Drift Bot (ClawMetry): no drift detected

Drift Bot analyzed the changed files against this project's blueprints and requirements and found no drift.

1 similar comment
@8090-software-factory

Copy link
Copy Markdown

✅ Drift Bot (ClawMetry): no drift detected

Drift Bot analyzed the changed files against this project's blueprints and requirements and found no drift.

github-actions Bot pushed a commit that referenced this pull request Oct 15, 2026
vivekchand and others added 4 commits October 15, 2026 23:46
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
@8090-software-factory

Copy link
Copy Markdown

✅ Drift Bot (ClawMetry): no drift detected

Drift Bot analyzed the changed files against this project's blueprints and requirements and found no drift.

github-actions Bot pushed a commit that referenced this pull request Oct 15, 2026
@vivekchand
vivekchand merged commit 05a453b into main Oct 16, 2026
53 checks passed
vivekchand added a commit that referenced this pull request Oct 16, 2026
…ted (carries #6463 and #6445) (#6464)

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant