[e2e] shellcheck not found, skipping [e2e] preparing real profile smoke test (profile: gemini)... [e2e] starting smoke test (profile: gemini, port: 35149, persistent: 0, has_status: 1) [e2e] > /nodes [e2e] > ping [e2e] > /session session2 [e2e] > /background on [e2e] > pong [e2e] > /background off [e2e] > /status [e2e] > /exit === EDGE OUTPUT === [edge] config=/tmp/tmp.tCpt25vhIc/edge.yaml {"level":"info","ts":1778990052.1233287,"caller":"transport/server.go:81","msg":"edge listening for nodes","addr":"127.0.0.1:35149"} IOP Edge console listening on 127.0.0.1:35149 Console target node= adapter=cli target=gemini session=default background=false Start node.sh on another host, then type a message here. Commands: /nodes, /node , /session , /background on|off, /terminate-session, /status, /capabilities, /sessions, /transport, /exit edge> {"level":"warn","ts":1778990052.1245666,"caller":"bootstrap/runtime.go:74","msg":"metrics server exited","error":"listen tcp :9092: bind: address already in use"} {"level":"info","ts":1778990052.4035692,"caller":"transport/server.go:115","msg":"node connection established"} {"level":"info","ts":1778990052.412529,"caller":"transport/server.go:115","msg":"node connection established"} {"level":"info","ts":1778990052.909321,"caller":"transport/server.go:115","msg":"node connection established"} {"level":"info","ts":1778990052.9100335,"caller":"transport/server.go:188","msg":"node registered","node_id":"test-node","alias":"test-node"} [node-test-node-event] connected reason="registered" test-node (test-node) edge> [edge] sent run_id=manual-1778990058410151889 node=test-node adapter=cli target=gemini session=default background=false [node-test-node-event] start run_id=manual-1778990058410151889 [node-test-node-message] pong [node-test-node-event] complete run_id=manual-1778990058410151889 detail="cli execution complete" edge> session → session2 edge> background → on edge> [edge] sent run_id=manual-1778990067418421087 node=test-node adapter=cli target=gemini session=session2 background=true [edge] background run dispatched, events will arrive asynchronously edge> [node-test-node-event] start run_id=manual-1778990067418421087 session=session2 background=true background → off edge> [edge] sent command=status node=test-node adapter=cli target=gemini session=session2 [node-test-node-message] [tool] update_topic: Awaiting User Task [tool-result] success: ## 📂 Topic: **Awaiting User Task** **Summary:** ... > [!STRATEGY] > **Intent:** Awaiting further instructions from the user to proceed with a specific task. I have processed the initial context and directory structure. I am now awaiting your specific instructions for the task you'd like me to perform. [node-test-node-event] complete run_id=manual-1778990067418421087 detail="cli execution complete" [node-test-node-status] target=gemini session=session2 Daily quota: 83% remaining Used: 17% Model usage: Flash: 19% used (resets 11:17 PM (10h 23m)) Flash Lite: 0% used (resets 12:48 PM (23h 54m)) Pro: 15% used (resets 11:13 AM (22h 20m)) gemini-3.1-flash-lite: 0% used (resets 12:48 PM (23h 54m)) edge> bye {"level":"info","ts":1778990081.8429675,"caller":"transport/server.go:173","msg":"node unregistered","node_id":"test-node","transport_close_reason":"local_close","transport_close_error":"read tcp 127.0.0.1:35149->127.0.0.1:50218: use of closed network connection"} === NODE OUTPUT === [node] config=/tmp/tmp.tCpt25vhIc/node.yaml [node] waiting for edge at 127.0.0.1:35149 timeout=30s [node] edge is reachable [Fx] PROVIDE fx.Lifecycle <= go.uber.org/fx.New.func1() [Fx] PROVIDE fx.Shutdowner <= go.uber.org/fx.(*App).shutdowner-fm() [Fx] PROVIDE fx.DotGraph <= go.uber.org/fx.(*App).dotGraph-fm() [Fx] PROVIDE *config.NodeConfig <= iop/apps/node/internal/bootstrap.Module.func1() [Fx] PROVIDE *zap.Logger <= iop/apps/node/internal/bootstrap.Module.func2() [Fx] INVOKE iop/apps/node/internal/bootstrap.Module.func3() [Fx] RUN provide: go.uber.org/fx.New.func1() [Fx] RUN provide: iop/apps/node/internal/bootstrap.Module.func1() [Fx] RUN provide: iop/apps/node/internal/bootstrap.Module.func2() [Fx] HOOK OnStart iop/apps/node/internal/bootstrap.Module.func3.1() executing (caller: iop/apps/node/internal/bootstrap.Module.func3) {"level":"info","ts":1778990052.9105446,"caller":"transport/client.go:62","msg":"registered with edge","node_id":"test-node","alias":"test-node"} {"level":"info","ts":1778990052.9130487,"caller":"store/store.go:62","msg":"store ready","dsn":"file:iop.db?cache=shared&mode=rwc"} [Fx] HOOK OnStart iop/apps/node/internal/bootstrap.Module.func3.1() called by iop/apps/node/internal/bootstrap.Module.func3 ran successfully in 4.198834ms [Fx] RUNNING {"level":"warn","ts":1778990052.9145129,"caller":"bootstrap/module.go:81","msg":"metrics server exited","error":"listen tcp :9091: bind: address already in use"} {"level":"info","ts":1778990058.4106286,"caller":"node/node.go:59","msg":"run request received","run_id":"manual-1778990058410151889","adapter":"cli","target":"gemini"} [edge-message] ping [node-event] start run_id=manual-1778990058410151889 [node-message] pong [node-event] complete run_id=manual-1778990058410151889 detail="cli execution complete" {"level":"info","ts":1778990067.418684,"caller":"node/node.go:59","msg":"run request received","run_id":"manual-1778990067418421087","adapter":"cli","target":"gemini"} [edge-message] pong [node-event] start run_id=manual-1778990067418421087 {"level":"info","ts":1778990073.4229202,"caller":"node/node.go:177","msg":"command request","request_id":"status-1778990073422618131","type":"NODE_COMMAND_TYPE_USAGE_STATUS","adapter":"cli","target":"gemini"} [node-message] [tool] update_topic: Awaiting User Task [tool-result] success: ## 📂 Topic: **Awaiting User Task** **Summary:** ... > [!STRATEGY] > **Intent:** Awaiting further instructions from the user to proceed with a specific task. I have processed the initial context and directory structure. I am now awaiting your specific instructions for the task you'd like me to perform. [node-event] complete run_id=manual-1778990067418421087 detail="cli execution complete" {"level":"info","ts":1778990081.843005,"caller":"transport/session.go:89","msg":"disconnected from edge","transport_close_reason":"remote_closed","transport_close_error":"EOF"} [edge-event] disconnected reason="transport_closed" transport_close_reason="remote_closed" transport_close_error="EOF" =================== [e2e] Real profile (gemini) status: PASSED [e2e] Smoke test PASSED.