[GH-ISSUE #70] Define controlled external-service test environments #56

Closed
opened 2026-10-15 18:20:35 +00:00 by bsakaguchi · 2 comments
Owner

Originally created by @morluto on GitHub (Jul 12, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/70

Problem

Offline fixtures cannot prove authentication, binding, reconnects, approvals, flags, or diagnostics owned by external services; personal or production credentials are unsafe authorities.

Outcome

Define a reusable policy and harness contract for disposable authorized staging/test environments.

Contract

Manifests describe sanitized service identity, permitted operations/data, disposable resources, credential lifecycle, capture scope, redaction/retention, seed/reset/teardown, exposed backend/flag metadata, and controlled-external authority.

Safety

Never use personal/production credentials. Require capture authorization, host allowlists, ephemeral injection, quotas, teardown verification, and secret/personal-data redaction. Failed teardown is a visible blocker. Store no private endpoints or credentials in fixtures.

Acceptance criteria

Manifests validate before execution; credentials never enter evidence/logs; resources are inventoried and destroyed; client observations are not claims about server implementation; drift is explicit; authorized captures produce sanitized replay fixtures.

Dependencies

Parent #40. Requires Evidence v2 environments, protocol capture, and secret policy.

Verification

Expiry/revocation, allowlists, redaction, quotas, teardown failure, version/flag drift, and offline replay tests.

Non-goals

Private-server implementation recovery, production monitoring, arbitrary credential brokering, or unauthorized traffic retention.

Originally created by @morluto on GitHub (Jul 12, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/70 ## Problem Offline fixtures cannot prove authentication, binding, reconnects, approvals, flags, or diagnostics owned by external services; personal or production credentials are unsafe authorities. ## Outcome Define a reusable policy and harness contract for disposable authorized staging/test environments. ## Contract Manifests describe sanitized service identity, permitted operations/data, disposable resources, credential lifecycle, capture scope, redaction/retention, seed/reset/teardown, exposed backend/flag metadata, and controlled-external authority. ## Safety Never use personal/production credentials. Require capture authorization, host allowlists, ephemeral injection, quotas, teardown verification, and secret/personal-data redaction. Failed teardown is a visible blocker. Store no private endpoints or credentials in fixtures. ## Acceptance criteria Manifests validate before execution; credentials never enter evidence/logs; resources are inventoried and destroyed; client observations are not claims about server implementation; drift is explicit; authorized captures produce sanitized replay fixtures. ## Dependencies Parent #40. Requires Evidence v2 environments, protocol capture, and secret policy. ## Verification Expiry/revocation, allowlists, redaction, quotas, teardown failure, version/flag drift, and offline replay tests. ## Non-goals Private-server implementation recovery, production monitoring, arbitrary credential brokering, or unauthorized traffic retention.
Author
Owner

@morluto commented on GitHub (Jul 20, 2026):

Split into focused child issues:

These replace the broad remaining scope in this issue. Closing this parent can happen once all children are closed.

<!-- gh-comment-id:5023446534 --> @morluto commented on GitHub (Jul 20, 2026): Split into focused child issues: - [ ] #383 - [ ] #384 These replace the broad remaining scope in this issue. Closing this parent can happen once all children are closed.
Author
Owner

@morluto commented on GitHub (Jul 20, 2026):

Closing as out of scope / premature for the current local CLI/MCP reverse-engineering focus: no supporting code exists, and these areas should be revisited only after in-tree providers and the public boundary are stable.

<!-- gh-comment-id:5023568444 --> @morluto commented on GitHub (Jul 20, 2026): Closing as out of scope / premature for the current local CLI/MCP reverse-engineering focus: no supporting code exists, and these areas should be revisited only after in-tree providers and the public boundary are stable.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#56
No description provided.