Add value source card crosslinks and fix scene initial value bias
- Audio value source cards link to the referenced audio source - Adaptive scene cards link to the referenced picture source - Fix SceneValueStream starting at 0.5 regardless of actual scene; first frame now skips smoothing to avoid artificial bias - Add crosslinks guidance to CLAUDE.md card appearance section Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -482,9 +482,13 @@ export function createValueSourceCard(src) {
|
||||
} else if (src.source_type === 'audio') {
|
||||
const audioSrc = _cachedAudioSources.find(a => a.id === src.audio_source_id);
|
||||
const audioName = audioSrc ? audioSrc.name : (src.audio_source_id || '-');
|
||||
const audioSection = audioSrc ? (audioSrc.source_type === 'mono' ? 'audio-mono' : 'audio-multi') : 'audio-multi';
|
||||
const modeLabel = src.mode || 'rms';
|
||||
const audioBadge = audioSrc
|
||||
? `<span class="stream-card-prop stream-card-link" title="${escapeHtml(t('value_source.audio_source'))}" onclick="event.stopPropagation(); navigateToCard('streams','audio','${audioSection}','data-id','${src.audio_source_id}')">🎵 ${escapeHtml(audioName)}</span>`
|
||||
: `<span class="stream-card-prop" title="${escapeHtml(t('value_source.audio_source'))}">🎵 ${escapeHtml(audioName)}</span>`;
|
||||
propsHtml = `
|
||||
<span class="stream-card-prop" title="${escapeHtml(t('value_source.audio_source'))}">🎵 ${escapeHtml(audioName)}</span>
|
||||
${audioBadge}
|
||||
<span class="stream-card-prop">📈 ${modeLabel.toUpperCase()}</span>
|
||||
<span class="stream-card-prop">↕️ ${src.min_value ?? 0}–${src.max_value ?? 1}</span>
|
||||
`;
|
||||
@@ -497,8 +501,16 @@ export function createValueSourceCard(src) {
|
||||
} else if (src.source_type === 'adaptive_scene') {
|
||||
const ps = _cachedStreams.find(s => s.id === src.picture_source_id);
|
||||
const psName = ps ? ps.name : (src.picture_source_id || '-');
|
||||
let psSubTab = 'raw', psSection = 'raw-streams';
|
||||
if (ps) {
|
||||
if (ps.stream_type === 'static_image') { psSubTab = 'static_image'; psSection = 'static-streams'; }
|
||||
else if (ps.stream_type === 'processed') { psSubTab = 'processed'; psSection = 'proc-streams'; }
|
||||
}
|
||||
const psBadge = ps
|
||||
? `<span class="stream-card-prop stream-card-link" onclick="event.stopPropagation(); navigateToCard('streams','${psSubTab}','${psSection}','data-stream-id','${src.picture_source_id}')" title="${escapeHtml(t('value_source.picture_source'))}">🖥️ ${escapeHtml(psName)}</span>`
|
||||
: `<span class="stream-card-prop">🖥️ ${escapeHtml(psName)}</span>`;
|
||||
propsHtml = `
|
||||
<span class="stream-card-prop">🖥️ ${escapeHtml(psName)}</span>
|
||||
${psBadge}
|
||||
<span class="stream-card-prop">🔄 ${src.scene_behavior || 'complement'}</span>
|
||||
`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user