Skip to content

Instantly share code, notes, and snippets.

function render(model){
let current_state_name = model.active_states[0].name;
return $("h1",
{style: {color: "darkBlue"}},
`The current state is: ${current_state_name}`);
}
@daveduthie
daveduthie / SketchSystems.spec
Last active September 1, 2022 07:33
Feature flag evaluation
Feature flag evaluation
Initial
global_toggle_is_on -> On
global_toggle_is_not_on -> UsualRules
UsualRules
staff_id_matches -> On
user_id_matches -> On
email_matches -> On
else -> Off
On
@daveduthie
daveduthie / SketchSystems.spec
Created September 1, 2022 07:31
Feature flag evaluation
Feature flag evaluation
Initial
global_toggle_is_on -> On
global_toggle_is_not_on -> UsualRules
UsualRules
staff_id_matches -> On
user_id_matches -> On
email_matches -> On
else -> Off
On
@daveduthie
daveduthie / SketchSystems.spec
Last active September 1, 2022 07:32
Feature flag evaluation
Feature flag evaluation
Initial
global_toggle_is_on -> On
global_toggle_is_not_on -> UsualRules
UsualRules
staff_id_matches -> On
user_id_matches -> On
email_matches -> On
else -> Off
On
@daveduthie
daveduthie / SketchSystems.spec
Last active June 12, 2021 17:12
AdviceModule Statechart
AdviceModule Statechart
FNA
Invited
start -> StartedQ
StartedQ
submit -> SubmittedQ
Review
reset -> StartedQ
reject -> Abandoned
SubmittedQ
@daveduthie
daveduthie / SketchSystems.spec
Last active June 12, 2021 17:12
AdviceModule
AdviceModule
FNA
Invited
start -> StartedQ
StartedQ
submit -> SubmittedQ
Review
reset -> StartedQ
reject -> Abandoned
SubmittedQ
@daveduthie
daveduthie / SketchSystems.spec
Last active June 12, 2021 17:12
Advice module FSM
Advice module FSM
Not created*
Client self services from portal -> Tool in progress
Advisor promotes module -> Invited
Invited
Client starts tool -> Tool in progress
Advisor starts tool -> Tool in progress
Tool in progress
Client completes tool -> Awaiting advice
Awaiting advice
Worksheet
Client actions
Tool available in Hunam*
click tool -> Tool in progress
Tool in progress
Answer questions -> Tool in progress
Complete tool -> Awaiting advice
Published
Accept -> Accepted
Reject -> Not doing
Wizard
Advised
Overview
Start -> Accepted
Reject -> Rejected
Accepted
Step 1*
Back -> Overview 2
Save and close -> Overview 2
Next -> Accepted w decision
;; Adapted from cljs.test/assert-predicate
(defn assert-predicate
[form]
(let [args (rest form)
pred (first form)]
`(let [values# (list ~@args)
result# (apply ~pred values#)]
(if result#
true
(throw (ex-info "fail"