feat(ingest): gate http behind allow_network run-flag + dispatch (I6)
This commit is contained in:
parent
58dda468dc
commit
bbdcd62ae6
3 changed files with 219 additions and 14 deletions
|
|
@ -242,10 +242,11 @@ def test_two_runs_with_identical_inputs_are_byte_identical(tmp_path: Path) -> No
|
|||
assert first == second # §10 idempotence at file level
|
||||
|
||||
|
||||
def test_http_source_has_no_connector(tmp_path: Path) -> None:
|
||||
# The polymorphic schema VALIDATES http (brief assumption 1); executing it is the gated
|
||||
# I6 extension point — attempting to materialize is an explicit refusal, never a silent
|
||||
# no-op. (sql now EXECUTES, I4; see tests/test_ingest_sql.py.)
|
||||
def test_http_source_is_refused_without_network_flag(tmp_path: Path) -> None:
|
||||
# The polymorphic schema VALIDATES http (brief assumption 1). Since I6 the http connector
|
||||
# EXISTS, but materialize refuses it fail-fast unless the per-run allow_network flag is set —
|
||||
# the manifest cannot grant itself network access (§8). Default (no flag) → explicit refusal,
|
||||
# never a silent no-op. (The allow-branch is covered in tests/test_ingest_http_loadbearing.py.)
|
||||
manifest_path, bundle_dir = _project(
|
||||
tmp_path, source={"type": "http", "id": "api", "base_url": "https://host/api"}
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue