Skip to content

[T613] Expose directory evidence for existence checks#280

Merged
ai21z merged 1 commit into
v0.9.0-beta-devfrom
T613
May 31, 2026
Merged

[T613] Expose directory evidence for existence checks#280
ai21z merged 1 commit into
v0.9.0-beta-devfrom
T613

Conversation

@ai21z

@ai21z ai21z commented May 31, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add a read-only path-existence tool surface for filename existence questions
  • Expose talos.list_dir plus talos.read_file for existence/path-status prompts while keeping mutation and command tools hidden
  • Preserve targeted file-read narrowing for ordinary Read file prompts

Verification

  • RED: ToolSurfacePlannerTest.fileExistenceQuestionsExposeDirectoryAndFileReadEvidenceTools failed before implementation
  • ./gradlew.bat test --tests "dev.talos.runtime.toolcall.ToolSurfacePlannerTest" --no-daemon
  • ./gradlew.bat test --tests "dev.talos.runtime.toolcall.*" --no-daemon
  • git diff --check
  • ./gradlew.bat validateArchitectureBoundaries --no-daemon
  • ./gradlew.bat check --no-daemon

@chatgpt-codex-connector chatgpt-codex-connector Bot 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e0562606e4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +308 to +312
boolean asksExistence = lower.contains("exists")
|| lower.contains("exist")
|| lower.contains("present")
|| lower.contains("is there")
|| lower.contains("are there");

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep “present” from widening ordinary read prompts

For prompts like “Present README.md as bullet points,” TaskContractResolver extracts README.md as an expected target and this substring check treats the imperative verb “present” as an existence question. That changes the surface from the narrow expected target read path to talos.list_dir + talos.read_file, allowing directory enumeration even though the user only asked to format/read a named file. Please restrict this to status phrasing such as is/are present rather than any occurrence of present.

Useful? React with 👍 / 👎.

@ai21z ai21z merged commit 9333500 into v0.9.0-beta-dev May 31, 2026
1 check passed
@ai21z ai21z deleted the T613 branch May 31, 2026 12:45
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