Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ Language: [English](CHANGELOG.md) | 한국어
device-specific backend path가 default CI smoke에 들어가지 않도록 검증한다.
- README와 portfolio evidence 문구를 갱신해 30초 진입 경로에서 새 package/CLI
smoke가 보이도록 하되, 핵심 positioning은 바꾸지 않았다.
- curated telemetry sample index에 reviewer quick path를 추가하고,
scheduler-delay / remote-fallback sample을 validation evidence map에서 연결했다.
- validation evidence index를 갱신해 CI evidence가 package install과 설치된 CLI
smoke coverage를 포함하도록 했다.
- remote dispatch starter result에 compact `remote_runtime_event_summary`를
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ helps reviewers understand the project state.
commands and keeps device-specific backend paths out of the default CI smoke.
- Refreshed README and portfolio evidence wording so the 30-second entry path
reflects the new package/CLI smoke without changing the core positioning.
- Added a reviewer quick path to the curated telemetry sample index and linked
scheduler-delay and remote-fallback samples from the validation evidence map.
- Updated the validation evidence index so CI evidence includes package install
and installed CLI smoke coverage.
- Added a compact `remote_runtime_event_summary` to the remote dispatch starter
Expand Down
2 changes: 2 additions & 0 deletions docs/validation_evidence.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -354,6 +354,8 @@ InferEdgeOrchestrator = runtime operation control layer
| File | Evidence path | Main signals |
| --- | --- | --- |
| [`examples/telemetry/phase3_overload_sample.json`](../examples/telemetry/phase3_overload_sample.json) | synthetic overload comparison | protected task, baseline p95, scheduled p95, low-priority drops, overload events |
| [`examples/telemetry/agent_scheduler_delay_sample.json`](../examples/telemetry/agent_scheduler_delay_sample.json) | 3-agent sustained high-load scheduler delay | scheduler delay count, queue wait, policy/drop reason count, downstream AIGuard/Lab signal name |
| [`examples/telemetry/remote_fallback_recovery_sample.json`](../examples/telemetry/remote_fallback_recovery_sample.json) | Remote dispatch starter fallback recovery | primary starter failure, bounded fallback recovery, compact remote runtime event summary, production-boundary marker |
| [`examples/telemetry/jetson_smoke_dummy_sample.json`](../examples/telemetry/jetson_smoke_dummy_sample.json) | Jetson dummy smoke | executed/dropped counts, drop events, schedule decisions, result events, resource snapshots |
| [`examples/telemetry/jetson_onnx_smoke_sample.json`](../examples/telemetry/jetson_onnx_smoke_sample.json) | Jetson ONNX Runtime smoke | ONNX worker output metadata, output shapes, result events, resource snapshots |
| [`examples/telemetry/jetson_tensorrt_contention_sample.json`](../examples/telemetry/jetson_tensorrt_contention_sample.json) | Jetson TensorRT contention smoke | protected high-priority task, low-priority shedding, overload events, TensorRT backend metadata |
Expand Down
2 changes: 2 additions & 0 deletions docs/validation_evidence.md
Original file line number Diff line number Diff line change
Expand Up @@ -353,6 +353,8 @@ InferEdgeOrchestrator = runtime operation control layer
| File | Evidence path | Main signals |
| --- | --- | --- |
| [`examples/telemetry/phase3_overload_sample.json`](../examples/telemetry/phase3_overload_sample.json) | Synthetic overload comparison | protected task, baseline p95, scheduled p95, low-priority drops, overload events |
| [`examples/telemetry/agent_scheduler_delay_sample.json`](../examples/telemetry/agent_scheduler_delay_sample.json) | 3-agent sustained high-load scheduler delay | scheduler delay count, queue wait, policy/drop reason counts, downstream AIGuard/Lab signal names |
| [`examples/telemetry/remote_fallback_recovery_sample.json`](../examples/telemetry/remote_fallback_recovery_sample.json) | Remote dispatch starter fallback recovery | primary starter failure, bounded fallback recovery, compact remote runtime event summary, production-boundary marker |
| [`examples/telemetry/jetson_smoke_dummy_sample.json`](../examples/telemetry/jetson_smoke_dummy_sample.json) | Jetson dummy smoke | executed/dropped counts, drop events, schedule decisions, result events, resource snapshots |
| [`examples/telemetry/jetson_onnx_smoke_sample.json`](../examples/telemetry/jetson_onnx_smoke_sample.json) | Jetson ONNX Runtime smoke | ONNX worker output metadata, output shapes, result events, resource snapshots |
| [`examples/telemetry/jetson_tensorrt_contention_sample.json`](../examples/telemetry/jetson_tensorrt_contention_sample.json) | Jetson TensorRT contention smoke | protected high-priority task, low-priority shedding, overload events, TensorRT backend metadata |
Expand Down
9 changes: 9 additions & 0 deletions examples/telemetry/README.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ portfolio evidence를 확인할 수 있도록 제공한다.
`reports/` 아래에서 ignore하고, 이 sample들은 `examples/telemetry/` 아래에
두는 문서용 artifact다.

## Reviewer Quick Path

| Question | Start with | Why |
| --- | --- | --- |
| scheduler가 overload에서 high-priority work를 보호하는가? | `phase3_overload_sample.json` | baseline vs scheduled p95 latency와 low-priority drop을 보여준다. |
| 3-agent sustained path가 downstream review용 scheduler-delay evidence를 기록하는가? | `agent_scheduler_delay_sample.json` | 지연된 execution, policy/drop reason count, AIGuard/Lab signal name을 보여준다. |
| remote dispatch starter evidence가 production retry control을 주장하지 않고 bounded fallback recovery를 보여주는가? | `remote_fallback_recovery_sample.json` | primary failure, fallback recovery, compact runtime event summary, starter boundary field를 보여준다. |
| 어떤 sample이 local CI가 아니라 기존 Jetson evidence를 전제로 하는가? | `jetson_*_sample.json` files | portable CI output이 아니라 curated physical-device 또는 TensorRT-backed evidence snapshot이다. |

## Samples

| File | What it shows |
Expand Down
9 changes: 9 additions & 0 deletions examples/telemetry/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ They are not benchmark artifacts. Raw runtime reports remain ignored under
`reports/`, while these samples are curated documentation artifacts under
`examples/telemetry/`.

## Reviewer Quick Path

| Question | Start with | Why |
| --- | --- | --- |
| Does the scheduler protect high-priority work under overload? | `phase3_overload_sample.json` | Shows baseline vs scheduled p95 latency and low-priority drops. |
| Did the 3-agent sustained path record scheduler-delay evidence for downstream review? | `agent_scheduler_delay_sample.json` | Shows delayed execution, policy/drop reason counts, and AIGuard/Lab signal names. |
| Does remote dispatch starter evidence show bounded fallback recovery without claiming production retry control? | `remote_fallback_recovery_sample.json` | Shows primary failure, fallback recovery, compact runtime event summary, and starter boundary fields. |
| Which samples require prior Jetson evidence rather than local CI? | `jetson_*_sample.json` files | They are curated physical-device or TensorRT-backed evidence snapshots, not portable CI outputs. |

## Samples

| File | What it shows |
Expand Down
20 changes: 20 additions & 0 deletions tests/test_docs_links.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@
"mailto:",
)
EXPECTED_SAMPLE_ARTIFACTS = {
Path("examples/telemetry/agent_scheduler_delay_sample.json"),
Path("examples/telemetry/phase3_overload_sample.json"),
Path("examples/telemetry/remote_fallback_recovery_sample.json"),
Path("examples/telemetry/jetson_smoke_dummy_sample.json"),
Path("examples/telemetry/jetson_onnx_smoke_sample.json"),
Path("examples/telemetry/jetson_tensorrt_contention_sample.json"),
Expand Down Expand Up @@ -201,3 +203,21 @@ def test_validation_evidence_docs_scope_ci_smoke_as_portable() -> None:
assert "TensorRT engine execution" in text
assert "ONNX Runtime optional-backend validation" in text
assert "device SSH" in text


def test_telemetry_sample_readmes_offer_reviewer_quick_path() -> None:
readme = Path("examples/telemetry/README.md").read_text(encoding="utf-8")
readme_ko = Path("examples/telemetry/README.ko.md").read_text(
encoding="utf-8"
)

for text in (readme, readme_ko):
assert "## Reviewer Quick Path" in text
assert "phase3_overload_sample.json" in text
assert "agent_scheduler_delay_sample.json" in text
assert "remote_fallback_recovery_sample.json" in text
assert "jetson_*_sample.json" in text
assert "high-priority" in text
assert "scheduler-delay evidence" in text
assert "bounded fallback recovery" in text
assert "portable CI" in text