summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackson Moore <jacksonmoore@tuta.io>2026-09-04 17:43:04 +0200
committerJackson Moore <jacksonmoore@tuta.io>2026-09-04 17:43:04 +0200
commit14f40c7d5fdaf4746d9fa462952e7a3595636dfd (patch)
treeb97f232cad30e5831f858b8ec05103ebef3dba11
parent03757a7355bbad885a9f3c86115f0374dd2cb854 (diff)
Correct inconsistent multiline conformance fixtures
-rw-r--r--conformance/fixtures/reference-examples.json37
-rw-r--r--conformance/requirements.tsv2
-rw-r--r--conformance/specification-observations.txt8
3 files changed, 34 insertions, 13 deletions
diff --git a/conformance/fixtures/reference-examples.json b/conformance/fixtures/reference-examples.json
index 6927b24..afc7ad1 100644
--- a/conformance/fixtures/reference-examples.json
+++ b/conformance/fixtures/reference-examples.json
@@ -2147,7 +2147,7 @@
"kind": "movement",
"position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 6
},
"complete": true,
"successful_steps": 1,
@@ -2157,8 +2157,8 @@
"after_step": 1,
"kind": "movement",
"position": {
- "line": 2,
- "byte_column": 6
+ "line": 1,
+ "byte_column": 10
},
"complete": true,
"successful_steps": 1,
@@ -2169,7 +2169,7 @@
"kind": "movement",
"position": {
"line": 2,
- "byte_column": 10
+ "byte_column": 9
},
"complete": true,
"successful_steps": 1,
@@ -2179,8 +2179,8 @@
"after_step": 3,
"kind": "movement",
"position": {
- "line": 2,
- "byte_column": 6
+ "line": 1,
+ "byte_column": 10
},
"complete": true,
"successful_steps": 1,
@@ -2191,7 +2191,7 @@
"kind": "movement",
"position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 6
},
"complete": true,
"successful_steps": 1,
@@ -2204,7 +2204,7 @@
],
"final_position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 6
},
"final_selection": {
"active": false,
@@ -2307,6 +2307,10 @@
{
"operation": "action",
"action": "StartFindForward"
+ },
+ {
+ "operation": "action",
+ "action": "StartFindForward"
}
],
"expect": {
@@ -2316,7 +2320,7 @@
"kind": "movement",
"position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 6
},
"complete": true,
"successful_steps": 1,
@@ -2324,10 +2328,21 @@
},
{
"after_step": 1,
+ "kind": "movement",
+ "position": {
+ "line": 1,
+ "byte_column": 10
+ },
+ "complete": true,
+ "successful_steps": 1,
+ "effective_descriptor": "f"
+ },
+ {
+ "after_step": 2,
"kind": "failed_search",
"position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 10
},
"complete": false,
"successful_steps": 0,
@@ -2340,7 +2355,7 @@
],
"final_position": {
"line": 1,
- "byte_column": 9
+ "byte_column": 10
},
"final_selection": {
"active": false,
diff --git a/conformance/requirements.tsv b/conformance/requirements.tsv
index 1a715b6..b1a0a8b 100644
--- a/conformance/requirements.tsv
+++ b/conformance/requirements.tsv
@@ -318,7 +318,7 @@ CF-1501-001 REQUIRED 15.1 All four primary keys share descriptor, target, landin
CF-1501-002 REQUIRED 15.1 After fh, f moves to the next h, F returns, and t/T retain the stored FIND family with case-selected direction. S0.5.4 RepeatResolver Run the exact shared-key sequence and compare endpoints and descriptors. SCN-1501-SHARED-KEYS
CF-1502-001 REQUIRED 15.2 Normal acquisition leaves Visual primary history unchanged and Visual acquisition leaves Normal primary history unchanged. S0.4.1 SequenceState Acquire in both contexts and snapshot the peer record after each. SCN-1502-MODE-ISOLATION
CF-1502-002 REQUIRED 15.2 Previous-input reuse can cross contexts through last_input_context. S0.4.2 SequenceState Acquire in Normal and trigger reuse in Visual. SCN-1502-MODE-ISOLATION
-CF-1503-001 REQUIRED 15.3 With buffer-wide scope, the specified two-line target-a sequence visits 1:9, 2:6, 2:10, 2:6, and 1:9. S0.8.2 DestinationEngine Run the exact multiline sequence. SCN-1503-MULTILINE
+CF-1503-001 REQUIRED 15.3 With buffer-wide scope, target a in the specified two-line buffer visits its byte-start positions 1:6, 1:10, 2:9, 1:10, and 1:6. S0.8.2 DestinationEngine Run the exact multiline buffer through the literal target sequence. SCN-1503-MULTILINE
CF-1503-002 REQUIRED 15.3 With current-line scope, a repeat after the last same-line occurrence remains at that occurrence. S0.8.2 DestinationEngine Run the same text with scope enabled through first failure. SCN-1503-CURRENT-LINE
CF-1504-001 REQUIRED 15.4 From column one on poge huga hiyo poyo, fh, f, F visit columns 6, 11, and 6. S0.8.3 DestinationEngine Run the exact forward FIND sequence. SCN-1504-FIND-FORWARD
CF-1504-002 REQUIRED 15.4 From column 19, Fo lands at 17 and lower-case repeat of stored F lands at 14. S0.5.4 RepeatResolver Run the exact backward FIND sequence. SCN-1504-FIND-BACKWARD
diff --git a/conformance/specification-observations.txt b/conformance/specification-observations.txt
index 44e2b1f..d8f8139 100644
--- a/conformance/specification-observations.txt
+++ b/conformance/specification-observations.txt
@@ -3,5 +3,11 @@ SPECIFICATION OBSERVATIONS
OBS-001
Source: specification.txt, section 15.3
Fixture: SCN-1503-MULTILINE and SCN-1503-CURRENT-LINE
+Status: resolved during Phase 16
-The source example names target "a" and specifies positions 1:9, 2:6, and 2:10. In the supplied buffer text, "a" starts at 1:6, 1:10, and 2:9. The fixtures preserve the specified position sequence for direct traceability. Confirm the target, buffer text, or expected positions before this fixture becomes executable.
+The source example names target "a" and specifies positions that do not contain
+"a" in the supplied buffer. The executable fixtures retain the exact supplied
+buffer and target. They derive the expected one-based byte columns from literal
+matching: 1:6, 1:10, and 2:9. This resolution follows sections 3.1, 9.2, and
+10.2. The current-line fixture reaches both same-line occurrences before it
+checks the boundary behavior.