NAR-007
Hard constraint
layer: paragraph
Control point of view
IF perception, knowledge, or interior access exceeds the established viewpoint without a marked shift, THEN remove, recast, or mark the shift ELSE retain.
Why the rule exists
Viewpoint defines which information the narrative camera can access.
Condition
The rule fires when this evaluates true. Paths marked below must be present in the fact base; the engine reports the rest rather than guessing them.
- ALL
- paragraph.viewpoint_boundary_crossed eq true
- paragraph.viewpoint_shift_marked eq false
Facts this rule reads
| Path | Source |
|---|---|
paragraph.viewpoint_boundary_crossed |
You supply it |
paragraph.viewpoint_shift_marked |
You supply it |
Then
- recast — target
paragraph - mark — target
viewpoint_shift
Else
- retain — target
current_text, No triggering condition is present.
LAKA
- Smallest sufficient intervention
- Yes
- Primary axes
Sources
-
Self-Editing for Fiction Writers — Renni Browne; Dave King
Dialogue, viewpoint, exposition, scene, and revision. -
Steering the Craft — Ursula K. Le Guin
Sound, rhythm, syntax, point of view, and exercises.
The raw rule record
Verbatim from 13-narrative-rules.json. Also available at /v1/rules/NAR-007.
{
"id": "NAR-007",
"name": "Control point of view",
"domain": "narrative",
"layer": "paragraph",
"strength": "hard_constraint",
"human_logic": "IF perception, knowledge, or interior access exceeds the established viewpoint without a marked shift, THEN remove, recast, or mark the shift ELSE retain.",
"when": {
"all": [
{
"path": "paragraph.viewpoint_boundary_crossed",
"operator": "eq",
"value": true
},
{
"path": "paragraph.viewpoint_shift_marked",
"operator": "eq",
"value": false
}
]
},
"then": [
{
"action": "recast",
"target": "paragraph",
"within": "established_viewpoint"
},
{
"action": "mark",
"target": "viewpoint_shift",
"when": "shift_intended"
}
],
"else": [
{
"action": "retain",
"target": "current_text",
"reason": "No triggering condition is present."
}
],
"unless": [],
"because": "Viewpoint defines which information the narrative camera can access.",
"diagnostics": [],
"examples": {},
"source_ids": [
"BK-017",
"BK-019"
],
"laka": {
"smallest_sufficient_intervention": true,
"primary_axes": [
"scope",
"depth",
"magnitude",
"reversibility"
]
}
}
Other narrative rules
- NAR-001 Give the focal agent a desire IF a narrative section expects forward motion AND the focal agent has no legible desire or need, THEN reveal one ELSE retain deliberate mystery with another source of propulsion. Context default
- NAR-002 Obstacle opposes the desire IF the focal agent has a desire but no meaningful resistance, THEN introduce an external, interpersonal, internal, or systemic obstacle ELSE retain. Context default
- NAR-003 Make stakes change choice IF failure or success would not alter the agent’s choices, relationships, identity, resources, safety, or future, THEN strengthen or clarify stakes ELSE retain a low-stakes form by design. Context default
- NAR-004 Events cause later events IF a major event has no causal, motivational, or thematic relation to what precedes it, THEN connect, foreshadow, move, or remove it ELSE retain. Hard constraint
- NAR-005 Scene contains a turn IF a scene begins and ends with the same relevant value, knowledge, power, relationship, or plan, THEN add a turn or compress the scene ELSE retain an intentional atmosphere scene. Heuristic
- NAR-006 Choice reveals character IF the story asserts a trait without a consequential choice that demonstrates it, THEN create or cite such a choice ELSE retain. Heuristic
- NAR-008 Keep narrative tense stable IF narrative tense changes without a time-frame or mode shift, THEN restore the established tense ELSE retain. Context default
- NAR-009 Use scene when the moment changes the state IF an event contains consequential choice, conflict, discovery, or relationship change, THEN dramatize enough of it as scene ELSE summary may carry it. Heuristic