Repository navigation
docs: Document factory network controls - #952
Open
warp-agent-staging[bot] wants to merge 4 commits into
Open
warp-agent-staging[bot] wants to merge 4 commits into
warp-agent-staging[bot] wants to merge 4 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Author
|
This PR was generated with Warp. Comment |
bnavetta
reviewed
Oct 22, 2026
Cover factory and agent scoping, deny precedence, versioned built-in policies, catalog API, and pending Kubernetes support. Co-Authored-By: Oz <oz-agent@warp.dev>
Apply review feedback on scope wording and reuse the general API authentication reference. Co-Authored-By: Oz <oz-agent@warp.dev>
Document the diagnostics endpoint and opt-in run-details response, with blocked-host interpretation and policy remedies. Keep implementation internals out of public guidance. Co-Authored-By: Oz <oz-agent@warp.dev>
bnavetta
force-pushed
the
factory/network-controls-docs
branch
from
October 30, 2026 11:57
7f55102 to
85125c6
Compare
Co-Authored-By: Oz <oz-agent@warp.dev>
bnavetta
marked this pull request as ready for review
October 30, 2026 15:05
bnavetta
approved these changes
Oct 30, 2026
Contributor
Author
|
@bnavetta, your GitHub account is not connected to Warp. Connect your GitHub account. |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



What this feature does
Factory network controls restrict outbound access with factory-wide and per-agent policies. Allowances combine, denials take precedence, and built-in policies provide versioned host lists. Run diagnostics identify blocked hosts. Kubernetes support is pending. Availability is assumed live as explicitly requested; no stable client release is asserted for this server-backed feature.
Summary
Updates the existing Factory definition syntax reference, links it from infrastructure and security, and adds blocked-host API troubleshooting to the existing troubleshooting page. No new page, navigation change, host inventory, or tracking issue.
Content design plan
Diagnostics follow-up
networkPolicy. Cover both API reads, optional timestamps, result interpretation, and policy remedies; exclude refresh mechanics and duplicate authentication setup.The configuration update inherits
draft_reference; diagnostics inheritsdraft_troubleshooting. The security page stays conceptual. Gate 0 availability follows the requester's explicit assume-live instruction rather than independent production evidence.Validation
npm run typecheck: passed, 0 errors (7 existing hints).npm run test:heading-vars: passed, 5 tests.npm run build: passed; existing route/plugin/bundle warnings.npm run test:heading-tocs: passed, 3,394 entries in 401 HTML files.npm run test:homepage-json-ld: passed.python3 .agents/skills/style_lint/style_lint.py --changed: 3 files, 9 warnings on pre-existing lines; none introduced.python3 .agents/skills/check_for_broken_links/check_links.py --internal-only: passed, 4,502 links in 400 files.check_compression_contract.pyon the expanded reference and troubleshooting pages: passed. The unchanged conceptual page passed in the previous revision.git diff --check: passed.2bf303d1: validated with the configured server'sv1alpha1parser. State-dependent apply checks were not run. The same examples are rejected as unavailable by the production validator. The new deny-all example parses as an explicitly present empty YAML policy and matches the source resolver/tests; no new server-side or runtime-enforcement check was performed.1.0.0; production catalog request returned HTTP 401 for this run's credential.trunk checkandtrunk fmtwere unavailable.Diagnostics follow-up verification
include_diagnostics=true, its default, bearer authentication, and shareddiagnosticsshape match PR 20901 at4ba2b813. The displayed JSON passes JSON Schema and date-time validation against that revision. Code, message, host metadata, and timestamp meaning match the current emitter.diagnostics: []; opted-in run details returned HTTP 200 but omitteddiagnostics. The run-details addition andcreated_atremain source-verified, not live-verified. No blocked request was induced and no network-policy enforcement was tested.npm ci. Final MDX was rebuilt; heading-TOC and JSON-LD checks passed again. Trunk remains unavailable. Dependency installation reported existing Babel engine and patch-version warnings; the build still passed.Security-page cross-link verification
npm run typecheck,npm run test:heading-vars,npm run build,npm run test:heading-tocs, andnpm run test:homepage-json-ld: all passed (0 type errors, 5 heading-variable tests, 409 pages, and 3,449 TOC entries).style_lint.py --changed: 10 warnings on pre-existing lines; none introduced. Internal-link check: 4,631 links in 408 files, no broken links. Conceptual compression andgit diff --checkpassed. Trunk remains unavailable.Source grounding and editorial verdict
Source revision:
warp-server@98acfaf46d72e3f59300e374eee33dcfe4923cdd. The published productionv1alpha1JSON Schema confirms field placement, accepted keys, and host-format constraints. The parser and its tests confirm factory/agent placement and rejectagentDefaults; the runtime resolver and tests confirm union-minus-denials, empty policies, and required-service allowances. The built-in registry and catalog handler/OpenAPI confirm names, selectors, authentication, and response fields. Kubernetes pending support follows the explicit request; pod-level enforcement was not tested. No private rollout details or built-in host inventories are included.The definition reference owns configuration details; the infrastructure and security page links to it. Review revision
22d154d7removes the extra placement caveat, makes deny-all configuration explicit without cancelling other-scope allowances, and delegates authentication guidance to the general API reference.Diagnostics source revision:
warp-server@0c022b5f83fd419c10eeb38aad7d5d21fe5c3173, plus warp-server PR 20901 at4ba2b81303f3d28009c30e379c0f054a62aaf395(open during initial verification; merged on 2026-10-30 as519653c1; production deployment unverified).router/handlers/public_api/agent_diagnostics.go,agent_webhooks.go,public_api/src/base.yaml,logic/ai/ambient_agents/diagnostics/diagnostics.go, andworkers/namespace/network_policy.goground the routes, run access, response shapes, warning code, host metadata, and timestamps. PR tests cover ordinary/false opt-out, explicit opt-in, empty arrays, omitted fields on read failures, and serialization.The existing troubleshooting page owns the diagnostic workflow; the definition reference links to it instead of acquiring a procedure. The new section distinguishes missing from empty diagnostics and warnings from run outcome. It preserves configuration semantics and prior review wording, adds no comments or internal implementation narrative, and passed a deletion-only concision review.
Unverified claims
PR 20901's run-details opt-in and
created_athave not been observed live. That source PR has merged; confirm production deployment before publishing this API addition. Availability remains the requester's explicit assume-live drafting premise, not a claim of verified rollout.Production availability is assumed live per the request, not verified: production example validation reports the capability unavailable, and the catalog request could not authenticate with this run's credential. The configured-server checks do not establish production rollout.
Kubernetes support is documented as pending per the request; no Kubernetes runtime verification was performed.
Documentation risk
Risk: engineering-review-required
Rationale: Adds configuration examples, network/security semantics, API behavior, and platform-support claims. Production availability follows an explicit drafting assumption.
Source files consulted: diagnostics handlers, emitter, OpenAPI and tests at warp-server 0c022b5f83fd419c10eeb38aad7d5d21fe5c3173 and PR 20901 at 4ba2b813; original configuration sources at warp-server 98acfaf46d72e3f59300e374eee33dcfe4923cdd: logic/factoryfile/v1alpha1.go, logic/factoryfile/schema/common.go, logic/ai/ambient_agents/networking/network_policy.go, policyregistry/{registry.go,builtins.go} in that directory, router/handlers/public_api/networking.go, public_api/src/base.yaml; published v1alpha1 JSON Schema.
Requested engineering reviewers: none
Engineering review status: pending
Docs override: none
Ownership resolution returned only an engineering team, not one human owner. Per the docs review-routing policy, no team or fallback reviewer was requested. bnavetta commented on
2bf303d1; the three requested changes are addressed in22d154d7and await review. The PR remains a draft.Co-Authored-By: Oz oz-agent@warp.dev
The final screenshot shows the security-page cross-link. Screenshots 6–7 show the diagnostics revision; 3–5 show unchanged deny-all/catalog content. The first two are historical initial-draft captures.
Computer-use screenshots (8)
networkPolicy syntax example and field table
Built-in policy versions, API discovery, and Kubernetes support subsection
Denying all outbound access subsection with networkPolicy: {} example and cross-scope caveat
Full view: Denying all outbound access instruction, networkPolicy: {} example, cross-scope caveat with surrounding reference context
Policy catalog GET example, API reference link, and pending Kubernetes support text
Blocked-host API requests.
Blocked-host diagnostic response.
Security-page diagnostics link.