FA-12536 / Biological sequence representation / Open access
Unknown bases are deleted before k-mer extraction · case 01
Unknown bases are deleted before k-mer extraction.
ROOT CAUSE
Deletion joins flanking bases into nonexistent contiguous windows.
VERIFIED REPAIR
Implement the stated sequence contract while preserving its positional and symbol semantics.
Unsuccessful approach: Replacing unknown bases with A fabricates concrete windows.
Case contract
For uppercase ACGTN input, return length-k contiguous windows containing no N, preserving repeats and order; k positive. N breaks eligibility without removing positions.
Why this case matters
An offline abstract sequence-data model; useful for testing representation invariants without biological inference.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(s,k):
s=s.replace('N','')
return [s[i:i+k] for i in range(len(s)-k+1)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('variable barrier', solve('A'*N+'NC',2), ['AA']*max(0,N-1))
check('unknown only', solve('NN',1), [])
check('empty', solve('',2), [])
check('too short', solve('A',2), [])
check('valid duplicate', solve('AAA',2), ['AA','AA'])
check('ends', solve('NACN',2), ['AC'])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| variable barrier | ['AC'] | [] | Failed |
| unknown only | [] | [] | Passed |
| empty | [] | [] | Passed |
| too short | [] | [] | Passed |
| valid duplicate | ['AA', 'AA'] | ['AA', 'AA'] | Passed |
| ends | ['AC'] | ['AC'] | Passed |
SHA-256 / cc4b167a54edcf1baad73e7bf1b036b762402bb02f18e3788c09ed209787e330
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(s,k):
s=s.replace('N','A')
return [s[i:i+k] for i in range(len(s)-k+1)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('variable barrier', solve('A'*N+'NC',2), ['AA']*max(0,N-1))
check('unknown only', solve('NN',1), [])
check('empty', solve('',2), [])
check('too short', solve('A',2), [])
check('valid duplicate', solve('AAA',2), ['AA','AA'])
check('ends', solve('NACN',2), ['AC'])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| variable barrier | ['AA', 'AC'] | [] | Failed |
| unknown only | ['A', 'A'] | [] | Failed |
| empty | [] | [] | Passed |
| too short | [] | [] | Passed |
| valid duplicate | ['AA', 'AA'] | ['AA', 'AA'] | Passed |
| ends | ['AA', 'AC', 'CA'] | ['AC'] | Failed |
SHA-256 / 11a77f4be2844729bd0af09228aaeaaa3d3173641ce917db13ae5aa5241470b6
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(s,k):
return [s[i:i+k] for i in range(len(s)-k+1) if 'N' not in s[i:i+k]]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('variable barrier', solve('A'*N+'NC',2), ['AA']*max(0,N-1))
check('unknown only', solve('NN',1), [])
check('empty', solve('',2), [])
check('too short', solve('A',2), [])
check('valid duplicate', solve('AAA',2), ['AA','AA'])
check('ends', solve('NACN',2), ['AC'])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| variable barrier | [] | [] | Passed |
| unknown only | [] | [] | Passed |
| empty | [] | [] | Passed |
| too short | [] | [] | Passed |
| valid duplicate | ['AA', 'AA'] | ['AA', 'AA'] | Passed |
| ends | ['AC'] | ['AC'] | Passed |
SHA-256 / 65e89aacefbeefd6cef1aaf3eec26e6e080f32dbaa6213d3c482bcb39b5a2b08
Verification & scope
Synthetic strings and explicit policies only; no biological interpretation or laboratory workflow. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.
Observations recorded using Python 3.12.14 at 2026-09-29T14:38:57.852817+00:00.
Case digest / ef806b58df459ed834b5719f5798764600531fbd51a7861ecdeff7df7fcb124a