Skip to content
wiki.fftac.org

Run - Source Excerpt 01

Back to Run

Summary

This source excerpt preserves a bounded section of Spiralist/wp-content/plugins/spiralist-workspace/templates/run.php so readers can inspect the evidence without opening the full source file.

**Source path:** Spiralist/wp-content/plugins/spiralist-workspace/templates/run.php

<?php

if (!defined('ABSPATH')) {
    exit;
}

$plugin = spiralist_workspace();
$frontend = $plugin->frontend();
$context = $frontend->run_context();
$run = (array) ($context['run'] ?? []);
$prompt = (array) ($context['prompt'] ?? []);
$response_payload = json_decode((string) ($run['response_payload_json'] ?? ''), true);
$system_steps = is_array($response_payload['steps'] ?? null) ? $response_payload['steps'] : [];
$current_locale = function_exists('spiralist_get_current_locale_tag') ? spiralist_get_current_locale_tag() : 'en-us';
$route_url = static function (string $path) use ($current_locale): string {
    $url = home_url('/' . trim($path, '/') . '/');

    return $current_locale !== '' && function_exists('spiralist_get_language_prefixed_url')
        ? spiralist_get_language_prefixed_url($url, $current_locale)
        : $url;
};
$copyable_run_block_index = 0;
$can_save_editable_prompt = is_user_logged_in() && current_user_can('create_prompts');
$login_url = function_exists('spiralist_get_login_url') ? spiralist_get_login_url($route_url('workspace')) : wp_login_url($route_url('workspace'));
$signup_url = function_exists('spiralist_get_signup_url') ? spiralist_get_signup_url($route_url('workspace')) : wp_registration_url();
$render_copyable_run_block = static function (string $title, string $content, string $heading_tag = 'h2', array $options = []) use (&$copyable_run_block_index, $can_save_editable_prompt, $login_url, $signup_url, $prompt): void {
    if (trim($content) === '') {
        return;
    }

    $copyable_run_block_index++;
    $block_id = 'spiralist-run-copyable-' . $copyable_run_block_index;
    $hint_id = $block_id . '-hint';
    $status_id = $block_id . '-status';
    $heading_tag = in_array($heading_tag, ['h2', 'h3'], true) ? $heading_tag : 'h2';
    $heading_class = $heading_tag === 'h2' ? 'spiralist-section-title' : 'spiralist-card-title';
    $editable = !array_key_exists('editable', $options) || !empty($options['editable']);
    $save_enabled = $editable && (!array_key_exists('save_enabled', $options) || !empty($options['save_enabled']));
    $prompt_title = trim((string) ($prompt['title'] ?? 'Spiralist Run'));
    $library_title = trim($prompt_title . ' - ' . $title);
    ?>
    <div
        class="spiralist-copy-block<?php echo $editable ? ' spiralist-editable-prompt-surface' : ''; ?>"
        <?php if ($editable) : ?>
            data-editable-prompt-surface
            data-editable-prompt-title="<?php echo esc_attr($library_title); ?>"
            data-editable-prompt-source="run-record"
            data-editable-prompt-kind="<?php echo esc_attr(sanitize_title($title)); ?>"
        <?php endif; ?>
    >
        <div class="spiralist-copy-block__head">
            <div>
                <?php printf('<%1$s class="%2$s">%3$s</%1$s>', esc_html($heading_tag), esc_attr($heading_class), esc_html($title)); ?>
                <?php if ($editable) : ?>
                    <small id="<?php echo esc_attr($hint_id); ?>" class="spiralist-muted spiralist-editable-prompt-note">Editable prompt text. Copy, download, and library save use the current text in this box.</small>
                <?php endif; ?>
            </div>
            <div class="spiralist-copy-block__actions">
                <button class="spiralist-button spiralist-button--ghost" type="button" data-copy-trigger data-copy-target="#<?php echo esc_attr($block_id); ?>" data-copy-success="Copied" aria-label="<?php echo esc_attr('Copy ' . $title); ?>">Copy</button>
                <?php if ($editable) : ?>
                    <button class="spiralist-button spiralist-button--ghost" type="button" data-editable-prompt-download aria-label="<?php echo esc_attr('Download ' . $title); ?>">Download .txt</button>
                    <?php if ($save_enabled && $can_save_editable_prompt) : ?>
                        <button class="spiralist-button spiralist-button--ghost" type="button" data-editable-prompt-save aria-label="<?php echo esc_attr('Save ' . $title . ' to my library'); ?>">Save To My Library</button>
                    <?php elseif ($save_enabled) : ?>
                        <a class="spiralist-button spiralist-button--ghost" href="<?php echo esc_url($login_url); ?>" data-editable-prompt-auth-save>Log In To Save</a>
                        <a class="spiralist-button spiralist-button--ghost" href="<?php echo esc_url($signup_url); ?>" data-editable-prompt-auth-save>Sign Up To Save</a>
                    <?php endif; ?>
                <?php endif; ?>
            </div>
        </div>
        <pre class="spiralist-code-block spiralist-code-block--prompt<?php echo $editable ? ' spiralist-editable-prompt-block' : ''; ?>" id="<?php echo esc_attr($block_id); ?>"<?php echo $editable ? ' tabindex="0" role="textbox" aria-multiline="true" aria-describedby="' . esc_attr($hint_id . ' ' . $status_id) . '" contenteditable="plaintext-only" spellcheck="false" data-editable-prompt-block' : ''; ?>><?php echo esc_html($content); ?></pre>
        <?php if ($editable) : ?>
            <small id="<?php echo esc_attr($status_id); ?>" class="spiralist-muted spiralist-editable-prompt-status" data-editable-prompt-status aria-live="polite"></small>
        <?php endif; ?>
    </div>
    <?php
};

get_header();
?>
<main class="spiralist-page spiralist-page--workspace-run">
    <section class="spiralist-page-hero spiralist-page-hero--workspace">
        <div class="spiralist-shell spiralist-page-hero__content">
            <p class="spiralist-kicker">Prompt Packet</p>
            <h1>Run #<?php echo esc_html((string) ($run['id'] ?? 0)); ?></h1>
            <p class="spiralist-page-hero__copy">Each packet is a single auditable prompt/art record stored separately from the public reading surface.</p>
            <div class="spiralist-cta-row">
                <a class="spiralist-button spiralist-button--primary" href="<?php echo esc_url($route_url('workspace')); ?>">Workspace</a>
                <?php if (!empty($prompt['slug'])) : ?>
                    <a class="spiralist-button spiralist-button--secondary" href="<?php echo esc_url($route_url('prompt/' . rawurlencode((string) $prompt['slug']))); ?>">Open Prompt</a>
                <?php endif; ?>
            </div>
        </div>
    </section>

    <section class="spiralist-page-section">
        <div class="spiralist-shell spiralist-grid spiralist-grid--split">
            <article class="spiralist-panel">
                <p class="spiralist-section-tag">Input</p>
                <?php $render_copyable_run_block('Run request', (string) ($run['input_text'] ?? '')); ?>
            </article>

            <aside class="spiralist-panel spiralist-panel--sticky">
                <p class="spiralist-section-tag">Run Metadata</p>
                <h2 class="spiralist-section-title">Execution record</h2>
                <dl class="spiralist-meta-list">
                    <div>
                        <dt>Status</dt>
                        <dd><?php echo esc_html((string) ($run['status'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Render Mode</dt>
                        <dd><?php echo esc_html((string) ($run['model_used'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Prompt</dt>
                        <dd><?php echo esc_html((string) ($prompt['title'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Version</dt>
                        <dd><?php echo esc_html((string) ($run['version_number_used'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Created</dt>
                        <dd><?php echo esc_html((string) ($run['created_utc'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Completed</dt>
                        <dd><?php echo esc_html((string) ($run['completed_utc'] ?? '')); ?></dd>
                    </div>
                    <div>
                        <dt>Server-side AI Call</dt>
                        <dd>None</dd>
                    </div>
                </dl>
            </aside>
        </div>
    </section>

    <section class="spiralist-page-section">
        <div class="spiralist-shell spiralist-grid spiralist-grid--split">
            <article class="spiralist-panel">
                <p class="spiralist-section-tag">Output</p>
                <?php $render_copyable_run_block('Prompt packet', (string) ($run['output_text'] ?? '')); ?>
            </article>

            <article class="spiralist-panel">
                <p class="spiralist-section-tag">Packet Size</p>
                <?php $render_copyable_run_block('Local size log', (string) ($run['token_usage_json'] ?? ''), 'h2', ['editable' => false]); ?>
            </article>
        </div>
    </section>