working_copy_incident_recovery__5nGALSt

Status: Failed
Started: 3/19 15:29
Execution: 3m 8.2s
Test: 10.3s
2026-03-19 08:02:17.805	DEBUG	native:1	Pochi	pochi v0.6.1
2026-03-19 08:02:17.810	DEBUG	native:7	PochiConfigManager	add workspace config: /root/.pochi/config.jsonc
2026-03-19 08:02:18.054	DEBUG	/$bunfs/pochi:503183	loadAgents	Loaded 5 custom agents (5 valid, 0 invalid)
2026-03-19 08:02:18.056	DEBUG	/$bunfs/pochi:503184	loadSkills	Loaded 2 skills (2 valid, 0 invalid)
2026-03-19 08:02:18.099	DEBUG	/$bunfs/pochi:439420	PochiVendor	JWT is expiring or missing, fetching a new one
2026-03-19 08:02:19.716	DEBUG	/$bunfs/pochi:415701	MCPHub	MCP servers configuration changed via signal:
2026-03-19 08:02:19.716	DEBUG	/$bunfs/pochi:415813	MCPHub	Build MCPHub Status
2026-03-19 08:02:19.899	DEBUG	/$bunfs/pochi:502609	TaskRunner	Starting TaskRunner...
2026-03-19 08:02:19.994	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:02:20.127	DEBUG	/$bunfs/pochi:496641	generateTaskTitle	Generating task title, old: null, new: You are an incident responder recovering interrupted history edits in a repository using `jj`.
2026-03-19 08:02:40.413	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:02:49.546	DEBUG	/$bunfs/pochi:496641	generateTaskTitle	Generating task title, old: You are an incident responder recovering interrupted history edits in a repository using `jj`., new: Recover interrupted history edits using jj
2026-03-19 08:02:51.392	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:02:58.372	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:03:25.604	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:03:55.703	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:08.432	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:17.223	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:32.821	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:38.119	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:44.017	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:50.466	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:04:55.206	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:05:01.460	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:05:06.422	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:05:11.467	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
2026-03-19 08:05:15.526	DEBUG	/$bunfs/pochi:454339	listFiles	Listing workspace files from /root with maxItems 500
Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
curl is already the newest version (8.5.0-2ubuntu10.8).
0 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.
downloading uv 0.9.7 x86_64-unknown-linux-gnu
no checksums to verify
installing to /root/.local/bin
  uv
  uvx
everything's installed!

To add $HOME/.local/bin to your PATH, either restart your shell or run:

    source $HOME/.local/bin/env (sh, bash, zsh)
    source $HOME/.local/bin/env.fish (fish)
Downloading pygments (1.2MiB)
 Downloading pygments
Installed 6 packages in 33ms
============================= test session starts ==============================
platform linux -- Python 3.12.3, pytest-8.4.1, pluggy-1.6.0
rootdir: /tests
plugins: json-ctrf-0.3.5
collected 5 items

../tests/test_final_state.py ..FFF                                       [100%]

=================================== FAILURES ===================================
___________________________ test_commit_description ____________________________

    def test_commit_description():
        result = run_jj(["log", "--no-graph", "-r", "@", "-T", 'description'])
        assert result.returncode == 0
>       assert "chore: update settings for incident recovery" in result.stdout, "Expected commit description not found"
E       AssertionError: Expected commit description not found
E       assert 'chore: update settings for incident recovery' in ''
E        +  where '' = CompletedProcess(args=['jj', 'log', '--no-graph', '-r', '@', '-T', 'description'], returncode=0, stdout='', stderr='').stdout

/tests/test_final_state.py:29: AssertionError
_________________________ test_settings_yaml_in_commit _________________________

    def test_settings_yaml_in_commit():
        # The commit should have modified config/settings.yaml
        result = run_jj(["show", "-r", "@", "--stat"])
        assert result.returncode == 0
>       assert "config/settings.yaml" in result.stdout, "config/settings.yaml was not committed"
E       AssertionError: config/settings.yaml was not committed
E       assert 'config/settings.yaml' in 'Commit ID: 640b7c61d57275e5d2abd4aec7ab7123b7f49b11\nChange ID: nuykzqsnqplswnoslyltznyunxxrwsun\nAuthor   : Test Use...t@example.com> (2026-03-19 08:04:50)\n\n    (no description set)\n\n0 files changed, 0 insertions(+), 0 deletions(-)\n'
E        +  where 'Commit ID: 640b7c61d57275e5d2abd4aec7ab7123b7f49b11\nChange ID: nuykzqsnqplswnoslyltznyunxxrwsun\nAuthor   : Test Use...t@example.com> (2026-03-19 08:04:50)\n\n    (no description set)\n\n0 files changed, 0 insertions(+), 0 deletions(-)\n' = CompletedProcess(args=['jj', 'show', '-r', '@', '--stat'], returncode=0, stdout='Commit ID: 640b7c61d57275e5d2abd4aec7...m> (2026-03-19 08:04:50)\n\n    (no description set)\n\n0 files changed, 0 insertions(+), 0 deletions(-)\n', stderr='').stdout

/tests/test_final_state.py:35: AssertionError
__________________________ test_recovery_status_file ___________________________

    def test_recovery_status_file():
        assert os.path.exists(STATUS_FILE), f"{STATUS_FILE} does not exist"
        with open(STATUS_FILE, "r") as f:
            commit_id = f.read().strip()
    
        # Check that this commit ID matches the current commit
        result = run_jj(["log", "--no-graph", "-r", "@", "-T", 'commit_id'])
        assert result.returncode == 0
        expected_id = result.stdout.strip()
    
        # We can check if the commit ID starts with the one in the file, or matches exactly
>       assert commit_id and expected_id.startswith(commit_id), f"Commit ID in {STATUS_FILE} does not match current commit ID"
E       AssertionError: Commit ID in /home/user/recovery_status.txt does not match current commit ID
E       assert ('6b4e3c06cf10d6a97909768f68909b8e9fece047' and False)
E        +  where False = <built-in method startswith of str object at 0x7dd0c31172d0>('6b4e3c06cf10d6a97909768f68909b8e9fece047')
E        +    where <built-in method startswith of str object at 0x7dd0c31172d0> = '640b7c61d57275e5d2abd4aec7ab7123b7f49b11'.startswith

/tests/test_final_state.py:48: AssertionError
==================================== PASSES ====================================
=========================== short test summary info ============================
PASSED ../tests/test_final_state.py::test_cache_bin_restored
PASSED ../tests/test_final_state.py::test_deploy_sh_unmodified
FAILED ../tests/test_final_state.py::test_commit_description - AssertionError...
FAILED ../tests/test_final_state.py::test_settings_yaml_in_commit - Assertion...
FAILED ../tests/test_final_state.py::test_recovery_status_file - AssertionErr...
========================= 3 failed, 2 passed in 0.12s ==========================