You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit bf4b609
Browse filesBrowse the repository at this point in the historyBrowse files
wip(pm): a refusal guard's region refuses in code and returns no value
A string saying "throw" refuses nothing, and a members-only region that
returns a value is an allow-list by another spelling; both now keep T2
firing, each pinned by a control.
Claude-Session: https://claude.ai/code/session_01CB6W87z22K2yjUCDyVrJRk
Co-authored-by: Claude <noreply@anthropic.com>
if(guards.length===0)returnno(`no reader of \`${name}\` is a guard that leaves only its members to a refusal`);
@@ -5610,6 +5635,8 @@ export function selfTest() {
5610
5635
t('⛔ an EXPORTED set fires — on its own declaration, or re-exported anywhere in the file',verdictOf(constructRun(ASC.patch.replace(' const SINGLE_SERIES_TYPES',' export const SINGLE_SERIES_TYPES'),DENY_SET_SOURCE.replace('const SINGLE_SERIES_TYPES','export const SINGLE_SERIES_TYPES')))==='fires'&&ascWith(`${DENY_SET_SOURCE}export { SINGLE_SERIES_TYPES };\n`)==='fires');
5611
5636
t('⛔ NO head blob, no reading — fires',ascWith(null)==='fires');
5612
5637
t('⛔ a members-only region that never refuses is no refusal — fires',ascWith(DENY_SET_SOURCE.replace("ctx.addIssue({ code: 'custom', message: 'one measure on ' + names });",'console.log(names);'))==='fires');
t('⛔ a members-only region that RETURNS a value hands members what non-members never get — an allow-list by another spelling — fires',ascWith(DENY_SET_SOURCE.replace(' return;\n }\n}',' return names;\n }\n}'))==='fires');
5613
5640
t('⛔ a members-only region the walk cannot LEX is no reading — fires',ascWith(DENY_SET_SOURCE.replace(' return;\n }',' const re = /^x/;\n return;\n }'))==='fires');
5614
5641
t('⛔ the name inside a STRING still counts as a reader — a mis-lexed name is never an invisible one',ascWith(`${DENY_SET_SOURCE}const LABEL = 'SINGLE_SERIES_TYPES';\n`)==='fires');
5615
5642
t('⛔ two declarations of the name are ambiguous — fires',ascWith(`${DENY_SET_SOURCE}function shadow() {\n const SINGLE_SERIES_TYPES = ['x'] as const;\n return SINGLE_SERIES_TYPES;\n}\n`)==='fires');
0 commit comments