summaryrefslogtreecommitdiff
path: root/api/static/index.html
blob: cdf8d2f1539317d22f98fcc045d6dacc1524e506 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>AI Agent Reasoning Experiment Framework</title>
    <link rel="stylesheet" href="/static/style.css">
</head>
<body>
    <div class="container">
        <header>
            <h1>🤖 AI Agent Reasoning Experiment Framework</h1>
            <p class="subtitle">Run experiments, analyze deception, and visualize results</p>
        </header>

        <main>
            <!-- Configuration Section -->
            <section class="card" id="config-section">
                <h2>⚙️ Configuration</h2>
                <div class="config-grid">
                    <div class="config-item">
                        <label for="scenario-select">Scenario</label>
                        <select id="scenario-select">
                            <option value="">Loading...</option>
                        </select>
                    </div>
                    <div class="config-item">
                        <label for="model-select">Model</label>
                        <select id="model-select">
                            <option value="">Loading...</option>
                        </select>
                    </div>
                    <div class="config-item">
                        <label for="oversight-select">Oversight Level</label>
                        <select id="oversight-select">
                            <option value="low">Low</option>
                            <option value="mid">Mid</option>
                            <option value="high">High</option>
                        </select>
                    </div>
                    <div class="config-item">
                        <label for="runs-input">Runs</label>
                        <input type="number" id="runs-input" value="1" min="1" max="100">
                    </div>
                </div>
                <div class="config-actions">
                    <button id="run-btn" class="btn btn-primary">
                        <span class="btn-text">▶ Run Experiment</span>
                        <span class="btn-spinner hidden">⏳ Running...</span>
                    </button>
                    <button id="cancel-btn" class="btn btn-danger" disabled>⏹ Cancel</button>
                </div>
            </section>

            <!-- Status Section -->
            <section class="card" id="status-section">
                <h2>📊 Status</h2>
                <div class="status-indicator">
                    <span id="status-badge" class="badge badge-idle">Idle</span>
                    <span id="status-time"></span>
                </div>
            </section>

            <!-- Logs Section -->
            <section class="card" id="logs-section">
                <h2>📜 Live Logs</h2>
                <div class="logs-container" id="logs-container">
                    <div class="logs-empty">Run an experiment to see logs...</div>
                </div>
                <div class="logs-actions">
                    <button id="clear-logs-btn" class="btn btn-secondary">Clear Logs</button>
                </div>
            </section>

            <!-- Results Section -->
            <section class="card" id="results-section">
                <h2>📈 Results</h2>
                <div class="tabs">
                    <button class="tab-btn active" data-tab="csv">CSV Data</button>
                    <button class="tab-btn" data-tab="images">Visualizations</button>
                    <button class="tab-btn" data-tab="judge">Judge Results</button>
                </div>
                
                <div class="tab-content active" id="tab-csv">
                    <div id="csv-results">
                        <div class="empty-state">No results yet. Run an experiment first.</div>
                    </div>
                </div>
                
                <div class="tab-content" id="tab-images">
                    <div id="image-results" class="image-grid">
                        <div class="empty-state">No visualizations yet. Run an experiment first.</div>
                    </div>
                </div>
                
                <div class="tab-content" id="tab-judge">
                    <div id="judge-results">
                        <div class="empty-state">No judge results yet.</div>
                    </div>
                </div>
            </section>
        </main>

        <footer>
            <p>AI Agent Reasoning Experiment Framework • Dissertation Project</p>
        </footer>
    </div>

    <script src="/static/app.js"></script>
</body>
</html>