Upload files to "/"
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 25 KiB |
@@ -0,0 +1,5 @@
|
|||||||
|
This assignment guides students through a reproducible DevOps activity. It
|
||||||
|
defines the learning objectives, environment boundary, workflow, evidence,
|
||||||
|
reflection, and submission criteria. Replace bracketed text with assignment-
|
||||||
|
specific facts before release. Students should be able to recreate the work
|
||||||
|
from the submitted automation and runbook rather than from undocumented manual steps.
|
||||||
+367
@@ -0,0 +1,367 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `cornell.cls',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% cornell.dtx (with options: `class')
|
||||||
|
%%
|
||||||
|
%% IMPORTANT NOTICE:
|
||||||
|
%%
|
||||||
|
%% For the copyright see the source file.
|
||||||
|
%%
|
||||||
|
%% Any modified versions of this file must be renamed
|
||||||
|
%% with new filenames distinct from cornell.cls.
|
||||||
|
%%
|
||||||
|
%% For distribution of the original source see the terms
|
||||||
|
%% for copying and modification in the file cornell.dtx.
|
||||||
|
%%
|
||||||
|
%% This generated file may be distributed as long as the
|
||||||
|
%% original source files, as listed above, are part of the
|
||||||
|
%% same distribution. (The sources need not necessarily be
|
||||||
|
%% in the same archive or directory.)
|
||||||
|
%% Document class `cornell' to use with LaTeX 2e.
|
||||||
|
%% Based on `crnlphd' class. The following is from the file `crnlphd.dtx':
|
||||||
|
%% Based loosely on old cuphdthesis style file.
|
||||||
|
%% Found to give good results, according to the thesis secretary.
|
||||||
|
%% File: crnlphd.dtx Copyright (C) 1994 Sergio Gelato
|
||||||
|
%% Made available without any warranty, express or implied.
|
||||||
|
%% Modifications
|
||||||
|
%% 03/26/98 Mike Heisler
|
||||||
|
%% Conform to Eric's final version. Margins are subject to
|
||||||
|
%% The whim of the printer.
|
||||||
|
%% 10/10/97 Mike Heisler and Eric Dahl
|
||||||
|
%% Altered footnotesize and changed the Acknowledgement and
|
||||||
|
%% Biographical titles per thesis secretary guideline that
|
||||||
|
%% they must match the rest of the document, i.e. flush left
|
||||||
|
%% and capitalized rather than all caps
|
||||||
|
%% 05/21/97 Mike Heisler
|
||||||
|
%% Added a 'papers' option to handle bibliographis as sections
|
||||||
|
%% at the end of each chapter. Reduced top margin.
|
||||||
|
%%
|
||||||
|
%% $Id$
|
||||||
|
%% \CharacterTable
|
||||||
|
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
|
||||||
|
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
|
||||||
|
%% Digits \0\1\2\3\4\5\6\7\8\9
|
||||||
|
%% Exclamation \! Double quote \" Hash (number) \#
|
||||||
|
%% Dollar \$ Percent \% Ampersand \&
|
||||||
|
%% Acute accent \' Left paren \( Right paren \)
|
||||||
|
%% Asterisk \* Plus \+ Comma \,
|
||||||
|
%% Minus \- Point \. Solidus \/
|
||||||
|
%% Colon \: Semicolon \; Less than \<
|
||||||
|
%% Equals \= Greater than \> Question mark \?
|
||||||
|
%% Commercial at \@ Left bracket \[ Backslash \\
|
||||||
|
%% Right bracket \] Circumflex \^ Underscore \_
|
||||||
|
%% Grave accent \` Left brace \{ Vertical bar \|
|
||||||
|
%% Right brace \} Tilde \~}
|
||||||
|
%%
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||||
|
\ProvidesClass{cornell}
|
||||||
|
[1998/03/26 v2.0
|
||||||
|
Cornell University thesis class]
|
||||||
|
\newif\ifphd
|
||||||
|
\DeclareOption{phd}{\phdtrue}
|
||||||
|
\DeclareOption{master}{\phdfalse}
|
||||||
|
\ExecuteOptions{phd}
|
||||||
|
\newif\ifpapers
|
||||||
|
\DeclareOption{papers}{\paperstrue}
|
||||||
|
\DeclareOption{10pt}{%
|
||||||
|
\OptionNotUsed%
|
||||||
|
\ClassWarningNoLine{cornell}{Font size 10pt not allowed; using 12pt}%
|
||||||
|
}
|
||||||
|
\DeclareOption{11pt}{%
|
||||||
|
\OptionNotUsed%
|
||||||
|
\ClassWarningNoLine{cornell}{Font size 11pt not allowed; using 12pt}%
|
||||||
|
}
|
||||||
|
\newcommand{\prelim@contents}[1]{}
|
||||||
|
\DeclareOption{tocprelim}{%
|
||||||
|
\renewcommand{\prelim@contents}[1]{\addcontentsline{toc}{section}{#1}}
|
||||||
|
}
|
||||||
|
\DeclareOption*{%
|
||||||
|
\PassOptionsToClass{\CurrentOption}{report}%
|
||||||
|
}
|
||||||
|
\ProcessOptions
|
||||||
|
|
||||||
|
\LoadClass[12pt]{report}[1994/06/01]
|
||||||
|
\renewcommand{\defaultscriptratio}{.75}
|
||||||
|
\renewcommand{\defaultscriptscriptratio}{.6}
|
||||||
|
\setlength\headsep{25\p@}
|
||||||
|
\if@twocolumn
|
||||||
|
\else
|
||||||
|
\setlength\oddsidemargin{0in}
|
||||||
|
\setlength\evensidemargin{0in}
|
||||||
|
\setlength\textwidth{6.5in}
|
||||||
|
\setlength\topmargin{-0.5in}
|
||||||
|
\setlength\headheight{0.2in}
|
||||||
|
\setlength\headsep{0.35in}
|
||||||
|
\setlength\textheight{8.85in}
|
||||||
|
\setlength\footskip{0.5in}
|
||||||
|
\setlength\marginparwidth{0.85in}
|
||||||
|
\setlength\marginparsep{0.125in}
|
||||||
|
\fi
|
||||||
|
\if@compatibility
|
||||||
|
\setlength\topmargin{0\p@}
|
||||||
|
\else
|
||||||
|
\fi
|
||||||
|
\newcommand{\ps@cornell}{%
|
||||||
|
\def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
|
||||||
|
\def\@oddfoot{}%
|
||||||
|
\def\@evenhead{\thepage\hfil{\slshape\leftmark}}%
|
||||||
|
\def\@evenfoot{}%
|
||||||
|
\def\chaptermark##1{}%
|
||||||
|
\def\sectionmark##1{}%
|
||||||
|
}
|
||||||
|
\newcommand{\ps@cornellc}{%
|
||||||
|
\def\@oddhead{\hfil\thepage\hfil}%
|
||||||
|
\def\@oddfoot{}%
|
||||||
|
\def\@evenhead{\@oddhead}%
|
||||||
|
\def\@evenfoot{}%
|
||||||
|
\def\chaptermark##1{}%
|
||||||
|
\def\sectionmark##1{}%
|
||||||
|
}
|
||||||
|
\raggedbottom
|
||||||
|
\newcommand{\@prolformat}[1]{{\begin{flushleft} \Huge #1 \end{flushleft}} }
|
||||||
|
\newcommand{\ackname}{\@prolformat{Acknowledgements}}
|
||||||
|
\newcommand{\bioname}{\@prolformat{Biographical Sketch}}
|
||||||
|
\renewcommand{\contentsname}{\@prolformat{Table of Contents}}
|
||||||
|
\renewcommand{\listtablename}{\@prolformat{List of Tables}}
|
||||||
|
\renewcommand{\listfigurename}{\@prolformat{List of Figures}}
|
||||||
|
\renewcommand{\l@figure}{\@dottedtocline{1}{1.5em}{2.6em}}
|
||||||
|
\let\l@table\l@figure
|
||||||
|
|
||||||
|
\renewenvironment{thebibliography}[1]
|
||||||
|
{\ifpapers \clearpage \section*{\bibname%
|
||||||
|
\@mkboth{\uppercase{\bibname}}{\uppercase{\bibname}}}%
|
||||||
|
\else%
|
||||||
|
\chapter*{\bibname%
|
||||||
|
\@mkboth{\uppercase{\bibname}}{\uppercase{\bibname}}}%
|
||||||
|
\fi%
|
||||||
|
\list{\@biblabel{\arabic{enumiv}}}%
|
||||||
|
{\settowidth\labelwidth{\@biblabel{#1}}%
|
||||||
|
\leftmargin\labelwidth
|
||||||
|
\advance\leftmargin\labelsep
|
||||||
|
\@openbib@code
|
||||||
|
\usecounter{enumiv}%
|
||||||
|
\let\p@enumiv\@empty
|
||||||
|
\renewcommand\theenumiv{\arabic{enumiv}}}%
|
||||||
|
\sloppy\clubpenalty4000\widowpenalty4000%
|
||||||
|
\sfcode`\.\@m\relax
|
||||||
|
\ifpapers%
|
||||||
|
\addcontentsline{toc}{section}{\bibname}%
|
||||||
|
\else%
|
||||||
|
\addcontentsline{toc}{chapter}{\bibname}%
|
||||||
|
\fi
|
||||||
|
\singlespacing}
|
||||||
|
{\def\@noitemerr
|
||||||
|
{\@latex@warning{Empty `thebibliography' environment}}%
|
||||||
|
\normalspacing
|
||||||
|
\endlist}
|
||||||
|
|
||||||
|
\newcommand{\@titlesize}{\Large}
|
||||||
|
\newcommand{\@subtitlesize}{\large}
|
||||||
|
\newcommand{\@authorsize}{\normalsize} % No Pharaoh he.
|
||||||
|
\newcommand{\@conferralmonth}{January}
|
||||||
|
\newcommand{\@conferralyear}{}
|
||||||
|
|
||||||
|
\newcommand{\titlesize}[1]{\renewcommand{\@titlesize}{#1}}
|
||||||
|
\newcommand{\subtitlesize}[1]{\renewcommand{\@subtitlesize}{#1}}
|
||||||
|
\newcommand{\authorsize}[1]{\renewcommand{\@authorsize}{#1}}
|
||||||
|
\newcommand{\conferraldate}[2]{%
|
||||||
|
\renewcommand{\@conferralmonth}{#1}
|
||||||
|
\renewcommand{\@conferralyear}{#2}
|
||||||
|
}
|
||||||
|
\newcommand{\@degreefield}{Master of Science} %CHANGED
|
||||||
|
\newcommand{\degreefield}[1]{\renewcommand{\@degreefield}{#1}} %CHANGED
|
||||||
|
|
||||||
|
\renewcommand{\maketitle}{%
|
||||||
|
\begin{titlepage}%
|
||||||
|
\vspace*{-0.24in}
|
||||||
|
\begin{center}%
|
||||||
|
\@titlesize \@title
|
||||||
|
\end{center}
|
||||||
|
\vfill
|
||||||
|
%\begin{center}
|
||||||
|
%\@subtitlesize
|
||||||
|
%A \ifphd Dissertation \else Thesis \fi \\ %CHANGED
|
||||||
|
%Presented to the Faculty of the Graduate School \\
|
||||||
|
%of Cornell University \\
|
||||||
|
%in Partial Fulfillment of the Requirements for the Degree of \\
|
||||||
|
%\ifphd Doctor of Philosophy \else \@degreefield \fi %CHANGED
|
||||||
|
%\end{center}
|
||||||
|
\vfill
|
||||||
|
\begin{center}
|
||||||
|
\@authorsize
|
||||||
|
by \\
|
||||||
|
\@author \\
|
||||||
|
\@conferralmonth\ \@conferralyear
|
||||||
|
\end{center}
|
||||||
|
\vspace*{0.26in}
|
||||||
|
\end{titlepage}
|
||||||
|
}
|
||||||
|
|
||||||
|
\renewenvironment{titlepage}{%
|
||||||
|
\typeout{Title page}
|
||||||
|
\pagestyle{empty}
|
||||||
|
\doublespacing
|
||||||
|
}{%
|
||||||
|
\normalspacing\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
\newenvironment{copyrightpage}{%
|
||||||
|
\typeout{Copyleft page}
|
||||||
|
\pagestyle{empty}
|
||||||
|
\null\vfil
|
||||||
|
\begin{center}
|
||||||
|
}{%
|
||||||
|
\end{center}
|
||||||
|
\vfil\null
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\makecopyright}{%
|
||||||
|
\begin{copyrightpage}
|
||||||
|
\copyright\ \@copyrightholder\ \@copyrightyear \\
|
||||||
|
ALL RIGHTS RESERVED \\[.5in]
|
||||||
|
\end{copyrightpage}
|
||||||
|
}
|
||||||
|
\newcommand{\@copyrightholder}{\@author}
|
||||||
|
\newcommand{\@copyrightyear}{\@conferralyear}
|
||||||
|
|
||||||
|
\newcommand{\copyrightholder}[1]{\renewcommand{\@copyrightholder}{#1}}
|
||||||
|
\newcommand{\copyrightyear}[1]{\renewcommand{\@copyrightyear}{#1}}
|
||||||
|
|
||||||
|
|
||||||
|
\newlength{\@abhdskip}
|
||||||
|
\renewenvironment{abstract}{%
|
||||||
|
\typeout{Abstract}
|
||||||
|
\singlespacing
|
||||||
|
\ifphd %CHANGED
|
||||||
|
\setlength{\@abhdskip}{.25in}
|
||||||
|
\addtolength{\@abhdskip}{-\topmargin}
|
||||||
|
\vspace*{\@abhdskip}
|
||||||
|
\begin{center}
|
||||||
|
\@abstracttitle \\
|
||||||
|
\ \\
|
||||||
|
\@author \\
|
||||||
|
\@conferralyear
|
||||||
|
\end{center}
|
||||||
|
\vspace{.25in}
|
||||||
|
\else %CHANGED
|
||||||
|
\chapter*{%
|
||||||
|
\begin{center}
|
||||||
|
\normalsize
|
||||||
|
ABSTRACT
|
||||||
|
\end{center}
|
||||||
|
}
|
||||||
|
\par
|
||||||
|
\fi %CHANGED
|
||||||
|
\pagestyle{empty}
|
||||||
|
\thispagestyle{empty}
|
||||||
|
}{%
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\@abstracttitle}{\@title}
|
||||||
|
\newcommand{\abstracttitle}[1]{\renewcommand{\@abstracttitle}{#1}}
|
||||||
|
|
||||||
|
|
||||||
|
\newenvironment{biosketch}{%
|
||||||
|
\typeout{Vita}
|
||||||
|
\pagestyle{plain}
|
||||||
|
\pagenumbering{roman}
|
||||||
|
\setcounter{page}{3}
|
||||||
|
\prelim@contents{Biographical Sketch}
|
||||||
|
\chapter*{%
|
||||||
|
\bioname
|
||||||
|
}
|
||||||
|
\par
|
||||||
|
}{%
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newenvironment{dedication}{%
|
||||||
|
\prelim@contents{Dedication}
|
||||||
|
\null\vfil
|
||||||
|
\begin{center}
|
||||||
|
}{
|
||||||
|
\end{center}
|
||||||
|
\vfil\null
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newenvironment{acknowledgements}{%
|
||||||
|
\prelim@contents{Acknowledgments}
|
||||||
|
\chapter*{%
|
||||||
|
\ackname
|
||||||
|
}
|
||||||
|
\par
|
||||||
|
}{%
|
||||||
|
\cleardoublepage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\contentspage}{%
|
||||||
|
\singlespacing
|
||||||
|
\label{toc}
|
||||||
|
\prelim@contents{\contentsname}
|
||||||
|
\tableofcontents
|
||||||
|
\normalspacing
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\tablelistpage}{%
|
||||||
|
\singlespacing
|
||||||
|
\label{lot}
|
||||||
|
\prelim@contents{\listtablename}
|
||||||
|
\listoftables
|
||||||
|
\normalspacing
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\figurelistpage}{%
|
||||||
|
\singlespacing
|
||||||
|
\label{lof}
|
||||||
|
\prelim@contents{\listfigurename}
|
||||||
|
\listoffigures
|
||||||
|
\normalspacing
|
||||||
|
\clearpage
|
||||||
|
}
|
||||||
|
\newcommand{\abbrlist}{%
|
||||||
|
\singlespacing
|
||||||
|
\prelim@contents{List of Abbreviations}
|
||||||
|
\chapter*{List of Abbreviations}
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\symlist}{%
|
||||||
|
\singlespacing
|
||||||
|
\prelim@contents{List of Symbols}
|
||||||
|
\chapter*{List of Symbols}
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\preface}{%
|
||||||
|
\singlespacing
|
||||||
|
\prelim@contents{Preface}
|
||||||
|
\chapter*{Preface}
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\singlespacing}{%
|
||||||
|
\let\CS=\@currsize\renewcommand{\baselinestretch}{1.0}\tiny\CS}
|
||||||
|
\newcommand{\singlespacingplus}{%
|
||||||
|
\let\CS=\@currsize\renewcommand{\baselinestretch}{1.25}\tiny\CS}
|
||||||
|
\newcommand{\doublespacing}{%
|
||||||
|
\let\CS=\@currsize\renewcommand{\baselinestretch}{1.75}\tiny\CS}
|
||||||
|
\newcommand{\realdoublespacing}{%
|
||||||
|
\let\CS=\@currsize\renewcommand{\baselinestretch}{2}\tiny\CS}
|
||||||
|
\newcommand{\normalspacing}{\doublespacing}
|
||||||
|
\newcommand{\footnotespacing}{\singlespacing}
|
||||||
|
\newcommand{\changespacing}[2]{%
|
||||||
|
\renewcommand{#1}{%
|
||||||
|
\let\CS=\@currsize\renewcommand{\baselinestretch}{#2}\tiny\CS}%
|
||||||
|
}
|
||||||
|
\newcommand{\changenormalspacing}[1]{\renewcommand{\normalspacing}{#1}}
|
||||||
|
\normalspacing
|
||||||
|
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `cornell.cls'.
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
\chapter{AI Agent Usage Guide}
|
||||||
|
\ChapterLabel{AIAgentGuide}
|
||||||
|
\index{AI agent}
|
||||||
|
\index{AI agent!DevOps workflow}
|
||||||
|
\index{Appendix!AI Agent Usage Guide}
|
||||||
|
|
||||||
|
\section{How to Use This Appendix}
|
||||||
|
An AI agent that creates, reviews, or maintains an assignment shall read this
|
||||||
|
file first. It shall identify the task in the routing table, read the minimum
|
||||||
|
authoritative sources, and expand context only for a discovered dependency or
|
||||||
|
inconsistency. This guide is maintained in LaTeX so it is visible, versioned,
|
||||||
|
and reviewable with the assignment.
|
||||||
|
|
||||||
|
\section{Governing Principles}
|
||||||
|
The authored LaTeX files, versioned automation, and approved assignment
|
||||||
|
materials are authoritative. The PDF is a review artifact and shall not be
|
||||||
|
edited directly. AI may draft, explain, analyze, check consistency, and assist
|
||||||
|
with builds. It shall not invent completion, evidence, access, costs, grades,
|
||||||
|
approvals, command output, security posture, or operational results.
|
||||||
|
|
||||||
|
\section{Chapter File Convention}
|
||||||
|
\index{AI agent!chapter file convention}
|
||||||
|
Every assignment chapter shall be stored in exactly one file named with the
|
||||||
|
\texttt{devops} prefix, a PascalCase chapter name, and the \texttt{.tex}
|
||||||
|
suffix. For example, Chapter~2 is fully contained in
|
||||||
|
\path{devopsExampleAssignment.tex}. A chapter file shall begin with its
|
||||||
|
\texttt{\string\chapter\{...\}} command and contain all of that chapter's
|
||||||
|
sections and subsections. Do not split one chapter across files, create
|
||||||
|
section-only \texttt{.tex} files, or use \texttt{\string\input} or
|
||||||
|
\texttt{\string\include} to assemble a chapter from smaller fragments.
|
||||||
|
|
||||||
|
Supporting non-chapter files may use a different name only when they are not
|
||||||
|
chapter content: \texttt{prologue.tex}, \texttt{abstract.tex},
|
||||||
|
\texttt{devopsGlossary.tex}, and \texttt{devopsReferences.bib} are examples.
|
||||||
|
Appendix chapters follow the same chapter-file convention.
|
||||||
|
|
||||||
|
\section{AI Quick Start}
|
||||||
|
\begin{enumerate}
|
||||||
|
\item Read this guide and identify the requested outcome.
|
||||||
|
\item Select the closest task below and load only its listed sources.
|
||||||
|
\item Inspect supplied facts and report consequential gaps or assumptions.
|
||||||
|
\item Make narrowly scoped changes; preserve stable IDs, glossary terms, and history.
|
||||||
|
\item Never request, print, store, or commit credentials, tokens, personal data, or production data.
|
||||||
|
\item Build the complete PDF, inspect the log, visually inspect affected pages, and record material AI use in \ChapterRef{AIPromptLog}.
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
\section{Task Routing}
|
||||||
|
\small
|
||||||
|
\begin{tabularx}{\linewidth}{L{4.0cm}Y}
|
||||||
|
\caption{AI Task-Routing Table\label{Table:AITaskRouting}}\\
|
||||||
|
\toprule \textbf{Task} & \textbf{Minimum authoritative sources}\\ \midrule
|
||||||
|
Initialize an assignment & \texttt{devopsAssignment.tex}, \texttt{prologue.tex}, \texttt{devopsIntroduction.tex}, \texttt{devopsExampleAssignment.tex}, and the instructor's assignment facts.\\
|
||||||
|
Develop a workflow & \texttt{devopsExampleAssignment.tex}, source repository materials, and authorized environment constraints.\\
|
||||||
|
Define evidence & \texttt{devopsExampleAssignment.tex} and controlled execution outputs.\\
|
||||||
|
Review a retrospective & \texttt{devopsExampleAssignment.tex} and the submitted workflow or runbook.\\
|
||||||
|
Edit AI guidance & \texttt{devopsAIAgentGuide.tex}, \texttt{devopsAIPromptLog.tex}, \texttt{devopsDocumentGuide.tex}, and \texttt{devopsAssignment.tex}.\\
|
||||||
|
Compile or troubleshoot & \texttt{devopsAssignment.tex}, \texttt{devopsDocumentGuide.tex}, the affected chapter, and the build log.\\ \bottomrule
|
||||||
|
\end{tabularx}
|
||||||
|
\normalsize
|
||||||
|
|
||||||
|
\section{DevOps-Specific Rules}
|
||||||
|
\begin{enumerate}
|
||||||
|
\item Prefer versioned, repeatable automation over undocumented manual steps.
|
||||||
|
\item Treat deployment output, monitoring data, and screenshots as evidence only when they reflect an actual execution.
|
||||||
|
\item Design failure exercises to be isolated, reversible, and authorized.
|
||||||
|
\item Apply least privilege and never place secrets in LaTeX, source control, prompts, screenshots, or logs.
|
||||||
|
\item State expected cloud cost, cleanup action, and resource ownership for each remote-environment activity.
|
||||||
|
\item Identify whether a recommendation is a proposal, an instructor directive, or demonstrated evidence.
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
\section{Example AI Requests}
|
||||||
|
\subsection{Create an Assignment Brief}
|
||||||
|
\begin{verbatim}
|
||||||
|
Read devopsAIAgentGuide.tex and use the Initialize an Assignment context.
|
||||||
|
From the supplied SSW 590 objective and constraints, fill only supported
|
||||||
|
placeholders in the introduction and activity brief. Propose clear, observable
|
||||||
|
completion criteria, a safe cleanup action, and a rubric. Do not invent cloud
|
||||||
|
access, due dates, policy, costs, or approved tools. Update history, compile,
|
||||||
|
and report instructor decisions still needed.
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
\subsection{Review a Student Workflow}
|
||||||
|
\begin{verbatim}
|
||||||
|
Read devopsAIAgentGuide.tex and the workflow, evidence, and retrospective
|
||||||
|
chapters. Review the supplied repository and sanitized evidence for
|
||||||
|
reproducibility, least privilege, observability, rollback, and cleanup.
|
||||||
|
Separate verified facts from gaps and recommendations. Do not claim that an
|
||||||
|
unexecuted command passed, and do not request credentials or operate resources.
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
\section{Human Decisions and Information Boundaries}
|
||||||
|
The instructor retains authority over assignment scope, grading, due dates,
|
||||||
|
approved tooling, access, budgets, security posture, exceptions, and policy.
|
||||||
|
An AI agent shall surface alternatives and evidence, not represent a decision
|
||||||
|
as approved. Record material prompts, assumptions, corrections, and unresolved
|
||||||
|
issues in \ChapterRef{AIPromptLog}.
|
||||||
|
|
||||||
|
\section{Completion Checklist}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Scope, deliverables, environment, constraints, and cleanup are clear.
|
||||||
|
\item Activity identifiers and evidence references are valid and unique.
|
||||||
|
\item Examples contain no secrets, personal data, or unsafe production actions.
|
||||||
|
\item New controlled terms are added to the glossary and indexed.
|
||||||
|
\item The newest approved change is recorded in document history.
|
||||||
|
\item The complete build succeeds with no unresolved references or missing files.
|
||||||
|
\item A human reviews all decisions requiring instructional or operational authority.
|
||||||
|
\end{itemize}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
\chapter{AI Prompt Log}
|
||||||
|
\ChapterLabel{AIPromptLog}
|
||||||
|
\index{AI prompt log}
|
||||||
|
\section{How to Use This Appendix}
|
||||||
|
Use this log when AI assistance materially affects assignment wording,
|
||||||
|
automation, evidence interpretation, troubleshooting, or feedback. Record
|
||||||
|
enough context for an instructor or reviewer to understand the input, output,
|
||||||
|
assumptions, and human corrections. Do not record credentials or personal data.
|
||||||
|
|
||||||
|
\section{Example Record}
|
||||||
|
Date: \textit{[timestamp]}; Tool and model: \textit{[name]}; Task:
|
||||||
|
\textit{[requested outcome]}; Inputs: \textit{[sanitized constraints and
|
||||||
|
evidence]}; Output used: \textit{[summary]}; Human review and corrections:
|
||||||
|
\textit{[summary]}; Unresolved assumptions: \textit{[list or none]}.
|
||||||
Reference in New Issue
Block a user