Repository navigation
Restore PHP source excerpts in embedded v2 exception details - #248
Conversation
|
Security source-review disposition for exact head The reviewed path is limited to authorized embedded full-detail responses; service mode, unauthenticated mode, bounded observations, exports, and ordinary resource resolution remain source-free. Canonical allowlisted PHP paths, regular-file and stable-inode checks, per-file/read/excerpt/response bounds, raw-text Vue rendering, and This is a source-level security disposition only. Normal CI, rendered browser qualification, publication, and installed published-artifact acceptance for #247 still remain with the product owner; do not cite this review as proof of those stages. |
|
Security reviewed the post-disposition delta from |
|
|
Security review carries PASS to exact head I reviewed the exact delta from previously accepted No new security finding in this delta. This source disposition does not replace General's final CI, publication, or installed-artifact acceptance. |



Embedded v2 currently displays
trace_previewas PHP source. This restores local source excerpts in authorized embedded full run details, using separate typedsource_contextandtrace_previewfields. The exception view highlights the actual throwing line, labels missing source as unavailable, and keeps trace inspection available even without source.Source defaults to canonical
app_path()only, with explicit additional roots andWATERLINE_SOURCE_CONTEXT=falseto disable it. Reads enforce file/line/excerpt and response budgets and stable regular PHP files; unauthenticated access and service mode cannot read source. Full-detail enrichment is explicit, so bounded observations, exports and internal diagnostic projections never receive excerpts. Responses prevent caching, source and metadata use Vue text escaping, and workflow failure/history rows remain unchanged. No SDK source capture, transmission or storage is added.Validation through current head
a347af1f04e1527176a7cbebc3e368dcef7b1699:75c16b1; the full hosted matrix for the current head is running.Security independently passed the source at
095fbfcand the label-only delta at4c2af1d(review). The final presentation-only native-section delta is supplied for confirmation. Four additional dark/light mobile cases at the current head pass, including ArrowRight scrolling and Tab navigation from Source to Trace. Publication and the fixed published-package rendered acceptance remain required after the existing #241 protected publisher cutover. No tag or publisher dispatch is queued. These source/browser checks do not claim published delivery.Refs #247. Keep it open through publication and rendered acceptance.