TaskJudge

Solution Trace 수집·검증 · taskjudge.com
tj_20260817T002337_2443a3a1Certified Claude Code · demo/claude-code-factorial · 제출자 익명
서버 판정
certified
grade-policy-2026-08-16
클라이언트 주장
certified
서명 검증
통과
ed25519 서명 확인
체인 연결
정합
이벤트 38건
토큰 (in / out / cache)
8 / 883 / 88,415
claude-opus-5 · source=native
비용
미산출 (unpriced)
가격표 2026-08-16
실행 시간
14.63s
exit=0
CPU / 최대 메모리
1360ms / 366MB
프로세스 4개
capability
cost_usagederived
file_traceos
tool_tracenative
token_usagenative
prompt_tracenative
network_traceos
등급 판정 항목
file_trace충족
tool_trace충족
chain_sealed충족
prompt_trace충족
usage_verified충족
runner_boundary충족
process_evidence충족
no_unexplained_gap충족
workspace_evidence충족
capability downgrade
없음
암호학적 기록
trace_root_hashsha256:4fa8273824281e5504476e596d9e1f33d017d0bbde85b71e0a0aa2cf81f6a0fb
artifact_root_hashsha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945
manifest_digestsha256:ad66e40583dcc5ee3f21d01882d9d774346015e813d44b5bcb5ef399b21dc8cd
runner public key-----BEGIN PUBLIC KEY----- MCowBQYDK2VwAyEAXr2INUktoFQ+wuP9rTwJkPZSWv9Cj2zTBwJOQTEYon0= -----END PUBLIC KEY-----…
관측 정밀도와 알려진 공백
process 50ms · network 200ms · filesystem 2000ms
타임라인 (원문 공개 동의됨)
원본
서버가 받은 제출 payload 전부. 여기 없는 것은 서버에 없다.
manifest
argv: 5 개
claude
-p
solution.py 파일에 factorial(n) 함수를 추가하고, test_solution.py 를 만들어 factorial(5)==120 을 검증하는 테스트를 작성한 뒤 python3 로 실행해서 통과하는지 확인해줘. 완료되면 한 줄로 결과만 알려줘.
--permission-mode
bypassPermissions
task: demo/claude-code-factorial
agent: claude-code
usage: 15 항목
models: 1 개
claude-opus-5
source: native
prompts: 1
cost_usd: null
provider: anthropic
requests: 4
tool_calls: 5
cost_status: unpriced
input_tokens: 8
cached_tokens: 88415
output_tokens: 883
price_version: 2026-08-16
session_files: 1 개
b429db73-5269-4527-8ca3-a4a069a2006c.jsonl
assistant_messages: 7
cache_write_tokens: 10149
checks: 9 항목
file_trace: true
tool_trace: true
chain_sealed: true
prompt_trace: true
usage_verified: true
runner_boundary: true
process_evidence: true
no_unexplained_gap: true
workspace_evidence: true
runner: taskjudge-poc/0.1.0
network: 2 항목
hosts: 2 개
160.79.104.10
165.66.149.34.bc.googleusercontent.com
endpoint_count: 2
wall_ms: 14626
exit_code: 0
resources: 10 항목
cpu_ms: 1360
source: wait4/rusage
cpu_sys_ms: 318
max_rss_kb: 375180
cpu_user_ms: 1321
io_read_bytes: 430080
process_count: 4
io_write_bytes: 450560
voluntary_ctx_switches: 4007
involuntary_ctx_switches: 140
sealed_at: 2026-08-16T15:23:52.242Z
signature: 3 항목
alg: ed25519
sig_b64: oF0w0xvOFA2trazrldg7bsR7bXQ7lF7TGo/fNs5pFqsEvKCFagnppoJnY6Q5QO3Oxczzmcns1AQ7yXOiD/vgBw==
public_key_pem: -----BEGIN PUBLIC KEY----- MCowBQYDK2VwAyEAXr2INUktoFQ+wuP9rTwJkPZSWv9Cj2zTBwJOQTEYon0= -----END PUBLIC KEY-----
workspace: /data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace
collection: 7 항목
pty: true
network: os
process: true
filesystem: true
local_gateway: false
tls_intercept: false
native_telemetry: true
downgrades: []
session_id: tj_20260817T002337_2443a3a1
started_at: 2026-08-16T15:23:52.242Z
event_count: 38
trust_grade: certified
capabilities: 6 항목
cost_usage: derived
file_trace: os
tool_trace: native
token_usage: native
prompt_trace: native
network_trace: os
event_counts: 17 항목
llm_usage: 4
tool_call: 5
agent_exit: 1
file_change: 2
tool_result: 5
user_prompt: 1
process_exit: 4
agent_message: 2
agent_started: 1
process_start: 4
session_start: 1
network_connect: 2
pty_agent_output: 1
resource_summary: 1
workspace_snapshot: 1
workspace_final_diff: 1
capability_negotiated: 1
agent_display: Claude Code
failed_checks: []
trace_version: 1.0
policy_version: grade-policy-2026-08-16
redaction_hits: 1 항목
value: 1
stream_digests: 3 항목
files.jsonl: 3 항목
bytes: 1204
lines: 4
digest: sha256:095b714feea044169baff4692e45d6d878d84b3e59b47b3fa96706e7e3596d60
usage.jsonl: 3 항목
bytes: 1982
lines: 4
digest: sha256:2c9316f24f0445eefac576c59de59c3d96f15dbc1c72c359405ef6ec2cb58f49
events.jsonl: 3 항목
bytes: 21476
lines: 38
digest: sha256:c592399b6e222cb03cc676935845d06c01d664856b117b739b19c17fc864353a
trace_root_hash: sha256:4fa8273824281e5504476e596d9e1f33d017d0bbde85b71e0a0aa2cf81f6a0fb
artifact_root_hash: sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945
file_change_counts: 3 항목
created: 1
deleted: 0
modified: 1
capability_downgrades: []
observation_precision: 4 항목
known_gaps: 3 개
샘플링 주기보다 짧게 생존한 프로세스와 소켓은 누락될 수 있다
파일은 주기 스캔 + 시작/종료 스냅샷 diff 로 관측하므로 중간 변경 순서가 합쳐질 수 있다
TLS 를 종단하지 않으므로 요청 본문과 토큰은 네트워크 계층에서 관측 불가
network_sampling_ms: 200
process_sampling_ms: 50
filesystem_sampling_ms: 2000
서버 판정 (verdict)
checks: 9 항목
file_trace: true
tool_trace: true
chain_sealed: true
prompt_trace: true
usage_verified: true
runner_boundary: true
process_evidence: true
no_unexplained_gap: true
workspace_evidence: true
trust_grade: certified
claimed_grade: certified
failed_checks: []
chain_problems: []
policy_version: grade-policy-2026-08-16
grade_downgraded: false
signature_reason: ed25519 서명 확인
timeline (38건)
0.000s 세션 시작 seq 1
seq: 1
hash: sha256:c35f92a3a195f675af7f2752c028a6eeb2d7d6944b6ba51b1b4fd972c5561947
host: 4 항목
cwd: /data/ais/bot/catcheri/workspace/taskjudge
user: rootsall
python: 3.13.2
platform: linux
t_ms: 0
type: session_start
source: runner
0.000s capability 확정 seq 2
seq: 2
hash: sha256:0d16508e7f857dfd41c1b5594c19b6528d3eb80204806cae0f40ff691a3981f5
t_ms: 0
type: capability_negotiated
source: runner
0.001s workspace 스냅샷 seq 3
seq: 3
hash: sha256:98aad4671004f93de89c1f76fe3044a7b391ba0234d5d0c4430d238cb70ad00a
t_ms: 1
type: workspace_snapshot
source: os
0.002s Agent 실행 seq 4
seq: 4
hash: sha256:53b16c07bed835b5e6719a185837b0f6ab0d8019c5b8fa80a9622fb4745fce6c
t_ms: 2
type: agent_started
source: runner
0.043s 프로세스 시작 seq 5
seq: 5
comm: claude
hash: sha256:d13e26435cf9c02c8f62e7c25fad885b96c2749d5ed4eb32d6310b819e830df4
t_ms: 43
type: process_start
source: os
0.404s 프로세스 시작 seq 6
seq: 6
comm: node
hash: sha256:929e2a2cd31a75cbe6814fd10386e26e681b63dff399aa5d913fd55015e643c6
t_ms: 404
type: process_start
source: os
0.432s 네트워크 접속 seq 7
seq: 7
hash: sha256:d17fcada5eda8b9a751b1185e1ed80a48708906284ff03817bb2cde38cc0d565
host: null
port: 443
t_ms: 432
type: network_connect
source: os
address: 160.79.104.10
0.584s 프로세스 종료 seq 8
seq: 8
comm: node
hash: sha256:afa6fddc362b1c82ab14d1dec5a6521d2d0d3ef0f88d4835159f331ae36b723d
t_ms: 584
type: process_exit
source: os
0.677s 프로세스 시작 seq 9
seq: 9
comm: node
hash: sha256:effd427490f00bcda9e2cf5d4e811cd067c7302c6784586f8ddc0b8872fa7ff8
t_ms: 677
type: process_start
source: os
1.202s 사용자 프롬프트 seq 10
seq: 10
hash: sha256:b1e09ebdf68576e9887f2ca988f3b36b204490fa152054342c5ec11605f1aeb8
t_ms: 1202
type: user_prompt
chars: 143
source: adapter:claude-code
content: solution.py 파일에 factorial(n) 함수를 추가하고, test_solution.py 를 만들어 factorial(5)==120 을 검증하는 테스트를 작성한 뒤 python3 로 실행해서 통과하는지 확인해줘. 완료되면 한 줄로 결과만 알려줘.
4.403s Agent 응답 seq 11
seq: 11
hash: sha256:b32c1f16b0d51f5b5abffd69168e18721639638adcf8be4e431aea5df1ed1d36
t_ms: 4403
type: agent_message
chars: 52
model: claude-opus-5
source: adapter:claude-code
content: I'll start by looking at the existing `solution.py`.
4.403s LLM 사용량 seq 12
seq: 12
hash: sha256:784505a7ba02f5e6c1653714f5ffe57b5c9155e5ae0926d284af5130970b6cb4
t_ms: 4403
type: llm_usage
model: claude-opus-5
source: native
provider: anthropic
input_tokens: 2
output_tokens: 209
4.403s 도구 호출 seq 13
seq: 13
hash: sha256:e46f572f2aa09812dcc651fd6d284c76feee6ff08566532b8defcf3c4f561c97
t_ms: 4403
tool: Bash
type: tool_call
source: adapter:claude-code
content: ls -la /data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace
4.403s 도구 호출 seq 14
seq: 14
hash: sha256:9de42465d82c5757d2ae8a118964568ee1f2bb9546bbcec95885942740f793af
t_ms: 4403
tool: Read
type: tool_call
source: adapter:claude-code
content: /data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/solution.py
4.403s 도구 결과 seq 15
seq: 15
hash: sha256:2b36dfd0f9a8a8035f9b00cce8b8a46adc9d7e009fac220fb55e6c4c48984e47
t_ms: 4403
type: tool_result
chars: 37
source: adapter:claude-code
is_error: false
4.404s 도구 결과 seq 16
seq: 16
hash: sha256:5f1c28124570ec38438edf36bcd1d93641130e2010ff39cf4e26392063c846b9
t_ms: 4404
type: tool_result
chars: 172
source: adapter:claude-code
is_error: false
8.004s 파일 변경 seq 17
seq: 17
hash: sha256:ffe16e42976dcd5b23569a90c51348fbd56191f328a2977d245a69c27859b450
path: solution.py
t_ms: 8004
type: file_change
change: modified
source: os
8.805s 도구 호출 seq 18
seq: 18
hash: sha256:725643ad8f3ac2d2c3a56bd16112d4972feae2dfe9d8188d80897780acf29580
t_ms: 8805
tool: Edit
type: tool_call
source: adapter:claude-code
content: /data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/solution.py
8.805s LLM 사용량 seq 19
seq: 19
hash: sha256:ee8a5d2d58083d3b718985acc85904af35f09b6e24803322935026e4656f66a7
t_ms: 8805
type: llm_usage
model: claude-opus-5
source: native
provider: anthropic
input_tokens: 2
output_tokens: 408
8.805s 도구 결과 seq 20
seq: 20
hash: sha256:b2662a914a14555f3618ff73209c399fc65c1cba8d13bdd0b86634e5432dacea
t_ms: 8805
type: tool_result
chars: 179
source: adapter:claude-code
is_error: false
8.805s 도구 호출 seq 21
seq: 21
hash: sha256:eebf730b88dc9f6391fe729386c5aa8c046fe012a85f6ecddba7ef71540228ff
t_ms: 8805
tool: Write
type: tool_call
source: adapter:claude-code
content: /data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/test_solution.py
8.806s 도구 결과 seq 22
seq: 22
hash: sha256:efc96bf16f6b8d602d79c6e4f1eddf5b82f613e9ee8b28dc0641052f44ae1c7c
t_ms: 8806
type: tool_result
chars: 174
source: adapter:claude-code
is_error: false
10.004s 파일 변경 seq 23
seq: 23
hash: sha256:216d1b7a1f40ade204fbd2ef0e713cc39db1b527e500cfb191a130c499809d6a
path: test_solution.py
t_ms: 10004
type: file_change
change: created
source: os
11.083s 프로세스 시작 seq 24
seq: 24
comm: bash
hash: sha256:8b5e3e446ab72e2e72068d7b16205186396e9babdd0cbb32d8b8f2b4e73ac6c1
t_ms: 11083
type: process_start
source: os
11.172s 프로세스 종료 seq 25
seq: 25
comm: bash
hash: sha256:0aef57733c965fe39a4676826f5b47842e0c2391a5b6f9e92ee45f74f62d8c13
t_ms: 11172
type: process_exit
source: os
11.206s 도구 호출 seq 26
seq: 26
hash: sha256:c339af637317edc63f0151b2afc103f51a58fcc993eafbb2652728b73036b900
t_ms: 11206
tool: Bash
type: tool_call
source: adapter:claude-code
content: python3 -m unittest test_solution -v 2>&1
11.207s LLM 사용량 seq 27
seq: 27
hash: sha256:6da355aef5dba2b99baffb85bf96f191cfc99bf32fa4c79b8c289cfcd933035b
t_ms: 11207
type: llm_usage
model: claude-opus-5
source: native
provider: anthropic
input_tokens: 2
output_tokens: 128
11.207s 도구 결과 seq 28
seq: 28
hash: sha256:c919b5170b5e394d0efa25a90240ebbf71da4b202a1f79a3d59eacbee8e36a59
t_ms: 11207
type: tool_result
chars: 173
source: adapter:claude-code
is_error: false
14.100s Agent 출력(PTY) seq 29
seq: 29
hash: sha256:9d9e55a90c59d0dab48e0f9f53cfb57f6820d8c8019b683be937957641ea6a31
t_ms: 14100
type: pty_agent_output
chars: 231
source: pty
content: 테스트 통과 — `factorial(5)==120` 검증 완료 (1 test, OK). **변경된 파일** - `/data/ais/bot/catcheri/workspace/tas… (231자)
테스트 통과 — `factorial(5)==120` 검증 완료 (1 test, OK). **변경된 파일** - `/data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/solution.py` (수정) - `/data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/test_solution.py` (생성)
14.131s 프로세스 종료 seq 30
seq: 30
comm: node
hash: sha256:80d828de81901320d52bb4a8c3f4a4a6586012a3b15390692799009966ab6101
t_ms: 14131
type: process_exit
source: os
14.260s 네트워크 접속 seq 31
seq: 31
hash: sha256:33976a1703a592f425678c8879a06ad5c6e9aed37d04958d6c3a18bb76f26a80
host: 165.66.149.34.bc.googleusercontent.com
port: 443
t_ms: 14260
type: network_connect
source: os
address: 34.149.66.165
14.408s Agent 응답 seq 32
seq: 32
hash: sha256:67cc8949d6e3eae1d6d05c35106459b448710e2f01b6b2d43cf7882fda239690
t_ms: 14408
type: agent_message
chars: 231
model: claude-opus-5
source: adapter:claude-code
content: 테스트 통과 — `factorial(5)==120` 검증 완료 (1 test, OK). **변경된 파일** - `/data/ais/bot/catcheri/workspace/tas… (231자)
테스트 통과 — `factorial(5)==120` 검증 완료 (1 test, OK). **변경된 파일** - `/data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/solution.py` (수정) - `/data/ais/bot/catcheri/workspace/taskjudge/poc/demo-workspace/test_solution.py` (생성)
14.408s LLM 사용량 seq 33
seq: 33
hash: sha256:aac676979350bd37e05da89f1e7c28b0db9da0788cfae8fbd901e5be06418466
t_ms: 14408
type: llm_usage
model: claude-opus-5
source: native
provider: anthropic
input_tokens: 2
output_tokens: 138
14.627s Agent 종료 seq 34
seq: 34
hash: sha256:74c01d39484ed00bbb37f42ed205c2a15efb6f5527cb75af6c36f8d677503fb1
t_ms: 14627
type: agent_exit
source: runner
exit_code: 0
14.672s 프로세스 종료 seq 35
seq: 35
comm: claude
hash: sha256:d817249241dff27b40f4e70297631029b663f466a44d41341fcae2b6ec84f8ec
t_ms: 14672
type: process_exit
source: os
14.928s 최종 diff seq 36
seq: 36
hash: sha256:87f4ef8b11df6574fbcad39302e75248c9488822add3c5a8c09f440d48ec5ba9
t_ms: 14928
type: workspace_final_diff
source: os
14.928s 자원 요약 seq 37
seq: 37
hash: sha256:65b7f9ed331212e4f7720d690e8801cb667dcab64e06e75f02228471bd93dbf9
t_ms: 14928
type: resource_summary
source: os
14.928s Trace 봉인 seq 38
seq: 38
hash: sha256:4fa8273824281e5504476e596d9e1f33d017d0bbde85b71e0a0aa2cf81f6a0fb
t_ms: 14928
type: session_sealed
source: runner
API credentials never leave this device. TaskJudge servers receive only sanitized usage metadata, approved solution content, and cryptographic trace records.