Skip to content

Add first-agent CLI chat inspect fixture#4655

Merged
asim merged 1 commit into
masterfrom
codex/increment-4654
Jul 11, 2026
Merged

Add first-agent CLI chat inspect fixture#4655
asim merged 1 commit into
masterfrom
codex/increment-4654

Conversation

@asim

@asim asim commented Jul 11, 2026

Copy link
Copy Markdown
Member

Adds a CI-verified provider-free first-agent fixture on top of the loop work.

Summary:

  • Builds a tiny service-backed assistant fixture in a temp module with a deterministic mock model.
  • Exercises the real CLI chat path with micro chat --prompt "Summarize my first-agent next steps" assistant.
  • Stops the fixture and verifies persisted run history via micro inspect agent assistant --limit 1.
  • Wires the fixture into the zero-to-hero chat/inspect harness step.

Testing:

  • go test ./internal/harness/zero-to-hero-ci -run TestFirstAgentCLIChatInspectFixture -count=1 -v -timeout 3m
  • go test ./internal/harness/zero-to-hero-ci -run 'TestNoSecretFirstAgentTranscript|TestFirstAgentCLIChatInspectFixture|TestNoSecretFirstAgentDebuggingSmoke|TestZeroToHeroReferenceDocs|TestZeroToHeroDeployDryRunCommandSmoke|TestYourFirstAgentTutorialSmoke' -count=1\n- go build ./...\n- go test ./... (local environment exposes configured provider/proxy loopback failures; targeted rerun below passes)\n- env -u ATLASCLOUD_API_KEY -u MICRO_AI_API_KEY NO_PROXY='*' no_proxy='*' go test ./ai ./client/grpc ./transport/grpc\n- golangci-lint run ./... (installed binary was built with Go 1.24 and cannot load this Go 1.25.12 module)\n- go run github.com/golangci/golangci-lint/v2/cmd/golangci-lint@latest run ./... (reports existing lint issues outside this change)\n\nCloses Add CI-verified first-agent chat/inspect fixture #4644\nCloses Loop: build increment #193 #4654

@asim asim added the codex label Jul 11, 2026
Copilot AI review requested due to automatic review settings July 11, 2026 06:39
@asim asim added the codex label Jul 11, 2026
@asim
asim merged commit 7dd1dc7 into master Jul 11, 2026
10 of 12 checks passed
@asim
asim deleted the codex/increment-4654 branch July 11, 2026 06:39

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new CI-verified “first-agent” fixture test that exercises the real micro chat and micro inspect CLI paths end-to-end against a deterministic, provider-free mock model, and wires it into the zero-to-hero CI harness step. This directly supports the 0→1 agent onboarding flow by ensuring the CLI transcript and persisted run history remain working without provider keys.

Changes:

  • Add TestFirstAgentCLIChatInspectFixture to build/run a tiny service-backed agent in a temp module, run micro chat, then verify history via micro inspect.
  • Add helper functions for stopping the fixture and waiting for readiness output.
  • Update the zero-to-hero CI run script to include the new fixture test in the chat/inspect step.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
internal/harness/zero-to-hero-ci/run.sh Adds the new fixture test to the existing chat/inspect CI boundary step.
internal/harness/zero-to-hero-ci/docs_test.go Introduces an end-to-end CLI chat/inspect fixture test with a deterministic mock model and fixture lifecycle helpers.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +1035 to +1037
var fixtureOut strings.Builder
fixture.Stdout = &fixtureOut
fixture.Stderr = &fixtureOut
Comment on lines +1041 to +1060
defer func() {
if fixture.Process != nil {
_ = fixture.Process.Signal(os.Interrupt)
_ = fixture.Process.Kill()
}
}()

waitForCLIOutput(t, &fixtureOut, "first-agent fixture ready", 15*time.Second)

chat := runMicroCLIWithHome(t, micro, home, "chat", "--prompt", "Summarize my first-agent next steps", "assistant")
for _, want := range []string{"assistant:", "install the CLI", "run a service", "chat with an agent"} {
if !strings.Contains(chat, want) {
t.Fatalf("micro chat assistant output missing %q:\n%s\nfixture output:\n%s", want, chat, fixtureOut.String())
}
}

stopFixture(t, fixture)

inspect := runMicroCLIWithHome(t, micro, home, "inspect", "agent", "assistant", "--limit", "1")
for _, want := range []string{`Agent "assistant" runs`, "status=done", "last=done"} {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants