Skip to content

Sync from internal repositories: sample agents and tools, application-layer outcomes, QA hardening - #63

Merged
odinwang merged 1 commit into
mainfrom
sync-2026-10-17
Oct 17, 2026
Merged

odinwang merged 1 commit into
mainfrom
sync-2026-10-17

Conversation

@odinwang

Copy link
Copy Markdown
Contributor

Summary

Sync from internal repositories since #60: sample agents and tools, application-layer outcomes in Observability, QA hardening, tighter kernel IAM, and the portal frontend published by the pipeline. 114 files changed.

Sample agents and tools

  • samples/agents/investment-assistant/: a cloneable sample agent (prompt, agent and sample manifests, eval set), with a design document and two diagrams under docs/samples/investment-assistant/.
  • samples/tools/crypto-price/ (Lambda target) and samples/tools/stock-quote/ (OpenAPI target with an API-key credential provider), each with a Cedar policy template and offline tests.
  • Portal: a Samples page and a sample detail page; backend samples_service and /samples API.
  • Terraform: a sample_tools module in both roots. The foundation discovers credential providers by name and grants the gateway role read on exactly those; the workloads root creates the gateway targets and Cedar policies. scripts/set_sample_tool_key.sh registers an external key (from a file or stdin, never an argument) without putting it in Terraform state.
  • The sample-tools gateway policy engine defaults to LOG_ONLY (sample_tools_policy_mode); switch it to ENFORCE once traces look right.
  • scripts/samples_lint.py and scripts/seed_samples.py; isolation and policy tests for the sample stack.

Observability: application-layer outcomes

  • Customizable outcomes derived from evaluation runs (ApplicationOutcomes in the Observability page), demo scripts, and docs/observability.md.
  • The judge verdict parser fails closed: a verdict is accepted only when the output holds exactly one JSON object with a boolean pass.

QA hardening

Adversarial tests and fixes for API hardening, listings and credentials, pipeline delegation, and sample runtime binding.

IAM

  • Kernel role trust and hub-secret access scoped per runtime kind (interactive, SDK, sample).
  • Staging gateway isolation tests.

Deployment

  • The portal frontend is built and published by the apply step, which writes /version.json with the deployed commit; verify checks it.
  • Runtime observability and platform version wiring in the workloads root.

Docs

docs/ci-cd.md, docs/permissions.md, docs/user-guide.md, samples/README.md, EXTENDING.md.

Supersedes #44.

🤖 Generated with Claude Code

Comment thread samples/tools/crypto-price/tests/test_handler.py Dismissed
Comment thread terraform/tests/test_kernel_role_trust_adversarial.py Dismissed
@odinwang
odinwang merged commit 749bb1c into main Oct 17, 2026
3 checks passed
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.

2 participants