vq / vlib / net / http / h2spec / h2spec_expected_failures.txt
37 lines · 37 sloc · 2.54 KB · 02015a7ce111e4d0cfd5b5d78711ad0db7586936
Raw
# h2spec known-failure baseline for the net.http HTTP/2 server.
#
# One case ID per line, format " :: " exactly as emitted by
# the JUnit parser in run_h2spec.sh. Lines starting with # are comments.
#
# This is the set of h2spec cases the V server does NOT yet pass. CI fails only on
# a REGRESSION (a case not listed here that newly fails). When a listed case starts
# passing, run_h2spec.sh warns so the line can be removed and the gate tightened.
#
# Generated with h2spec v2.6.0 (146 tests). The original baseline was 37 failures
# (109 pass). Request header/pseudo-header validation (RFC 9113 §8.1.2/§8.2.2/§8.3)
# plus HPACK decode-error scope (§4.3: a decode failure is a connection-level
# COMPRESSION_ERROR, not RST_STREAM) closed 21 of them — 129 pass, 16 fail —
# verified stable at --timeout 5. NOTE: a handful of h2spec cases (CONTINUATION
# sequencing, unknown error codes) are timing-flaky at h2spec's 2s default — they
# wait for the server's GOAWAY/close — so run_h2spec.sh uses --timeout 5
# (H2SPEC_TIMEOUT) to keep the gate stable. Do not add a flaky case to this list;
# raise the timeout instead. The remaining 16 are genuine server-side conformance
# gaps: the stream state machine (frames on idle/closed streams), concurrent-stream
# limit, PRIORITY self-dependency, SETTINGS_ENABLE_PUSH validation, and flow-control
# zero-increment/overflow handling. Remove a line when the server is fixed to pass.
http2/5.1 :: closed: Sends a DATA frame
http2/5.1 :: closed: Sends a DATA frame after sending RST_STREAM frame
http2/5.1 :: half closed (remote): Sends a DATA frame
http2/5.1 :: idle: Sends a DATA frame
http2/5.1 :: idle: Sends a RST_STREAM frame
http2/5.1 :: idle: Sends a WINDOW_UPDATE frame
http2/5.1.2 :: Sends HEADERS frames that causes their advertised concurrent stream limit to be exceeded
http2/5.3.1 :: Sends HEADERS frame that depends on itself
http2/5.3.1 :: Sends PRIORITY frame that depend on itself
http2/6.1 :: Sends a DATA frame on the stream that is not in "open" or "half-closed (local)" state
http2/6.4 :: Sends a RST_STREAM frame on a idle stream
http2/6.5.2 :: SETTINGS_ENABLE_PUSH (0x2): Sends the value other than 0 or 1
http2/6.9 :: Sends a WINDOW_UPDATE frame with a flow control window increment of 0
http2/6.9 :: Sends a WINDOW_UPDATE frame with a flow control window increment of 0 on a stream
http2/6.9.1 :: Sends multiple WINDOW_UPDATE frames increasing the flow control window to above 2^31-1
http2/6.9.1 :: Sends multiple WINDOW_UPDATE frames increasing the flow control window to above 2^31-1 on a stream