Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
be0ed5d
Add repository banner, change copyright current year
vasilelucianbrinzei Mar 11, 2026
9492ade
Merge branch 'main' into main
vasilelucianbrinzei Mar 11, 2026
a8fb03f
Update repo banner update dimensions
vasilelucianbrinzei Mar 11, 2026
fc12ef0
Updated path and banner image
vasilelucianbrinzei Mar 11, 2026
8414f90
Merge branch 'main' into main
vasilelucianbrinzei Mar 11, 2026
3e8bb80
Delete test file and update banner file path
vasilelucianbrinzei Mar 11, 2026
9b68c2c
Merge branch 'main' into main
vasilelucianbrinzei Mar 11, 2026
3e99c4c
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Mar 16, 2026
96e97da
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei Mar 16, 2026
b6b5128
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Mar 23, 2026
ea2da71
Merge branch 'oracle-livelabs:main' into main
vasilelucianbrinzei Apr 21, 2026
0db484b
delete duplicate in manifest.json
vasilelucianbrinzei Apr 21, 2026
4836701
Merge branch 'oracle-livelabs:main' into main
vasilelucianbrinzei Apr 23, 2026
de12580
qa project
vasilelucianbrinzei Apr 30, 2026
8dd3ea1
fixed images in new author guide
vasilelucianbrinzei Apr 30, 2026
18a5570
codex skills installers and guides
vasilelucianbrinzei May 11, 2026
72a5ec9
Merge branch 'main' into main
vasilelucianbrinzei May 11, 2026
de58100
update existing skills, added skill, added livestack main directory, …
vasilelucianbrinzei May 11, 2026
07e7d05
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei May 11, 2026
62504b7
Update skill directory tree
vasilelucianbrinzei May 12, 2026
8bb7ab1
Merge branch 'main' into main
vasilelucianbrinzei May 12, 2026
23619b2
redesign
vasilelucianbrinzei May 12, 2026
a722328
Merge branch 'main' into main
vasilelucianbrinzei May 13, 2026
422b87e
fix redwood skill causing deploy issue
vasilelucianbrinzei May 13, 2026
faa0a9f
Merge branch 'main' into main
vasilelucianbrinzei May 13, 2026
db1a181
author guide redesign; analytics QA and refactoring
vasilelucianbrinzei May 13, 2026
cc5395e
Merge branch 'oracle-livelabs:main' into main
vasilelucianbrinzei May 13, 2026
b2e0a85
archived orchestrator skill
vasilelucianbrinzei May 14, 2026
4133932
Merge branch 'main' into main
vasilelucianbrinzei May 14, 2026
1ec12aa
Redesign LiveLabs analytics dashboard shell
vasilelucianbrinzei May 14, 2026
033ac2b
Merge branch 'main' into main
vasilelucianbrinzei May 14, 2026
5814595
analytics corrections
vasilelucianbrinzei May 14, 2026
ad2a39c
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei May 14, 2026
eb7bf28
Merge upstream main into fork main
vasilelucianbrinzei May 15, 2026
75de924
fix readme and fix skill directory structure and content
vasilelucianbrinzei May 15, 2026
7cf8a3f
analytics rework
vasilelucianbrinzei May 15, 2026
858ba00
Merge branch 'main' into main
vasilelucianbrinzei May 15, 2026
803b905
rework search component and results page
vasilelucianbrinzei May 16, 2026
ae3c4d1
Design, pagination, search functionality rework
vasilelucianbrinzei May 16, 2026
2913b8d
Merge upstream main into PR 613 branch
vasilelucianbrinzei May 16, 2026
c0e9377
Fix PR 613 validation blockers
vasilelucianbrinzei May 16, 2026
98f5dfd
Fix minor url and title bugs
vasilelucianbrinzei May 18, 2026
0e72636
Merge branch 'main' into main
vasilelucianbrinzei May 18, 2026
fd30864
analytics elements redesign
vasilelucianbrinzei May 18, 2026
09b71d9
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei May 18, 2026
8e47d9d
Merge branch 'main' into main
vasilelucianbrinzei May 18, 2026
27f7a32
Merge branch 'main' into main
vasilelucianbrinzei May 18, 2026
dcafd1d
broken links fixes
vasilelucianbrinzei May 18, 2026
9ad42bc
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei May 18, 2026
1508a8d
analytics updating index
vasilelucianbrinzei May 21, 2026
e990e53
Skills migration project work
vasilelucianbrinzei May 21, 2026
3dc4db2
Merge branch 'main' into main
vasilelucianbrinzei May 21, 2026
a314692
QA Automation clean up work
vasilelucianbrinzei May 25, 2026
1aafea0
Merge branch 'main' into main
vasilelucianbrinzei May 25, 2026
579cce4
Trim QA automation PR scope
vasilelucianbrinzei May 25, 2026
6ef1242
projects work
vasilelucianbrinzei May 29, 2026
f16e46d
Merge branch 'main' into main
vasilelucianbrinzei May 29, 2026
d228f3d
env gitignore files, page reroutes
vasilelucianbrinzei Jun 5, 2026
90fdd92
Merge upstream main into PR 631
vasilelucianbrinzei Jun 5, 2026
76ff61f
remove files, change gitignore
vasilelucianbrinzei Jun 5, 2026
91d9e21
new author guide and qa automation
vasilelucianbrinzei Jun 11, 2026
6691d96
Merge branch 'main' into main
vasilelucianbrinzei Jun 11, 2026
2efc46c
analytics work
vasilelucianbrinzei Jun 16, 2026
333b315
Merge branch 'main' into main
vasilelucianbrinzei Jun 16, 2026
94963af
projects and skills directory work
vasilelucianbrinzei Jun 17, 2026
db5bf51
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jun 17, 2026
1f4c6a2
fix merge conflicts
vasilelucianbrinzei Jun 17, 2026
f322a04
analytics tags hide
vasilelucianbrinzei Jun 17, 2026
e8062bb
Merge branch 'main' into main
vasilelucianbrinzei Jun 17, 2026
0ed8409
analytics work
vasilelucianbrinzei Jun 24, 2026
4fffb91
Merge branch 'main' into main
vasilelucianbrinzei Jun 24, 2026
979e511
analytics and new author guide work
vasilelucianbrinzei Jun 29, 2026
4bf3c39
Merge branch 'main' into main
vasilelucianbrinzei Jun 29, 2026
cc5922d
new author guide sections refactoring
vasilelucianbrinzei Jul 1, 2026
28ce832
Merge branch 'main' into main
vasilelucianbrinzei Jul 1, 2026
70bee6b
new author guide and skills work
vasilelucianbrinzei Jul 1, 2026
54a602f
analytics menu refactoring
vasilelucianbrinzei Jul 2, 2026
672e750
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 2, 2026
95447d4
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 2, 2026
4bda404
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 2, 2026
6e54519
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 2, 2026
927747a
projects work
vasilelucianbrinzei Jul 2, 2026
c8bf8a1
minor fix
vasilelucianbrinzei Jul 3, 2026
73898ab
Merge branch 'main' into main
vasilelucianbrinzei Jul 3, 2026
0305c65
analytics tags fix
vasilelucianbrinzei Jul 3, 2026
ccb32d1
Merge branch 'main' into main
vasilelucianbrinzei Jul 3, 2026
9f001f6
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 3, 2026
461395a
add project to common
vasilelucianbrinzei Jul 6, 2026
77194e0
getting ready workshop fixes
vasilelucianbrinzei Jul 6, 2026
a9d9b03
Update new author guide status graph
vasilelucianbrinzei Jul 6, 2026
032c37b
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 6, 2026
050188c
Make WMS prompt examples copy-ready
vasilelucianbrinzei Jul 7, 2026
c498586
Update WMS prompt examples for agent memory workshop
vasilelucianbrinzei Jul 8, 2026
c2576bf
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 8, 2026
5ccf66e
Add getting ready workshop Pages entry point
vasilelucianbrinzei Jul 8, 2026
2c42df2
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 9, 2026
3ab7bba
new author guide work
vasilelucianbrinzei Jul 9, 2026
7fa3d78
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 13, 2026
09c019d
getting ready guide and author guide work
vasilelucianbrinzei Jul 16, 2026
c0f04de
Merge branch 'main' into main
vasilelucianbrinzei Jul 16, 2026
cf19443
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 16, 2026
0571a07
getting ready guide num fix
vasilelucianbrinzei Jul 16, 2026
cc88ed1
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 16, 2026
b0fc51e
getting ready guide and author guide fixes
vasilelucianbrinzei Jul 17, 2026
4d6c5d3
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 17, 2026
7a800de
Projects work
vasilelucianbrinzei Jul 20, 2026
13c564f
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 20, 2026
1e8ec6b
getting ready introduction tldr refactor
vasilelucianbrinzei Jul 20, 2026
ec8b816
new author guide homepage fix
vasilelucianbrinzei Jul 21, 2026
cb3f56f
Merge branch 'main' into main
vasilelucianbrinzei Jul 21, 2026
845e4c6
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 27, 2026
48ebefc
projects work
vasilelucianbrinzei Jul 28, 2026
3687086
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 28, 2026
c82f4fe
delete lab 7
vasilelucianbrinzei Jul 28, 2026
7d93d92
Merge branch 'main' into main
vasilelucianbrinzei Jul 28, 2026
12e505b
event delivery guide quick fixes
vasilelucianbrinzei Jul 28, 2026
7805cf5
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei Jul 28, 2026
7bfa653
delete not needed file
vasilelucianbrinzei Jul 28, 2026
52325fd
Merge branch 'main' into main
vasilelucianbrinzei Jul 28, 2026
ba6423b
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Jul 31, 2026
7de7f18
Keep LiveLabs Analytics database material private
vasilelucianbrinzei Jul 31, 2026
a90a2cf
event delivery and author guide projects work
vasilelucianbrinzei Aug 4, 2026
081489c
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 4, 2026
88aa8dd
NoDoc page and documentation
vasilelucianbrinzei Aug 5, 2026
d248f42
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 6, 2026
767b65b
Analytics and skill fix work
vasilelucianbrinzei Aug 6, 2026
fe624b4
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 6, 2026
6924937
LL Analytics and New author guide Projects work
vasilelucianbrinzei Aug 18, 2026
7a36418
validation fix
vasilelucianbrinzei Aug 18, 2026
b2fb34e
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 25, 2026
2083bd1
Projects work and workshop fix
vasilelucianbrinzei Aug 25, 2026
ea6e5db
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 27, 2026
c782f4b
new author guide work
vasilelucianbrinzei Aug 27, 2026
4ca5805
disable validation and update nodoc documentation
vasilelucianbrinzei Aug 27, 2026
f35a726
new author guide index fix
vasilelucianbrinzei Aug 27, 2026
5c5d184
Merge branch 'main' into main
vasilelucianbrinzei Aug 27, 2026
29af535
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Aug 28, 2026
3788bed
new author guide fixes
vasilelucianbrinzei Aug 31, 2026
0e80515
new author guide fix
vasilelucianbrinzei Aug 31, 2026
52e59ed
Merge branch 'main' into main
vasilelucianbrinzei Aug 31, 2026
86f6b77
new author guide fix images
vasilelucianbrinzei Aug 31, 2026
1feca73
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei Aug 31, 2026
d7310fd
Merge branch 'main' into main
vasilelucianbrinzei Aug 31, 2026
8de9aac
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 2, 2026
cecc5b1
quick guide and nodoc documentation work
vasilelucianbrinzei Sep 2, 2026
99c39db
Merge branch 'main' of https://github.com/vasilelucianbrinzei/common
vasilelucianbrinzei Sep 2, 2026
44b284f
Quick guide nodoc documentation update
vasilelucianbrinzei Sep 3, 2026
7a1114d
Merge branch 'main' into main
vasilelucianbrinzei Sep 3, 2026
3652715
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 3, 2026
0e4766c
quick guide pages io reroute fix nodoc documentation update
vasilelucianbrinzei Sep 3, 2026
ce2ec50
quick guide nodoc documentation updates
vasilelucianbrinzei Sep 3, 2026
066e567
Merge branch 'main' into main
vasilelucianbrinzei Sep 3, 2026
5ad766c
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 4, 2026
2f77316
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 7, 2026
1919be8
new author guide update and screenshot skill font update
vasilelucianbrinzei Sep 7, 2026
c453a42
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 10, 2026
024058f
quick guide work and ll analytics tables load fix
vasilelucianbrinzei Sep 10, 2026
fd95056
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 14, 2026
5386053
new author guide page load refactor
vasilelucianbrinzei Sep 14, 2026
78df5a4
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 24, 2026
886ad0d
author guide improvements and markdown documentation
vasilelucianbrinzei Sep 24, 2026
796d6a5
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 28, 2026
d07386f
new author guide and livelabs analytics projects work
vasilelucianbrinzei Sep 28, 2026
5eebadd
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Sep 29, 2026
a60e1c0
LDA-1689
vasilelucianbrinzei Sep 29, 2026
cef62a2
Merge remote-tracking branch 'upstream/main'
vasilelucianbrinzei Oct 5, 2026
c1c5ce1
qa hub and author guide projects work
vasilelucianbrinzei Oct 5, 2026
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 livelabs-qa-hub/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ This folder contains the static GitHub Pages review prototype:

Current status: demo-only static prototype with seeded/browser-local data. It is ready for manager review from GitHub Pages after this folder is pushed with `app/dist`.

The [On-Call Review local slice](docs/on-call-review-slice.md) adds an explicit synthetic preview for source health, inbox cases, versioned answer drafts and exact report references. Its support state stays in memory; private live review remains disabled until a verified backend is bound.

Demo accounts:

| Role | Email | Password |
Expand Down
71 changes: 70 additions & 1 deletion livelabs-qa-hub/app/dist/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,19 @@ import {
updateWatchEventStatus,
watchdogTabs
} from './state.mjs'
import { createReviewPreview, loadOnCallSnapshot, unavailableOnCall } from './on-call-review.mjs'
import { renderOnCallReview } from './on-call-view.mjs'

const app = document.querySelector('#app')
const storageKey = 'livelabs-qa-hub-state-v2'
const sessionKey = 'livelabs-qa-hub-session-v2'
const routeKey = 'livelabs-qa-hub-route-v2'
const tabKey = 'livelabs-qa-hub-watchdog-tab-v2'
const hiddenViewMetadata = {
'on-call-review': {
label: 'On-Call Review',
help: 'Private inbox, versioned drafts, source coverage and report readiness; synthetic preview available.'
},
'qa-watchdog': {
label: 'QA Watchdog',
help: 'Datadog-style alerts, logs, monitor definitions, and incident investigation for QA signals.'
Expand Down Expand Up @@ -69,7 +75,7 @@ const operationGroups = [
{
label: 'Monitor And Triage',
description: 'Find the strongest signals first, then open the record that owns the next action.',
items: ['qa-watchdog', 'health-monitor']
items: ['on-call-review', 'qa-watchdog', 'health-monitor']
},
{
label: 'Evidence And Automation',
Expand All @@ -88,6 +94,12 @@ const operationGroups = [
}
]
const operationsRegistry = [
{
id: 'on-call-review',
label: 'On-Call Review',
group: 'Monitor And Triage',
description: 'Review source health, cases, exact draft versions and private report readiness.'
},
{
id: 'qa-watchdog',
label: 'QA Watchdog',
Expand Down Expand Up @@ -174,6 +186,13 @@ let selectedAlertId = null
let selectedReportId = 'rep-daily'
let reportPreview = ''
let message = ''
// Support responses never enter the browser-persisted demo state.
let onCallSnapshot = unavailableOnCall()
let onCallCaseId = ''
let onCallReviewPreview = ''
let onCallReviewError = ''
let onCallLoading = false
let onCallRequest = 0

function loadState() {
try {
Expand Down Expand Up @@ -228,6 +247,8 @@ function loadSession() {
}

function loadRoute() {
const requested = new URLSearchParams(window.location.search).get('view')
if (routableViews.has(requested)) return requested
const saved = localStorage.getItem(routeKey)
return routableViews.has(saved) ? saved : 'command-center'
}
Expand Down Expand Up @@ -455,6 +476,7 @@ function renderShell() {
}

function renderView(user) {
if (activeView === 'on-call-review') return withOperationsChrome('on-call-review', renderOnCallReview(onCallSnapshot, { selectedCaseId: onCallCaseId, reviewPreview: onCallReviewPreview, reviewError: onCallReviewError, loading: onCallLoading }))
if (activeView === 'command-center') return renderCommandCenter()
if (activeView === 'operations') return renderOperationsHub()
if (activeView === 'github-intake') return renderGithubIntake(user)
Expand Down Expand Up @@ -624,6 +646,7 @@ function renderOperationLauncher(id) {
}

function getOperationSignal(id) {
if (id === 'on-call-review') return { label: onCallSnapshot.mode === 'synthetic' ? 'Synthetic preview' : onCallSnapshot.availability === 'AVAILABLE' ? 'Private response' : 'Private access blocked', tone: 'warn' }
const summary = deriveSummary(state.watchEvents, state.healthChecks)
const domainTitle = hiddenViewMetadata[id]?.label || operationsRegistry.find((item) => item.id === id)?.label
const domainChecks = state.healthChecks.filter((check) => domainTitle && (check.domain === domainTitle || domainTitle.includes(check.domain) || check.domain.includes(domainTitle.split(' ')[0])))
Expand Down Expand Up @@ -1474,6 +1497,46 @@ function syncBackToTop() {
}

function bindEvents() {
document.querySelectorAll('[data-on-call-load]').forEach((button) => {
button.addEventListener('click', async () => {
const request = ++onCallRequest
const mode = button.dataset.onCallLoad
onCallSnapshot = unavailableOnCall(mode === 'live' ? 'Checking private backend; previous review data cleared.' : 'Review data cleared.')
onCallCaseId = ''
onCallReviewPreview = ''
onCallReviewError = ''
onCallLoading = mode !== 'none'
render()
const endpoint = document.querySelector('meta[name="on-call-review-endpoint"]')?.content || ''
const next = await loadOnCallSnapshot({ mode, endpoint, origin: window.location.origin, assetBase: new URL('./', window.location.href).href })
if (request !== onCallRequest || !session) return
onCallSnapshot = next
onCallLoading = false
render()
})
})
document.querySelectorAll('[data-on-call-case]').forEach((button) => {
button.addEventListener('click', () => {
onCallCaseId = button.dataset.onCallCase
onCallReviewPreview = ''
onCallReviewError = ''
render()
})
})
document.querySelectorAll('[data-on-call-review]').forEach((form) => {
form.addEventListener('submit', (event) => {
event.preventDefault()
try {
const preview = createReviewPreview(onCallSnapshot, form.dataset.onCallReview, new FormData(form).get('reviewer'))
onCallReviewPreview = JSON.stringify(preview, null, 2)
onCallReviewError = ''
} catch (error) {
onCallReviewPreview = ''
onCallReviewError = error.message
}
render()
})
})
document.querySelector('#back-to-top')?.addEventListener('click', () => {
window.scrollTo({ top: 0, behavior: 'smooth' })
})
Expand All @@ -1497,6 +1560,12 @@ function bindEvents() {
})

document.querySelector('#logout-button')?.addEventListener('click', () => {
onCallRequest += 1
onCallSnapshot = unavailableOnCall()
onCallCaseId = ''
onCallReviewPreview = ''
onCallReviewError = ''
onCallLoading = false
session = null
activeView = 'command-center'
selectedAlertId = null
Expand Down
Loading
Loading