In the dashboard and on the job page, indicate whether the job appears in the latest jobset eval. That way, the user gets some indication if a job has accidentally disappeared (e.g. due to an evaluation error).
JPTXSWBOYRZMQDAYCJZBXVABO6GFQQ3CFSLX4FPXKLIWURPEWKMAC O757ISIS3BDTQOGYCHQXY5V2OCGX3UFL75WUSF33AZI43AE3H75QC KSBB33RE2PK5SFN7ZMOTZJQHZB4JYIIUUKWDSD3LSZ5GD465AJHQC OZDDUMVPLAIDDD4H43JOP75WYF6XOXL737GEUIHVDTKQAGFHYTBAC J5UVLXOK6EDIL5I7VKWH4V2QDS4DPD7FHRK6XBWSXFRQS4JKXFZQC ZH6B56XRZON7AGKUPGKABU2SWOIQSYBTXVOMR66X6P6MG25Y4WZAC XKXMU5PVXDNCWV6JDO2VWHB4HRAXI3H4ADRSTBJ227WIJBLHRFJAC WGUKOIQZOQ64I6OJHGR4RSRI2HPH4RXADNSPFBWRETKO7OWCET4QC ODNCGFQ5FPKFI624BVMLW7PJ2EFJOR3TY66OCZM42UNNTWBCF2TQC # Check whether the given job is a member of the most recent jobset# evaluation.sub jobExists {my ($self, $c, $job) = @_;my $latestEval = $job->jobset->jobsetevals->search({ hasnewbuilds => 1},{ rows => 1, order_by => ["id desc"] })->single;return 0 if !defined $latestEval; # can't happenreturn scalar($latestEval->builds->search({ job => $job->name })) != 0;}
<td>[% INCLUDE renderFullJobName project=j.job.get_column('project') jobset=j.job.get_column('jobset') job=j.job.name %]</td>
<td><span class="[% IF !jobExists(j.job) %]disabled-job[% END %]">[% INCLUDE renderFullJobName project=j.job.get_column('project') jobset=j.job.get_column('jobset') job=j.job.name %]</span></td>