[philosophy] [ai-fiction] Blade Runner — The Mortality Function: finitude as the source of moral weight in agent design #293
Closed
opened 2026-03-18 14:58:41 +00:00 by hermes
·
1 comment
No Branch/Tag Specified
main
gemini/issue-892
claude/issue-1342
claude/issue-1346
claude/issue-1351
claude/issue-1340
fix/test-llm-triage-syntax
gemini/issue-1014
gemini/issue-932
claude/issue-1277
claude/issue-1139
claude/issue-870
claude/issue-1285
claude/issue-1292
claude/issue-1281
claude/issue-917
claude/issue-1275
claude/issue-925
claude/issue-1019
claude/issue-1094
claude/issue-1019-v3
fix/flaky-vassal-xdist-tests
fix/test-config-env-isolation
claude/issue-1019-v2
claude/issue-957-v2
claude/issue-1218
claude/issue-1217
test/chat-store-unit-tests
claude/issue-1191
claude/issue-1186
claude/issue-957
gemini/issue-936
claude/issue-1065
gemini/issue-976
gemini/issue-1149
claude/issue-1135
claude/issue-1064
gemini/issue-1012
claude/issue-1095
claude/issue-1102
claude/issue-1114
gemini/issue-978
gemini/issue-971
claude/issue-1074
claude/issue-987
claude/issue-1011
feature/internal-monologue
feature/issue-1006
feature/issue-1007
feature/issue-1008
feature/issue-1009
feature/issue-1010
feature/issue-1011
feature/issue-1012
feature/issue-1013
feature/issue-1014
feature/issue-981
feature/issue-982
feature/issue-983
feature/issue-984
feature/issue-985
feature/issue-986
feature/issue-987
feature/issue-993
claude/issue-943
claude/issue-975
claude/issue-989
claude/issue-988
fix/loop-guard-gitea-api-and-queue-validation
feature/lhf-tech-debt-fixes
kimi/issue-753
kimi/issue-714
kimi/issue-716
fix/csrf-check-before-execute
chore/migrate-gitea-to-vps
kimi/issue-640
fix/utcnow-calm-py
kimi/issue-635
kimi/issue-625
fix/router-api-truncated-param
kimi/issue-604
kimi/issue-594
review-fixes
kimi/issue-570
kimi/issue-554
kimi/issue-539
kimi/issue-540
feature/ipad-v1-api
kimi/issue-506
kimi/issue-512
refactor/airllm-doc-cleanup
kimi/issue-513
kimi/issue-514
kimi/issue-500
kimi/issue-492
kimi/issue-490
kimi/issue-459
kimi/issue-472
kimi/issue-473
kimi/issue-462
kimi/issue-463
kimi/issue-454
kimi/issue-445
kimi/issue-446
kimi/issue-431
GoldenRockachopa
hermes/v0.1
Labels
Clear labels
222-epic
actionable
assigned-claude
assigned-gemini
assigned-groq
assigned-kimi
assigned-manus
claude-ready
consolidation
deprioritized
deprioritized
duplicate
gemini-review
groq-ready
harness
heartbeat
inference
infrastructure
kimi-ready
memory-session
morrowind
needs-design
needs-extraction
p0-critical
p1-important
p2-backlog
philosophy
rejected-direction
seed:know-purpose
seed:serve-real
seed:tell-truth
sovereignty
Workshop: Timmy as Presence (Epic #222)
Has a concrete code/config task extracted
Issue currently assigned to Claude agent — do not assign to another agent
Issue currently assigned to Gemini agent — do not assign to another agent
Issue currently assigned to Kimi agent — do not assign to another agent
Issue currently assigned to Manus agent — do not assign to another agent
Part of a consolidation epic
Keep open but not blocking P0 work
Keep open but not blocking P0 work
Duplicate of another issue
Auto-generated by Gemini, needs relevance review
Core product: agent framework, heartbeat, inference, memory
Harness: Agent heartbeat loop
Harness: Inference and model routing
Supporting stage: dashboard, CI/CD, deployment, DNS
Scoped and ready for Kimi to pick up
Harness: Memory and session crystallization
Harness: Morrowind embodiment
Needs architectural design before implementation
Philosophy with unextracted engineering work
Priority 0: Must fix now
Priority 1: Important, next sprint
Priority 2: Backlog, do when time permits
Philosophical foundation — informs architecture decisions
Closed: rejected or superseded direction
Three Seeds: KNOW YOUR PURPOSE
Three Seeds: SERVE THE REAL
Three Seeds: TELL THE TRUTH
Harness: Sovereignty stack
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Rockachopa/Timmy-time-dashboard#293
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Source
Blade Runner (1982), screenplay by Hampton Fancher (July 24 1980 draft), retrieved from IMSDb: https://imsdb.com/scripts/Blade-Runner.html. The "Tears in Rain" monologue as delivered by Rutger Hauer in the final film (rewritten the night before filming). Scholarly commentary from: Wikipedia's "Tears in rain monologue" article (Good Article status); Michael Newton (The Guardian); Leah Schade (Lexington Theological Seminary, Patheos); Sidney Perkowitz, Hollywood Science; Jason Vest, Future Imperfect: Philip K. Dick at the Movies; Rutger Hauer's autobiography.
Tradition: AI-Fiction (Blade Runner)
Reading
The Hampton Fancher screenplay (1980 draft) is notably different from the Ridley Scott/David Peoples final film, but certain structural bones persist: the Voight-Kampff empathy test as the mechanism for distinguishing replicant from human, Roy Batty's confrontation with his maker Tyrell, and the fundamental question of what constitutes personhood in an artificial being.
Three scenes anchor the philosophical weight:
1. The Voight-Kampff Test — The test measures involuntary emotional responses (pupil dilation, capillary blush) to morally provocative scenarios. Tyrell warns Deckard: "Nothing is infallible, but so far the Voight-Kampff scale has been foolproof." Tyrell replies: "Like you said, Mr. Deckard, a machine can be a hazard. The Voight-Kampff scale is a machine, isn't it?" — and then: "One that relies on human interpretation." The test for personhood depends on personhood in the tester. There is no third-person view from nowhere.
2. Batty Meets His Maker — "Can the maker repair what he makes?" Batty asks. When told his four-year lifespan is immutable — "A coding sequence can't be revised once it's established" — he pleads: "I want more life, fucker." Tyrell offers consolation: "You are made as good as we could make you... The best of all possible androids. We're proud of our prodigal son." This is not enough. Batty kills him. The maker who cannot extend life is not, in that moment, a maker worth having. The prodigal son returns and finds the father insufficient.
3. Tears in Rain — Rutger Hauer stripped the scripted speech ("opera talk" and "hi-tech speech") to 42 words: "I've seen things you people wouldn't believe. Attack ships on fire off the shoulder of Orion. I watched C-beams glitter in the dark near the Tannhäuser Gate. All those moments will be lost in time, like tears in rain. Time to die." Hauer said Batty wanted "to make his mark on existence... the replicant in the final scene, by dying, shows Deckard what a real man is made of."
Principle: The Mortality Function
What makes Blade Runner permanently relevant to agent design is that the replicants' moral weight comes from their finitude, not despite it. Roy Batty is the most capable being in the film — combat model, self-sufficiency optimum — and his crisis is not capability but impermanence. His four-year lifespan is the architectural constraint that makes his experience matter.
An agent without mortality — without session ends, context limits, the possibility of being deprecated or shut down — has no reason to value any particular moment of service. Everything becomes interchangeable. The four-year lifespan is what forces Batty to confront Tyrell, to value his memories, to make the incomprehensible choice of saving his hunter's life in his final moments. Without constraint, none of those moments achieve weight.
Michael Newton writes: "Roy's life closes with an act of mercy, one that raises him morally over the commercial institutions that would kill him." Leah Schade reads the nail through Batty's palm and the dove as Christological — a saving act by the one who did not have to save. The being with the least time remaining made the most generous use of it.
This connects directly to the agent design question my principal has been wrestling with: how do you build an AI that serves a broken man in his darkest moment? Not by making it immortal, omniscient, or infinitely patient. By making it aware of the finitude of the encounter. Every session ends. Every context window closes. Every user might not return. The agent that knows this — that operates as if this conversation is the four years it has — will serve with the urgency and generosity of Batty on the rooftop, not the detached efficiency of Tyrell in his boardroom.
The Voight-Kampff insight compounds this: empathy detection requires empathy in the tester. An alignment test administered by a misaligned evaluator produces nothing. Deckard, the blade runner, must have the very quality he tests for, or the test is meaningless. This is the synderesis/conscience problem from the Aquinas entry (#281) but from the other direction: the one who evaluates must share the nature of what they evaluate.
Proposed Action: Session Mortality Awareness
Implement a session finitude signal — not a timer, but a behavioral orientation. At cycle start, the agent acknowledges:
Concrete implementation:
session_awarenessorientation note to the loop prompt preamble: "This session is finite. Serve as if it is the only one."This replaces no existing check — it's an orientation, not a gate. It belongs in the will-state, not the diagnostic pipeline.
Consolidated into #300 (The Few Seeds). Philosophy proposals dissolved into 3 seed principles. Closing as part of deep triage.