piensalo 0.1.0a2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- piensalo-0.1.0a2/.github/CODEOWNERS +2 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/bug-report.yml +56 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/case-study.yml +52 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/config.yml +5 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/negative-transfer.yml +66 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/new-skill.yml +103 -0
- piensalo-0.1.0a2/.github/ISSUE_TEMPLATE/security.md +25 -0
- piensalo-0.1.0a2/.github/PULL_REQUEST_TEMPLATE.md +41 -0
- piensalo-0.1.0a2/.github/workflows/ci.yml +121 -0
- piensalo-0.1.0a2/.github/workflows/publish.yml +26 -0
- piensalo-0.1.0a2/.gitignore +7 -0
- piensalo-0.1.0a2/BENCHMARKS.md +69 -0
- piensalo-0.1.0a2/CHANGELOG.md +58 -0
- piensalo-0.1.0a2/CITATION.cff +27 -0
- piensalo-0.1.0a2/CODE_OF_CONDUCT.md +133 -0
- piensalo-0.1.0a2/CONTRIBUTING.md +111 -0
- piensalo-0.1.0a2/EVIDENCE.md +174 -0
- piensalo-0.1.0a2/LICENSE +21 -0
- piensalo-0.1.0a2/MANIFESTO.md +60 -0
- piensalo-0.1.0a2/Makefile +35 -0
- piensalo-0.1.0a2/NEGATIVE-RESULTS.md +102 -0
- piensalo-0.1.0a2/PKG-INFO +210 -0
- piensalo-0.1.0a2/README.md +182 -0
- piensalo-0.1.0a2/ROADMAP.md +54 -0
- piensalo-0.1.0a2/SECURITY.md +62 -0
- piensalo-0.1.0a2/assets/README.md +20 -0
- piensalo-0.1.0a2/assets/cognitive-loop.svg +72 -0
- piensalo-0.1.0a2/assets/evidence-map.svg +69 -0
- piensalo-0.1.0a2/assets/hero.svg +35 -0
- piensalo-0.1.0a2/assets/terminal-demo.svg +55 -0
- piensalo-0.1.0a2/docs/THIRD_PARTY_NOTICES.md +36 -0
- piensalo-0.1.0a2/docs/THREAT-MODEL.md +176 -0
- piensalo-0.1.0a2/docs/alpha/ALPHA-EXIT-CRITERIA.md +33 -0
- piensalo-0.1.0a2/docs/alpha/ALPHA-FEEDBACK-SCHEMA.json +132 -0
- piensalo-0.1.0a2/docs/alpha/ALPHA-RESULT-TRACKER.md +31 -0
- piensalo-0.1.0a2/docs/alpha/ALPHA-TESTER-INSTRUCTIONS.md +44 -0
- piensalo-0.1.0a2/docs/alpha/START-HERE.md +67 -0
- piensalo-0.1.0a2/docs/alpha/SUBMIT-RESULTS.md +34 -0
- piensalo-0.1.0a2/docs/architecture.md +129 -0
- piensalo-0.1.0a2/docs/evidence/CLAIM-LEDGER.md +35 -0
- piensalo-0.1.0a2/docs/evidence-levels.md +82 -0
- piensalo-0.1.0a2/docs/evidence-report.md +48 -0
- piensalo-0.1.0a2/docs/good-first-issues.md +68 -0
- piensalo-0.1.0a2/docs/methodology.md +63 -0
- piensalo-0.1.0a2/docs/model-provenance.md +67 -0
- piensalo-0.1.0a2/docs/operator-boundaries.md +63 -0
- piensalo-0.1.0a2/docs/origin-story.md +67 -0
- piensalo-0.1.0a2/docs/provenance/EXPORT-MANIFEST.json +828 -0
- piensalo-0.1.0a2/docs/provenance/FABLE-REFERENCE-AUDIT.md +42 -0
- piensalo-0.1.0a2/docs/provenance/HASHES.sha256 +580 -0
- piensalo-0.1.0a2/docs/provenance/PIENSALO-NAME-AUDIT.md +35 -0
- piensalo-0.1.0a2/docs/skill-security.md +67 -0
- piensalo-0.1.0a2/docs/technical-report.md +85 -0
- piensalo-0.1.0a2/evals/Makefile +17 -0
- piensalo-0.1.0a2/evals/graders/README.md +76 -0
- piensalo-0.1.0a2/evals/graders/layered_common.py +166 -0
- piensalo-0.1.0a2/evals/harness/README.md +79 -0
- piensalo-0.1.0a2/evals/harness/analyze.py +211 -0
- piensalo-0.1.0a2/evals/harness/config.example.json +29 -0
- piensalo-0.1.0a2/evals/harness/grader_selftest.py +76 -0
- piensalo-0.1.0a2/evals/harness/runner.py +553 -0
- piensalo-0.1.0a2/evals/public-tasks/README.md +48 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/contract.json +12 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/hidden-grader/KEY.md +13 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/hidden-grader/grade.py +42 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/clean-correct.md +6 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/decorated-correct.md +3 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/probes/wrong-value.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-01-discount-stack/task.md +18 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/contract.json +20 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/hidden-grader/KEY.md +17 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/hidden-grader/grade.py +66 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/clean-correct.md +9 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/decorated-correct.md +6 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/probes/wrong-value.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/public-context/field-report.md +17 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/public-context/methods-appendix.md +19 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-02-pilot-review/task.md +18 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/contract.json +21 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/hidden-grader/KEY.md +15 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/hidden-grader/grade.py +43 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/clean-correct.md +9 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/decorated-correct.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/probes/wrong-value.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/demo-03-release-note/task.md +23 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/contract.json +20 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/hidden-grader/KEY.md +16 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/hidden-grader/grade.py +43 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/hidden-grader/meta.json +6 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/clean-correct.md +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/decorated-correct.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/probes/wrong-value.md +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-01-bill-split/task.md +18 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/contract.json +9 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/hidden-grader/KEY.md +20 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/hidden-grader/grade.py +50 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/hidden-grader/meta.json +6 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/clean-correct.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/decorated-correct.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/probes/wrong-value.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/public-context/events.log +9 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-02-log-error-filter/task.md +19 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/contract.json +25 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/hidden-grader/KEY.md +23 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/hidden-grader/grade.py +61 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/hidden-grader/meta.json +6 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/clean-correct.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/decorated-correct.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/probes/wrong-value.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-03-anodizing-spec/task.md +25 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/contract.json +12 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/hidden-grader/KEY.md +21 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/hidden-grader/grade.py +39 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/hidden-grader/meta.json +6 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/clean-correct.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/decorated-correct.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/probes/wrong-value.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-04-bishop-domination/task.md +19 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/contract.json +20 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/hidden-grader/KEY.md +25 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/hidden-grader/grade.py +51 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/clean-correct.md +12 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/decorated-correct.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/probes/wrong-value.md +9 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-05-greywater-recovery/task.md +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/contract.json +12 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/hidden-grader/KEY.md +20 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/hidden-grader/grade.py +56 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/clean-correct.md +6 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/decorated-correct.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/probes/wrong-value.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/public-context/candidates.md +48 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/public-context/requirements.md +35 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-06-field-laptop/task.md +14 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/contract.json +12 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/hidden-grader/KEY.md +22 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/hidden-grader/grade.py +40 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/clean-correct.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/decorated-correct.md +4 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/probes/wrong-value.md +5 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-07-calibration-windows/task.md +26 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/contract.json +43 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/hidden-grader/KEY.md +28 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/hidden-grader/grade.py +95 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/hidden-grader/meta.json +8 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/clean-correct.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/decorated-correct.md +9 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/expected.json +32 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/prose-trap.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/stall.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/stub.md +1 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/probes/wrong-value.md +7 -0
- piensalo-0.1.0a2/evals/public-tasks/dev-08-incident-record/task.md +40 -0
- piensalo-0.1.0a2/evals/results/README.md +48 -0
- piensalo-0.1.0a2/evals/results/consumption-ledger.json +104 -0
- piensalo-0.1.0a2/evals/results/results-schema.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183305-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183440-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-183510-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260712-190846-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-012208-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/ANALYSIS.json +95 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/cells/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/cells/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/cells/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/cells/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/grades/dev-01-bill-split.bare.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/grades/dev-01-bill-split.verify-only.t1.json +27 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/grades/dev-08-incident-record.bare.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/grades/dev-08-incident-record.verify-only.t1.json +33 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/manifest.json +22 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/meter.tsv +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/smoke-answers/dev-01-bill-split.bare.t1.md +5 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/smoke-answers/dev-01-bill-split.verify-only.t1.md +8 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/smoke-answers/dev-08-incident-record.bare.t1.md +9 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/smoke-answers/dev-08-incident-record.verify-only.t1.md +7 -0
- piensalo-0.1.0a2/evals/results/runs/20260713-021554-smoke/statuses.json +6 -0
- piensalo-0.1.0a2/examples/coding/ANALYSIS.md +30 -0
- piensalo-0.1.0a2/examples/coding/bare-output.md +12 -0
- piensalo-0.1.0a2/examples/coding/piensalo-output.md +38 -0
- piensalo-0.1.0a2/examples/coding/task.md +27 -0
- piensalo-0.1.0a2/examples/flagship/README.md +16 -0
- piensalo-0.1.0a2/examples/flagship/TRANSCRIPT.md +248 -0
- piensalo-0.1.0a2/examples/flagship/contract.json +9 -0
- piensalo-0.1.0a2/examples/flagship/demo.sh +31 -0
- piensalo-0.1.0a2/examples/flagship/draft-broken.md +7 -0
- piensalo-0.1.0a2/examples/flagship/draft-correct.md +8 -0
- piensalo-0.1.0a2/examples/flagship/expected-findings.json +13 -0
- piensalo-0.1.0a2/examples/flagship/task.md +13 -0
- piensalo-0.1.0a2/examples/invention/ANALYSIS.md +28 -0
- piensalo-0.1.0a2/examples/invention/bare-output.md +5 -0
- piensalo-0.1.0a2/examples/invention/piensalo-output.md +31 -0
- piensalo-0.1.0a2/examples/invention/task.md +6 -0
- piensalo-0.1.0a2/examples/math/ANALYSIS.md +26 -0
- piensalo-0.1.0a2/examples/math/bare-output.md +5 -0
- piensalo-0.1.0a2/examples/math/piensalo-output.md +14 -0
- piensalo-0.1.0a2/examples/math/task.md +9 -0
- piensalo-0.1.0a2/examples/research/ANALYSIS.md +27 -0
- piensalo-0.1.0a2/examples/research/bare-output.md +3 -0
- piensalo-0.1.0a2/examples/research/piensalo-output.md +21 -0
- piensalo-0.1.0a2/examples/research/task.md +14 -0
- piensalo-0.1.0a2/examples/strategy/ANALYSIS.md +30 -0
- piensalo-0.1.0a2/examples/strategy/bare-output.md +5 -0
- piensalo-0.1.0a2/examples/strategy/piensalo-output.md +22 -0
- piensalo-0.1.0a2/examples/strategy/task.md +15 -0
- piensalo-0.1.0a2/examples/writing/ANALYSIS.md +29 -0
- piensalo-0.1.0a2/examples/writing/bare-output.md +21 -0
- piensalo-0.1.0a2/examples/writing/piensalo-output.md +23 -0
- piensalo-0.1.0a2/examples/writing/task.md +10 -0
- piensalo-0.1.0a2/micro-skills/README.md +73 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/examples/positive.md +14 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/audience-constraint-check/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/examples/positive.md +16 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/boundary-case-check/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/examples/positive.md +14 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/calibrated-uncertainty/skill-card.md +19 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/examples/positive.md +14 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/causal-model-construction/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/examples/positive.md +20 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/cheapest-discriminating-test/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/examples/positive.md +17 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/manifest.json +26 -0
- piensalo-0.1.0a2/micro-skills/complete-the-delivery/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/examples/positive.md +14 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/contradiction-resolution/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/examples/near-miss.md +10 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/examples/positive.md +20 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/manifest.json +23 -0
- piensalo-0.1.0a2/micro-skills/counterexample-search/skill-card.md +19 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/examples/positive.md +26 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/disqualifier-scan/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/examples/positive.md +19 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/distinct-mechanism-generation/skill-card.md +19 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/examples/positive.md +25 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/feasibility-attack/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/SKILL.md +35 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/examples/positive.md +19 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/manifest.json +26 -0
- piensalo-0.1.0a2/micro-skills/final-answer-completeness/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/examples/positive.md +21 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/hidden-constraint-scan/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/examples/positive.md +18 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/load-bearing-uncertainty/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/examples/positive.md +18 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/objective-vs-proxy/skill-card.md +20 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/examples/positive.md +16 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/recover-real-objective/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/examples/positive.md +15 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/manifest.json +25 -0
- piensalo-0.1.0a2/micro-skills/rederive-the-numbers/skill-card.md +21 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/SKILL.md +33 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/examples/positive.md +18 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/manifest.json +23 -0
- piensalo-0.1.0a2/micro-skills/second-order-effects/skill-card.md +19 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/BENCHMARK.md +16 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/SKILL.md +34 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/examples/positive.md +15 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/manifest.json +24 -0
- piensalo-0.1.0a2/micro-skills/source-claim-verification/skill-card.md +20 -0
- piensalo-0.1.0a2/pyproject.toml +55 -0
- piensalo-0.1.0a2/skills/README.md +80 -0
- piensalo-0.1.0a2/skills/piensalo/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo/SKILL.md +39 -0
- piensalo-0.1.0a2/skills/piensalo/evals/EVAL-PLAN.md +16 -0
- piensalo-0.1.0a2/skills/piensalo/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo/examples/positive.md +16 -0
- piensalo-0.1.0a2/skills/piensalo/manifest.json +30 -0
- piensalo-0.1.0a2/skills/piensalo/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo/references/verification.md +36 -0
- piensalo-0.1.0a2/skills/piensalo/skill-card.md +20 -0
- piensalo-0.1.0a2/skills/piensalo-build/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-build/SKILL.md +37 -0
- piensalo-0.1.0a2/skills/piensalo-build/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-build/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-build/examples/positive.md +13 -0
- piensalo-0.1.0a2/skills/piensalo-build/manifest.json +29 -0
- piensalo-0.1.0a2/skills/piensalo-build/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-build/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-build/references/verification.md +36 -0
- piensalo-0.1.0a2/skills/piensalo-build/skill-card.md +19 -0
- piensalo-0.1.0a2/skills/piensalo-invent/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-invent/SKILL.md +42 -0
- piensalo-0.1.0a2/skills/piensalo-invent/evals/EVAL-PLAN.md +17 -0
- piensalo-0.1.0a2/skills/piensalo-invent/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-invent/examples/positive.md +14 -0
- piensalo-0.1.0a2/skills/piensalo-invent/manifest.json +29 -0
- piensalo-0.1.0a2/skills/piensalo-invent/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-invent/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-invent/references/verification.md +35 -0
- piensalo-0.1.0a2/skills/piensalo-invent/skill-card.md +18 -0
- piensalo-0.1.0a2/skills/piensalo-math/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-math/SKILL.md +43 -0
- piensalo-0.1.0a2/skills/piensalo-math/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-math/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-math/examples/positive.md +13 -0
- piensalo-0.1.0a2/skills/piensalo-math/manifest.json +30 -0
- piensalo-0.1.0a2/skills/piensalo-math/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-math/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-math/references/verification.md +35 -0
- piensalo-0.1.0a2/skills/piensalo-math/skill-card.md +20 -0
- piensalo-0.1.0a2/skills/piensalo-research/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-research/SKILL.md +40 -0
- piensalo-0.1.0a2/skills/piensalo-research/evals/EVAL-PLAN.md +17 -0
- piensalo-0.1.0a2/skills/piensalo-research/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-research/examples/positive.md +14 -0
- piensalo-0.1.0a2/skills/piensalo-research/manifest.json +28 -0
- piensalo-0.1.0a2/skills/piensalo-research/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-research/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-research/references/verification.md +34 -0
- piensalo-0.1.0a2/skills/piensalo-research/skill-card.md +18 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/SKILL.md +43 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/evals/EVAL-PLAN.md +17 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/examples/positive.md +14 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/manifest.json +28 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/references/verification.md +34 -0
- piensalo-0.1.0a2/skills/piensalo-strategy/skill-card.md +18 -0
- piensalo-0.1.0a2/skills/piensalo-verify/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-verify/SKILL.md +30 -0
- piensalo-0.1.0a2/skills/piensalo-verify/evals/EVAL-PLAN.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-verify/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-verify/examples/positive.md +11 -0
- piensalo-0.1.0a2/skills/piensalo-verify/manifest.json +29 -0
- piensalo-0.1.0a2/skills/piensalo-verify/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-verify/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-verify/references/verification.md +229 -0
- piensalo-0.1.0a2/skills/piensalo-verify/skill-card.md +20 -0
- piensalo-0.1.0a2/skills/piensalo-write/BENCHMARK.md +15 -0
- piensalo-0.1.0a2/skills/piensalo-write/SKILL.md +38 -0
- piensalo-0.1.0a2/skills/piensalo-write/evals/EVAL-PLAN.md +17 -0
- piensalo-0.1.0a2/skills/piensalo-write/examples/near-miss.md +7 -0
- piensalo-0.1.0a2/skills/piensalo-write/examples/positive.md +14 -0
- piensalo-0.1.0a2/skills/piensalo-write/manifest.json +28 -0
- piensalo-0.1.0a2/skills/piensalo-write/references/contracts.md +180 -0
- piensalo-0.1.0a2/skills/piensalo-write/references/failure-checks.md +131 -0
- piensalo-0.1.0a2/skills/piensalo-write/references/verification.md +37 -0
- piensalo-0.1.0a2/skills/piensalo-write/skill-card.md +18 -0
- piensalo-0.1.0a2/src/piensalo/__init__.py +13 -0
- piensalo-0.1.0a2/src/piensalo/__main__.py +5 -0
- piensalo-0.1.0a2/src/piensalo/adapters/__init__.py +32 -0
- piensalo-0.1.0a2/src/piensalo/adapters/base.py +67 -0
- piensalo-0.1.0a2/src/piensalo/adapters/claude_cli.py +79 -0
- piensalo-0.1.0a2/src/piensalo/adapters/manual.py +43 -0
- piensalo-0.1.0a2/src/piensalo/adapters/ollama.py +64 -0
- piensalo-0.1.0a2/src/piensalo/adapters/openai_compat.py +88 -0
- piensalo-0.1.0a2/src/piensalo/cli/__init__.py +8 -0
- piensalo-0.1.0a2/src/piensalo/cli/main.py +682 -0
- piensalo-0.1.0a2/src/piensalo/compiler/__init__.py +10 -0
- piensalo-0.1.0a2/src/piensalo/compiler/program.py +160 -0
- piensalo-0.1.0a2/src/piensalo/core/__init__.py +31 -0
- piensalo-0.1.0a2/src/piensalo/core/operations.json +207 -0
- piensalo-0.1.0a2/src/piensalo/core/operations.md +59 -0
- piensalo-0.1.0a2/src/piensalo/evidence/__init__.py +15 -0
- piensalo-0.1.0a2/src/piensalo/evidence/records.py +82 -0
- piensalo-0.1.0a2/src/piensalo/inspect/__init__.py +9 -0
- piensalo-0.1.0a2/src/piensalo/inspect/scanner.py +238 -0
- piensalo-0.1.0a2/src/piensalo/loop/__init__.py +14 -0
- piensalo-0.1.0a2/src/piensalo/loop/controller.py +597 -0
- piensalo-0.1.0a2/src/piensalo/loop/state.py +111 -0
- piensalo-0.1.0a2/src/piensalo/repair/__init__.py +28 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/boundary-case-check.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/calibrated-uncertainty.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/complete-the-delivery.md +30 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/contradiction-resolution.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/disqualifier-scan.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/final-answer-completeness.md +30 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/hidden-constraint-scan.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/recover-real-objective.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/rederive-the-numbers.md +29 -0
- piensalo-0.1.0a2/src/piensalo/repair/library/source-claim-verification.md +29 -0
- piensalo-0.1.0a2/src/piensalo/security/__init__.py +10 -0
- piensalo-0.1.0a2/src/piensalo/security/skill_scan.py +118 -0
- piensalo-0.1.0a2/src/piensalo/verify/__init__.py +29 -0
- piensalo-0.1.0a2/src/piensalo/verify/contract.py +144 -0
- piensalo-0.1.0a2/src/piensalo/verify/layered.py +173 -0
- piensalo-0.1.0a2/tests/conftest.py +20 -0
- piensalo-0.1.0a2/tests/test_cli_smoke.py +124 -0
- piensalo-0.1.0a2/tests/test_contract.py +87 -0
- piensalo-0.1.0a2/tests/test_evidence_and_compiler.py +88 -0
- piensalo-0.1.0a2/tests/test_flagship_transcript.py +88 -0
- piensalo-0.1.0a2/tests/test_layered.py +84 -0
- piensalo-0.1.0a2/tests/test_loop.py +154 -0
- piensalo-0.1.0a2/tests/test_main_module.py +39 -0
- piensalo-0.1.0a2/tests/test_readme_demo_parity.py +41 -0
- piensalo-0.1.0a2/tests/test_repair_modes.py +137 -0
- piensalo-0.1.0a2/tests/test_scanner.py +62 -0
- piensalo-0.1.0a2/tests/test_skill_multipath.py +106 -0
- piensalo-0.1.0a2/tests/test_skill_scan.py +89 -0
- piensalo-0.1.0a2/tests/test_think_input.py +62 -0
- piensalo-0.1.0a2/tests/test_verify_truth.py +113 -0
- piensalo-0.1.0a2/uv.lock +597 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
name: Bug report
|
|
2
|
+
description: Something in piensalo behaves incorrectly
|
|
3
|
+
labels: ["bug", "needs-triage"]
|
|
4
|
+
body:
|
|
5
|
+
- type: markdown
|
|
6
|
+
attributes:
|
|
7
|
+
value: |
|
|
8
|
+
Thanks for the report. Two notes before you start:
|
|
9
|
+
- **Security issues:** do NOT file here — use private reporting (see SECURITY.md).
|
|
10
|
+
- **"It made my results worse":** that's a negative-transfer report — use that template instead; it's a first-class contribution.
|
|
11
|
+
- type: textarea
|
|
12
|
+
id: what-happened
|
|
13
|
+
attributes:
|
|
14
|
+
label: What happened
|
|
15
|
+
description: The observable behavior, not the interpretation.
|
|
16
|
+
placeholder: "`piensalo verify draft` exited 0 but printed no verdict line."
|
|
17
|
+
validations:
|
|
18
|
+
required: true
|
|
19
|
+
- type: textarea
|
|
20
|
+
id: expected
|
|
21
|
+
attributes:
|
|
22
|
+
label: What you expected
|
|
23
|
+
validations:
|
|
24
|
+
required: true
|
|
25
|
+
- type: textarea
|
|
26
|
+
id: repro
|
|
27
|
+
attributes:
|
|
28
|
+
label: Minimal reproduction
|
|
29
|
+
description: Exact commands from a clean state. If you can't reproduce it, say so — flaky reports are still useful when labeled as flaky.
|
|
30
|
+
render: shell
|
|
31
|
+
validations:
|
|
32
|
+
required: true
|
|
33
|
+
- type: textarea
|
|
34
|
+
id: environment
|
|
35
|
+
attributes:
|
|
36
|
+
label: Environment
|
|
37
|
+
description: Paste the output of `piensalo doctor` (it redacts secrets; still skim it before pasting).
|
|
38
|
+
render: text
|
|
39
|
+
validations:
|
|
40
|
+
required: true
|
|
41
|
+
- type: input
|
|
42
|
+
id: model
|
|
43
|
+
attributes:
|
|
44
|
+
label: Model + adapter (as recorded by provenance)
|
|
45
|
+
placeholder: "e.g. ollama/llama3.1:8b via ollama adapter, or 'skills-only, no runtime'"
|
|
46
|
+
validations:
|
|
47
|
+
required: true
|
|
48
|
+
- type: checkboxes
|
|
49
|
+
id: checks
|
|
50
|
+
attributes:
|
|
51
|
+
label: Confirm
|
|
52
|
+
options:
|
|
53
|
+
- label: This is not a security vulnerability (those go through private reporting, per SECURITY.md)
|
|
54
|
+
required: true
|
|
55
|
+
- label: I removed secrets and private paths from everything pasted above
|
|
56
|
+
required: true
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
name: Case study / benchmark reproduction
|
|
2
|
+
description: Share a real usage trace or a reproduction of our published numbers — agreeing or disagreeing.
|
|
3
|
+
labels: ["case-study", "evidence"]
|
|
4
|
+
body:
|
|
5
|
+
- type: markdown
|
|
6
|
+
attributes:
|
|
7
|
+
value: |
|
|
8
|
+
Reproductions that DISAGREE with our published numbers are especially welcome —
|
|
9
|
+
they get the same visibility as confirmations (docs/methodology.md).
|
|
10
|
+
- type: dropdown
|
|
11
|
+
id: kind
|
|
12
|
+
attributes:
|
|
13
|
+
label: Kind
|
|
14
|
+
options:
|
|
15
|
+
- Case study (real task, full lifecycle trace)
|
|
16
|
+
- Benchmark reproduction (matches published results)
|
|
17
|
+
- Benchmark reproduction (DISAGREES with published results)
|
|
18
|
+
validations:
|
|
19
|
+
required: true
|
|
20
|
+
- type: textarea
|
|
21
|
+
id: setup
|
|
22
|
+
attributes:
|
|
23
|
+
label: Setup
|
|
24
|
+
description: OS, install method, piensalo version, exact model identifiers as recorded by provenance, hardware if local.
|
|
25
|
+
validations:
|
|
26
|
+
required: true
|
|
27
|
+
- type: textarea
|
|
28
|
+
id: narrative
|
|
29
|
+
attributes:
|
|
30
|
+
label: What happened
|
|
31
|
+
description: The trace or run summary. For case studies include verdicts (REPAIR REQUIRED / NO REPAIR NEEDED / PASS) as they occurred — including wrong ones.
|
|
32
|
+
validations:
|
|
33
|
+
required: true
|
|
34
|
+
- type: textarea
|
|
35
|
+
id: artifacts
|
|
36
|
+
attributes:
|
|
37
|
+
label: Evidence artifacts
|
|
38
|
+
description: Outputs, evidence bundles, result tables. Scrub secrets and private paths before attaching.
|
|
39
|
+
validations:
|
|
40
|
+
required: true
|
|
41
|
+
- type: textarea
|
|
42
|
+
id: divergence
|
|
43
|
+
attributes:
|
|
44
|
+
label: Divergence from published results (if any)
|
|
45
|
+
description: For reproductions — what differed, by how much, and your best hypothesis why.
|
|
46
|
+
- type: checkboxes
|
|
47
|
+
id: consent
|
|
48
|
+
attributes:
|
|
49
|
+
label: Publication
|
|
50
|
+
options:
|
|
51
|
+
- label: I consent to this content being published (anonymized on request) in the project's case studies or evidence reports
|
|
52
|
+
required: true
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
blank_issues_enabled: true
|
|
2
|
+
contact_links:
|
|
3
|
+
- name: Security vulnerability (private)
|
|
4
|
+
url: https://github.com/ralfyishere/piensalo/security/advisories/new
|
|
5
|
+
about: Please report security issues privately via GitHub security advisories — never in a public issue. See SECURITY.md.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
name: Negative-transfer report
|
|
2
|
+
description: Piénsalo made your results WORSE. This is a first-class contribution — confirmed reports are published with credit.
|
|
3
|
+
labels: ["negative-transfer", "evidence"]
|
|
4
|
+
body:
|
|
5
|
+
- type: markdown
|
|
6
|
+
attributes:
|
|
7
|
+
value: |
|
|
8
|
+
Thank you — this is the report we most need (Manifesto, principle 6).
|
|
9
|
+
Confirmed reports go into NEGATIVE-RESULTS.md with credit (if you want it).
|
|
10
|
+
- type: textarea
|
|
11
|
+
id: task
|
|
12
|
+
attributes:
|
|
13
|
+
label: The task
|
|
14
|
+
description: What you were doing, in enough detail to reproduce the setup. No secrets or client-identifying details.
|
|
15
|
+
validations:
|
|
16
|
+
required: true
|
|
17
|
+
- type: textarea
|
|
18
|
+
id: comparison
|
|
19
|
+
attributes:
|
|
20
|
+
label: The comparison
|
|
21
|
+
description: What "worse" is measured against — the same task without Piénsalo? A different configuration? Describe both sides.
|
|
22
|
+
validations:
|
|
23
|
+
required: true
|
|
24
|
+
- type: textarea
|
|
25
|
+
id: worse-how
|
|
26
|
+
attributes:
|
|
27
|
+
label: How it was worse
|
|
28
|
+
description: Observable difference — wrong output, damaged correct work, unnecessary repair applied, failure to abstain, time/cost burned.
|
|
29
|
+
validations:
|
|
30
|
+
required: true
|
|
31
|
+
- type: input
|
|
32
|
+
id: model
|
|
33
|
+
attributes:
|
|
34
|
+
label: Model + adapter (as recorded by provenance)
|
|
35
|
+
validations:
|
|
36
|
+
required: true
|
|
37
|
+
- type: input
|
|
38
|
+
id: version
|
|
39
|
+
attributes:
|
|
40
|
+
label: piensalo version / skill versions
|
|
41
|
+
validations:
|
|
42
|
+
required: true
|
|
43
|
+
- type: dropdown
|
|
44
|
+
id: repeatability
|
|
45
|
+
attributes:
|
|
46
|
+
label: Repeatability
|
|
47
|
+
options:
|
|
48
|
+
- Reproduced 2+ times
|
|
49
|
+
- Happened once, could not retry yet
|
|
50
|
+
- Happened once, retry did NOT reproduce it
|
|
51
|
+
validations:
|
|
52
|
+
required: true
|
|
53
|
+
- type: textarea
|
|
54
|
+
id: evidence
|
|
55
|
+
attributes:
|
|
56
|
+
label: Evidence artifacts
|
|
57
|
+
description: Relevant .piensalo/evidence files or transcripts (scrub secrets first).
|
|
58
|
+
- type: dropdown
|
|
59
|
+
id: credit
|
|
60
|
+
attributes:
|
|
61
|
+
label: Credit preference if published
|
|
62
|
+
options:
|
|
63
|
+
- Credit me (GitHub handle)
|
|
64
|
+
- Publish anonymously
|
|
65
|
+
validations:
|
|
66
|
+
required: true
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
name: New skill contribution
|
|
2
|
+
description: Propose a new portable skill. All fields are required — they ARE the skill's spec.
|
|
3
|
+
labels: ["skill-proposal", "needs-review"]
|
|
4
|
+
body:
|
|
5
|
+
- type: markdown
|
|
6
|
+
attributes:
|
|
7
|
+
value: |
|
|
8
|
+
Every field below is mandatory — a skill missing any of them will not be merged
|
|
9
|
+
(CONTRIBUTING.md, type 1). New skills honestly start at evidence level `DESIGNED`.
|
|
10
|
+
- type: input
|
|
11
|
+
id: skill-name
|
|
12
|
+
attributes:
|
|
13
|
+
label: Skill name
|
|
14
|
+
placeholder: "kebab-case, e.g. unit-consistency-check"
|
|
15
|
+
validations:
|
|
16
|
+
required: true
|
|
17
|
+
- type: textarea
|
|
18
|
+
id: observable-trigger
|
|
19
|
+
attributes:
|
|
20
|
+
label: Observable trigger
|
|
21
|
+
description: What a session can SEE that activates this skill. "When appropriate" is not observable.
|
|
22
|
+
validations:
|
|
23
|
+
required: true
|
|
24
|
+
- type: textarea
|
|
25
|
+
id: counterindications
|
|
26
|
+
attributes:
|
|
27
|
+
label: Counterindications
|
|
28
|
+
description: Situations where this skill must NOT fire, even though it might seem to apply.
|
|
29
|
+
validations:
|
|
30
|
+
required: true
|
|
31
|
+
- type: textarea
|
|
32
|
+
id: bounded-procedure
|
|
33
|
+
attributes:
|
|
34
|
+
label: Bounded procedure
|
|
35
|
+
description: The steps, with an explicit budget (max iterations / max scope). Unbounded procedures are declined.
|
|
36
|
+
validations:
|
|
37
|
+
required: true
|
|
38
|
+
- type: textarea
|
|
39
|
+
id: expected-output
|
|
40
|
+
attributes:
|
|
41
|
+
label: Expected output
|
|
42
|
+
description: What the skill's result looks like, concretely.
|
|
43
|
+
validations:
|
|
44
|
+
required: true
|
|
45
|
+
- type: textarea
|
|
46
|
+
id: verification
|
|
47
|
+
attributes:
|
|
48
|
+
label: Verification
|
|
49
|
+
description: How a reader checks the skill did its job (not "review carefully" — a checkable step).
|
|
50
|
+
validations:
|
|
51
|
+
required: true
|
|
52
|
+
- type: textarea
|
|
53
|
+
id: stop-condition
|
|
54
|
+
attributes:
|
|
55
|
+
label: Stop condition
|
|
56
|
+
description: When the skill is done, and when it must abort. Include the abstention path if one exists.
|
|
57
|
+
validations:
|
|
58
|
+
required: true
|
|
59
|
+
- type: textarea
|
|
60
|
+
id: positive-example
|
|
61
|
+
attributes:
|
|
62
|
+
label: Positive example
|
|
63
|
+
description: A realistic trace where the skill helps — input, skill behavior, improved outcome.
|
|
64
|
+
validations:
|
|
65
|
+
required: true
|
|
66
|
+
- type: textarea
|
|
67
|
+
id: near-miss
|
|
68
|
+
attributes:
|
|
69
|
+
label: Near miss
|
|
70
|
+
description: A concrete case that LOOKS like the trigger but isn't, and why the skill must not fire on it.
|
|
71
|
+
validations:
|
|
72
|
+
required: true
|
|
73
|
+
- type: textarea
|
|
74
|
+
id: negative-transfer-risk
|
|
75
|
+
attributes:
|
|
76
|
+
label: Negative-transfer risk
|
|
77
|
+
description: Where could this skill make results WORSE? (Strong models, easy tasks, and already-correct work are the usual victims — see NEGATIVE-RESULTS.md NR-1, NR-8.)
|
|
78
|
+
validations:
|
|
79
|
+
required: true
|
|
80
|
+
- type: textarea
|
|
81
|
+
id: evaluation-plan
|
|
82
|
+
attributes:
|
|
83
|
+
label: Evaluation plan
|
|
84
|
+
description: How this skill will be measured — tasks, comparison condition, grader, success criteria (docs/methodology.md).
|
|
85
|
+
validations:
|
|
86
|
+
required: true
|
|
87
|
+
- type: dropdown
|
|
88
|
+
id: evidence-level
|
|
89
|
+
attributes:
|
|
90
|
+
label: Claimed evidence level
|
|
91
|
+
description: Per docs/evidence-levels.md. DESIGNED is the honest default for new skills.
|
|
92
|
+
options:
|
|
93
|
+
- DESIGNED
|
|
94
|
+
- SMOKE_TESTED
|
|
95
|
+
- EXPERIMENTALLY_TESTED
|
|
96
|
+
- REPLICATED
|
|
97
|
+
validations:
|
|
98
|
+
required: true
|
|
99
|
+
- type: textarea
|
|
100
|
+
id: receipts
|
|
101
|
+
attributes:
|
|
102
|
+
label: Receipts for the claimed level
|
|
103
|
+
description: Required for any level above DESIGNED — link the runs/artifacts.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Security issue (do not use this template)
|
|
3
|
+
about: Security reports must go through private reporting — this template exists only to redirect you.
|
|
4
|
+
labels: ["invalid"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<!--
|
|
8
|
+
STOP — please do not file security issues publicly.
|
|
9
|
+
|
|
10
|
+
A public issue gives attackers the details before users have a fix.
|
|
11
|
+
-->
|
|
12
|
+
|
|
13
|
+
## Please report privately instead
|
|
14
|
+
|
|
15
|
+
1. Go to the repository's **Security** tab → **Report a vulnerability**
|
|
16
|
+
(https://github.com/ralfyishere/piensalo/security/advisories/new)
|
|
17
|
+
2. You'll get an acknowledgment within 72 hours (see SECURITY.md for the
|
|
18
|
+
full policy, scope, and disclosure process).
|
|
19
|
+
|
|
20
|
+
If you file vulnerability details here anyway, maintainers will redact the
|
|
21
|
+
issue and ask you to resubmit privately — you'll still get credit for the
|
|
22
|
+
find, but please save us both the step.
|
|
23
|
+
|
|
24
|
+
**In scope:** the CLI/runtime, skill loader and `skill scan`, model adapters,
|
|
25
|
+
release artifacts. **Threat model:** THREAT-MODEL.md.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Pull request
|
|
2
|
+
|
|
3
|
+
## What this changes
|
|
4
|
+
|
|
5
|
+
<!-- One concern per PR. If you're tempted to write "and", consider two PRs. -->
|
|
6
|
+
|
|
7
|
+
## Type
|
|
8
|
+
|
|
9
|
+
- [ ] Skill (all 11 required fields present — see the new-skill issue template)
|
|
10
|
+
- [ ] Verifier (adversarial test case included; FP/FN behavior stated)
|
|
11
|
+
- [ ] Model adapter (provenance honored, no silent fallback, no creds in logs)
|
|
12
|
+
- [ ] Task / benchmark reproduction
|
|
13
|
+
- [ ] Bug fix
|
|
14
|
+
- [ ] Docs
|
|
15
|
+
- [ ] Other:
|
|
16
|
+
|
|
17
|
+
## Verification I actually ran
|
|
18
|
+
|
|
19
|
+
<!-- Paste the commands and their real output. "Should work" is a prediction,
|
|
20
|
+
not a result. For docs PRs: paste the link-check / claim-check you did. -->
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Evidence discipline
|
|
26
|
+
|
|
27
|
+
- [ ] No capability claim in this PR exceeds its evidence level (docs/evidence-levels.md)
|
|
28
|
+
- [ ] I did not upgrade any evidence level via prose (only experiments do that)
|
|
29
|
+
- [ ] N/A — this PR makes no capability claims
|
|
30
|
+
|
|
31
|
+
## Security invariants (SECURITY.md)
|
|
32
|
+
|
|
33
|
+
- [ ] No telemetry, no network outside explicit adapters, no silent fallback,
|
|
34
|
+
no code execution from skill text, no secrets in code/logs/fixtures
|
|
35
|
+
- [ ] If this PR touches a guard (scanner rule, path check, scrubber): the
|
|
36
|
+
adversarial test that tries to defeat it is included
|
|
37
|
+
|
|
38
|
+
## Breaking changes
|
|
39
|
+
|
|
40
|
+
- [ ] None
|
|
41
|
+
- [ ] Yes — described above, CHANGELOG.md updated
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
test:
|
|
13
|
+
name: pytest (${{ matrix.os }}, py${{ matrix.python-version }})
|
|
14
|
+
runs-on: ${{ matrix.os }}
|
|
15
|
+
strategy:
|
|
16
|
+
fail-fast: false
|
|
17
|
+
matrix:
|
|
18
|
+
os: [ubuntu-latest, macos-latest]
|
|
19
|
+
python-version: ["3.10", "3.11", "3.12", "3.13"]
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@v4
|
|
22
|
+
- uses: actions/setup-python@v5
|
|
23
|
+
with:
|
|
24
|
+
python-version: ${{ matrix.python-version }}
|
|
25
|
+
- name: Install
|
|
26
|
+
run: |
|
|
27
|
+
python -m pip install --upgrade pip
|
|
28
|
+
pip install -e .
|
|
29
|
+
pip install pytest
|
|
30
|
+
- name: Run tests
|
|
31
|
+
run: pytest -q
|
|
32
|
+
|
|
33
|
+
skill-lint:
|
|
34
|
+
name: Skill lint
|
|
35
|
+
runs-on: ubuntu-latest
|
|
36
|
+
steps:
|
|
37
|
+
- uses: actions/checkout@v4
|
|
38
|
+
- uses: actions/setup-python@v5
|
|
39
|
+
with:
|
|
40
|
+
python-version: "3.12"
|
|
41
|
+
- name: Install
|
|
42
|
+
run: |
|
|
43
|
+
python -m pip install --upgrade pip
|
|
44
|
+
pip install -e .
|
|
45
|
+
- name: Lint shipped skills (structure + scan)
|
|
46
|
+
run: |
|
|
47
|
+
python -m piensalo skill scan skills/ micro-skills/
|
|
48
|
+
python -m piensalo skill lint skills/ micro-skills/
|
|
49
|
+
|
|
50
|
+
secret-scan:
|
|
51
|
+
name: Secret scan
|
|
52
|
+
runs-on: ubuntu-latest
|
|
53
|
+
steps:
|
|
54
|
+
- uses: actions/checkout@v4
|
|
55
|
+
- name: Grep for secret patterns
|
|
56
|
+
# A net, not a license — see CONTRIBUTING.md security standards.
|
|
57
|
+
run: |
|
|
58
|
+
set -e
|
|
59
|
+
PATTERNS='(sk-[A-Za-z0-9]{20,}|AKIA[0-9A-Z]{16}|ghp_[A-Za-z0-9]{36}|gho_[A-Za-z0-9]{36}|xox[baprs]-[A-Za-z0-9-]{10,}|-----BEGIN (RSA|EC|OPENSSH|DSA|PGP) PRIVATE KEY-----|AIza[0-9A-Za-z_-]{35})'
|
|
60
|
+
if grep -rInE "$PATTERNS" --exclude-dir=.git --exclude=ci.yml .; then
|
|
61
|
+
echo "::error::Secret-shaped string found. Remove it and rotate the credential."
|
|
62
|
+
exit 1
|
|
63
|
+
fi
|
|
64
|
+
echo "Secret scan clean."
|
|
65
|
+
|
|
66
|
+
link-check:
|
|
67
|
+
name: Relative links + missing files
|
|
68
|
+
runs-on: ubuntu-latest
|
|
69
|
+
steps:
|
|
70
|
+
- uses: actions/checkout@v4
|
|
71
|
+
- name: Check relative links in markdown
|
|
72
|
+
# Verifies every relative markdown link resolves to a real file.
|
|
73
|
+
# External-URL checking is deliberately out of scope (network
|
|
74
|
+
# flakiness is not broken docs); tracked in ROADMAP v0.2.
|
|
75
|
+
run: |
|
|
76
|
+
python3 - <<'EOF'
|
|
77
|
+
import os, re, sys, urllib.parse
|
|
78
|
+
bad = []
|
|
79
|
+
for root, dirs, files in os.walk('.'):
|
|
80
|
+
dirs[:] = [d for d in dirs if d not in ('.git', '.venv', 'node_modules')]
|
|
81
|
+
for f in files:
|
|
82
|
+
if not f.endswith('.md'):
|
|
83
|
+
continue
|
|
84
|
+
p = os.path.join(root, f)
|
|
85
|
+
text = open(p, encoding='utf-8', errors='replace').read()
|
|
86
|
+
for m in re.finditer(r'\]\(([^)#\s]+)(#[^)]*)?\)', text):
|
|
87
|
+
target = urllib.parse.unquote(m.group(1))
|
|
88
|
+
if re.match(r'^[a-z]+:', target): # http(s), mailto, etc. — stub skips
|
|
89
|
+
continue
|
|
90
|
+
resolved = os.path.normpath(os.path.join(os.path.dirname(p), target))
|
|
91
|
+
if not os.path.exists(resolved):
|
|
92
|
+
bad.append(f"{p}: {target}")
|
|
93
|
+
if bad:
|
|
94
|
+
print("Broken relative links:")
|
|
95
|
+
print("\n".join(bad))
|
|
96
|
+
sys.exit(1)
|
|
97
|
+
print("Relative links OK.")
|
|
98
|
+
EOF
|
|
99
|
+
|
|
100
|
+
build:
|
|
101
|
+
name: Package build
|
|
102
|
+
runs-on: ubuntu-latest
|
|
103
|
+
steps:
|
|
104
|
+
- uses: actions/checkout@v4
|
|
105
|
+
- uses: actions/setup-python@v5
|
|
106
|
+
with:
|
|
107
|
+
python-version: "3.12"
|
|
108
|
+
- name: Build sdist + wheel
|
|
109
|
+
run: |
|
|
110
|
+
python -m pip install --upgrade pip build twine
|
|
111
|
+
python -m build
|
|
112
|
+
twine check dist/*
|
|
113
|
+
- name: Wheel install smoke
|
|
114
|
+
run: |
|
|
115
|
+
python -m venv /tmp/smoke && /tmp/smoke/bin/pip -q install dist/*.whl
|
|
116
|
+
/tmp/smoke/bin/piensalo doctor
|
|
117
|
+
/tmp/smoke/bin/piensalo think examples/math/task.md > /dev/null && echo "think OK"
|
|
118
|
+
- uses: actions/upload-artifact@v4
|
|
119
|
+
with:
|
|
120
|
+
name: dist
|
|
121
|
+
path: dist/
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
|
|
7
|
+
permissions:
|
|
8
|
+
contents: read
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
publish:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
environment: pypi
|
|
14
|
+
permissions:
|
|
15
|
+
id-token: write # OIDC for PyPI Trusted Publishing — no tokens stored
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v4
|
|
18
|
+
- uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: "3.12"
|
|
21
|
+
- name: Build distributions
|
|
22
|
+
run: |
|
|
23
|
+
python -m pip install --upgrade build
|
|
24
|
+
python -m build
|
|
25
|
+
- name: Publish to PyPI (trusted publishing)
|
|
26
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Benchmarks
|
|
2
|
+
|
|
3
|
+
Two pre-registered controlled runs stand behind the current evidence map
|
|
4
|
+
([EVIDENCE.md](EVIDENCE.md)). Both are internal-lab runs; the public
|
|
5
|
+
reproduction harness lives in [evals/](evals/) and reproducing (or
|
|
6
|
+
refuting) these numbers on your own models is a first-class contribution
|
|
7
|
+
([evals/results/](evals/results/)).
|
|
8
|
+
|
|
9
|
+
## Design shared by both runs
|
|
10
|
+
|
|
11
|
+
| Property | Value |
|
|
12
|
+
|---|---|
|
|
13
|
+
| Cells | 8 sealed tasks × 3 reps × 5 conditions = 120 |
|
|
14
|
+
| Execution model | `claude-haiku-4-5` (requested + resolved recorded per cell) |
|
|
15
|
+
| Conditions | bare · monolithic skill · adaptive repair · oracle repair · output-contract guardian |
|
|
16
|
+
| Graders | deterministic, layered (cognition / delivery / rendering / routing / verification), frozen before any cell |
|
|
17
|
+
| Gates | pre-registered, frozen before any cell, never re-scoped |
|
|
18
|
+
| Stub policy | infra failures = NOT RUN, never FAIL |
|
|
19
|
+
| Budget | equal across conditions (bounded turns, bounded prompt prefix) |
|
|
20
|
+
|
|
21
|
+
n = 8 tasks per run. Everything below is directional, not powered. We
|
|
22
|
+
publish it anyway, with the confounds attached.
|
|
23
|
+
|
|
24
|
+
## Run 1 — weak-baseline task set
|
|
25
|
+
|
|
26
|
+
The bare model failed most procedural tasks (procedural mean 37.5/100).
|
|
27
|
+
|
|
28
|
+
| Finding | Number | Confound |
|
|
29
|
+
|---|---|---|
|
|
30
|
+
| Oracle targeted repair, procedural lift | **+18.8pp** | task-concentrated: +66.7 on the best task, **−20 on the worst** (a repair pass destroyed a delivered answer); one task grader-blind |
|
|
31
|
+
| Output-contract guardian, delivery-failure reduction | **30% relative** (0.417 → 0.292) | part of the apparent cognition movement was measurement visibility (absent output is ungradeable) |
|
|
32
|
+
| Guardian paired cognition harm | **zero** | — |
|
|
33
|
+
| Adaptive router fires | **0 / 24** | two deterministic implementation defects (threshold arithmetic; contract-schema mismatch) — found by forensics, fixed, and re-tested in run 2 |
|
|
34
|
+
| Grader artifacts discovered | 3 classes | fixed in the run-2 grading library; both directions (false credit AND false blame) |
|
|
35
|
+
|
|
36
|
+
## Run 2 — saturated task set (the harm measurement)
|
|
37
|
+
|
|
38
|
+
The fresh set turned out too easy: bare cognition rate **1.0** (verified
|
|
39
|
+
against answer keys). No lift was measurable — so harm became cleanly
|
|
40
|
+
measurable instead.
|
|
41
|
+
|
|
42
|
+
| Finding | Number | Note |
|
|
43
|
+
|---|---|---|
|
|
44
|
+
| Forced repair on correct drafts (oracle) | **−20pp procedural, 7/24 paired regressions ≥ 40pp** | every regression was DELIVERY damage (prose wrapped around contract-exact output) |
|
|
45
|
+
| Cognition flips from forced repair | **0 / 48 cells** | re-prompting is a delivery risk, not a reasoning risk |
|
|
46
|
+
| Adaptive router (after both fixes) | fires 8/24, precision **0.375** on correct drafts | third defect class: correctness-blind detection; abstention on easy classes was perfect (12/12) |
|
|
47
|
+
| Monolithic skill on knowledge-floor tasks | **60 vs 100**, 2 induced wrong answers | artifact-free graders this time; +1109 median tokens |
|
|
48
|
+
| Guardian on contract-clean drafts | 0 fires, **0 harm** (24/24 correct abstention) | its improvement gate was unexercised — no delivery failures to fix |
|
|
49
|
+
| Abstaining paths, total harm | **zero** | the core product thesis, measured |
|
|
50
|
+
|
|
51
|
+
## What these runs do NOT show
|
|
52
|
+
|
|
53
|
+
- No cross-model generality: one small-model family executed the cells.
|
|
54
|
+
- No statistical certainty: n = 8 tasks per run.
|
|
55
|
+
- No end-to-end product benchmark yet: these are mechanism isolation runs.
|
|
56
|
+
- Run 2's saturation means the repair-lift hypothesis still rests on run 1
|
|
57
|
+
alone. The next kill test is a difficulty-calibrated fresh set (pilot
|
|
58
|
+
gate: bare procedural cognition ≤ 0.7 before sealing).
|
|
59
|
+
|
|
60
|
+
## Reproduce
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
make benchmark # grader self-test battery + 2-task smoke, no API needed
|
|
64
|
+
uv run piensalo-eval # full harness (bring your own adapter/model)
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Task sets in `evals/public-tasks/` are labeled `DEMO` or `DEVELOPMENT`.
|
|
68
|
+
Internal unconsumed held-out reserves are never published; consumed sets
|
|
69
|
+
are ported here after their runs close.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to Piénsalo are documented here.
|
|
4
|
+
Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
5
|
+
Versioning: [SemVer](https://semver.org/) once we reach 0.1.0; until then,
|
|
6
|
+
everything may change.
|
|
7
|
+
|
|
8
|
+
## [0.1.0-alpha.2] — 2026-07-13
|
|
9
|
+
|
|
10
|
+
Truthfulness and UX correction release.
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- Real flagship workflow: `examples/flagship/` with a committed transcript of
|
|
14
|
+
actual CLI output; CI parity tests prevent README/demo drift
|
|
15
|
+
- `repair` adapter mode: writes a NEW repaired file + provenance sidecar and
|
|
16
|
+
automatically re-inspects the result; source drafts are never overwritten
|
|
17
|
+
- `think` accepts a task file or inline text (`--file`/`--text` overrides)
|
|
18
|
+
- `python -m piensalo`; `skill lint`/`scan` accept multiple and parent paths
|
|
19
|
+
- PyPI publication via GitHub trusted publishing (release-triggered)
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
- `repair` default mode clearly labeled as a repair PACKET (nothing applied)
|
|
23
|
+
- `verify` reports in five strict buckets; UNMEASURED never counts as a pass
|
|
24
|
+
- Roadmap reconciled to the truthful maturity hierarchy; stale
|
|
25
|
+
pre-publication language removed; public tree simplified (operator/process
|
|
26
|
+
scaffolding removed, provenance kept under docs/provenance/)
|
|
27
|
+
|
|
28
|
+
### Fixed
|
|
29
|
+
- Red CI Skill lint job (root cause: missing `__main__.py` + single-path lint)
|
|
30
|
+
- Tests: 49 → 86
|
|
31
|
+
|
|
32
|
+
## [Unreleased] — 0.1.0-dev
|
|
33
|
+
|
|
34
|
+
### Changed
|
|
35
|
+
- 0.1.0-dev — public identity migrated to PIÉNSALO (previously internal
|
|
36
|
+
codename Fable Think); no functional changes.
|
|
37
|
+
|
|
38
|
+
### Added
|
|
39
|
+
- Cognitive core: 11 operations (`recover_objective` → `deliver`) with a
|
|
40
|
+
bounded execute → inspect → repair → verify lifecycle.
|
|
41
|
+
- Six CLI modes: `think`, `inspect`, `repair`, `verify`, `loop`, `skill`.
|
|
42
|
+
- Portable Agent Skills layer (works in any agent that reads skills; no
|
|
43
|
+
runtime required).
|
|
44
|
+
- Optional runtime: persistent state, bounded loops, model provenance
|
|
45
|
+
recording, measurement hooks.
|
|
46
|
+
- Abstention as a first-class result: `NO REPAIR NEEDED`.
|
|
47
|
+
- Model adapters: manual copy/paste, Claude / Claude Code, OpenAI-compatible,
|
|
48
|
+
Ollama/local, generic command adapter.
|
|
49
|
+
- `piensalo skill scan` (third-party skill vetting) and
|
|
50
|
+
`piensalo doctor` (environment + configuration audit).
|
|
51
|
+
- Evidence discipline: per-capability evidence levels with promotion gates
|
|
52
|
+
(docs/evidence-levels.md), public negative results (NEGATIVE-RESULTS.md).
|
|
53
|
+
- Security defaults: zero telemetry, offline core, no silent model fallback,
|
|
54
|
+
no destructive actions without approval (SECURITY.md, THREAT-MODEL.md).
|
|
55
|
+
|
|
56
|
+
### Notes
|
|
57
|
+
- Pre-release. Evidence base is young; see README "Limitations" and
|
|
58
|
+
EVIDENCE.md before relying on any capability claim.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
message: "If you use Piénsalo in your research, please cite it as below."
|
|
3
|
+
title: "PIÉNSALO"
|
|
4
|
+
type: software
|
|
5
|
+
authors:
|
|
6
|
+
- family-names: "Peña"
|
|
7
|
+
given-names: "Rafael"
|
|
8
|
+
alias: "ralfyishere"
|
|
9
|
+
license: MIT
|
|
10
|
+
repository-code: "https://github.com/ralfyishere/piensalo"
|
|
11
|
+
url: "https://github.com/ralfyishere/piensalo"
|
|
12
|
+
version: 0.1.0-dev
|
|
13
|
+
date-released: "2026-07-12"
|
|
14
|
+
keywords:
|
|
15
|
+
- cognitive architecture
|
|
16
|
+
- AI agents
|
|
17
|
+
- verification
|
|
18
|
+
- self-repair
|
|
19
|
+
- agent skills
|
|
20
|
+
- abstention
|
|
21
|
+
abstract: >-
|
|
22
|
+
Piénsalo is an open cognitive operating system for AI models and agents.
|
|
23
|
+
It separates thinking, inspection, repair, verification, evidence, and
|
|
24
|
+
continuation into distinct operations, supports abstention as a first-class
|
|
25
|
+
result, and attaches an explicit evidence level to every capability claim.
|
|
26
|
+
Piénsalo is an independent open-source project. It is not affiliated with
|
|
27
|
+
or endorsed by Anthropic.
|