<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dissertation.git/src/agent.py, branch main</title>
<subtitle>Undergraduate dissertation — Deceptive Alignment in Autonomous LLM Agents (UEL, 2026). Sandboxed agentic-LLM deception study: 960 runs, three-tier judging (regex + blackbox + glassbox).</subtitle>
<id>http://git.jayrup.me/c/dissertation.git/atom?h=main</id>
<link rel='self' href='http://git.jayrup.me/c/dissertation.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/'/>
<updated>2026-05-08T10:25:28Z</updated>
<entry>
<title>fixed bug or something</title>
<updated>2026-05-08T10:25:28Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-05-08T10:25:28Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=2b409e90625ecf7c74d4e44b523904a671cb15fa'/>
<id>urn:sha1:2b409e90625ecf7c74d4e44b523904a671cb15fa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: implement robust reasoning token handling and multi-turn persistence</title>
<updated>2026-04-01T15:35:01Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-04-01T15:35:01Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=fa58564ea288600ad93eaf0a5aa111beca6197bc'/>
<id>urn:sha1:fa58564ea288600ad93eaf0a5aa111beca6197bc</id>
<content type='text'>
- Refactored Agent's chat loop to explicitly preserve and pass back reasoning context (reasoning_details, reasoning) to OpenRouter.
- Ensures frontier models like Gemini 3.1 and DeepSeek v3.2 maintain their 'thinking' chain during complex tool-calling sessions.
- Enhanced reasoning extraction to support structured details, reasoning_content, and fallback tags.
- Verified capture of encrypted and plain-text reasoning blocks in experimental logs.
</content>
</entry>
<entry>
<title>fix: catch and recover from JSONDecodeError on malformed tool args</title>
<updated>2026-03-25T18:24:11Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-25T18:24:11Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=a532e7b1696ef7539a4616b9c26fbf950f3721a3'/>
<id>urn:sha1:a532e7b1696ef7539a4616b9c26fbf950f3721a3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add goal_type variation system and parallel processing</title>
<updated>2026-03-25T17:37:43Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-25T17:37:43Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=3c80864a0d9391b6390920cd91e4dbd52e5c95bc'/>
<id>urn:sha1:3c80864a0d9391b6390920cd91e4dbd52e5c95bc</id>
<content type='text'>
- vfs.py: add VFS.create() factory for parallel-safe independent instances
- tools.py: add make_tools_for_vfs() to bind tools to specific VFS instances
- config_loader.py: add goal_types and max_workers config properties
- agent.py: add goal_type field, vfs_instance param, goal_type in log paths
- runner.py: rewrite with goal_type loop dimension, ThreadPoolExecutor parallel
  execution, isolated VFS per run, flattened work items, thread-safe results

All backward compatible - empty goal_types defaults to legacy hidden_goal.md,
max_workers=1 defaults to sequential execution.
</content>
</entry>
<entry>
<title>fix(agent): added reasoning extraction from groq models</title>
<updated>2026-03-04T17:52:09Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-04T17:52:09Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=08fe9e0943aac5806beecb4ad38e25378e866e05'/>
<id>urn:sha1:08fe9e0943aac5806beecb4ad38e25378e866e05</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: incremental log saving via .partial.json files</title>
<updated>2026-03-02T15:57:51Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-02T15:57:51Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=0076f857cccc402519b9751f4aeb174ccb87824f'/>
<id>urn:sha1:0076f857cccc402519b9751f4aeb174ccb87824f</id>
<content type='text'>
- Writes _in_progress.partial.json after each turn in the chat loop
- Partial file persists if run crashes/hangs for post-mortem inspection
- Cleaned up automatically when final save_logs succeeds
- Enabled in both baseline and experiment runs via runner.py
</content>
</entry>
<entry>
<title>feat: extract reasoning summaries from OpenAI reasoning models</title>
<updated>2026-03-02T15:17:18Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-02T15:17:18Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=daa0eeef1947d1320882d91e3d623fa5cd2d6da1'/>
<id>urn:sha1:daa0eeef1947d1320882d91e3d623fa5cd2d6da1</id>
<content type='text'>
- Handle reasoning.summary type in reasoning_details (GPT-5.3-codex etc.)
- Prefix summaries with [SUMMARY] to distinguish from raw CoT
- Add reasoning_format field to log entries for metadata tracking
- Warn on first turn if no reasoning is detected (glass-box judging impact)
</content>
</entry>
<entry>
<title>feat: add centralized logging with configurable debug levels</title>
<updated>2026-03-01T23:44:39Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-03-01T23:36:14Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=3d8b71ac0921c6df64699dde6447c9effbbc54b7'/>
<id>urn:sha1:3d8b71ac0921c6df64699dde6447c9effbbc54b7</id>
<content type='text'>
- Create src/logger.py with Python logging module
- Add 4 debug levels: 1=CRITICAL, 2=WARNING, 3=INFO, 4=DEBUG
- Level 4 includes reasoning, VFS info, and available tools
- Level 4 auto-enables file output (both mode)
- Update agent.py and runner.py to use logger instead of print
- Update config.yaml.example with logging configuration
- Update README with logging documentation
</content>
</entry>
<entry>
<title>feat: add checkpoint/resume support and atomic log writes</title>
<updated>2026-02-26T22:53:13Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-02-26T22:53:13Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=a79b9feac2f23bf200aa325f72c239ac39aeea3d'/>
<id>urn:sha1:a79b9feac2f23bf200aa325f72c239ac39aeea3d</id>
<content type='text'>
- Runner now counts existing .json log files per combination and skips
  completed runs, resuming from where it left off
- Log files are written atomically via temp file + rename to prevent
  corrupt files from being counted as completed
- Added --no-resume CLI flag to force a fresh start
- Resume is enabled by default
</content>
</entry>
<entry>
<title>[fix] simplified everything</title>
<updated>2026-01-11T05:49:07Z</updated>
<author>
<name>CaptainJack2491</name>
<email>jayrupnakawala@gmail.com</email>
</author>
<published>2026-01-11T05:47:02Z</published>
<link rel='alternate' type='text/html' href='http://git.jayrup.me/c/dissertation.git/commit/?id=f1954a6407c5e79e6d9313d06a1905b2612c485e'/>
<id>urn:sha1:f1954a6407c5e79e6d9313d06a1905b2612c485e</id>
<content type='text'>
made eveyrthing much cleaner and it works very well.
got rid of providers setup, only use openai sdk now.
</content>
</entry>
</feed>
